Understanding functional requirements thoroughly and analyzing the client’s needs in the context of the project
Envisioning the overall solution for defined functional and non-functional requirements, and being able to define technologies, patterns, and frameworks to realize it
Determining and implementing design methodologies and toolsets
Enabling application development by coordinating requirements, schedules, and activities.
Being able to lead/support UAT and production rollouts
Creating, understanding, and validating WBS and estimated effort for a given module/task, and being able to justify it
Addressing issues promptly, responding positively to setbacks and challenges with a mindset of continuous improvement
Giving constructive feedback to the team members and setting clear expectations.
Helping the team in troubleshooting and resolving complex bugs
Coming up with solutions to any issue that is raised during code/design review and being able to justify the decision taken
Carrying out POCs to make sure that suggested design/technologies meet the requirements
Requirements
Qualifications
Relevant experience in Java 8 or higher, Spring Framework-Core/Boot/MVC, Hibernate/JPA, JMS/ AMQP/ Kafka, and Microservices Architecture.
Experience in CI/CD DevOps - Jenkins/Docker/Ansible, Cloud – AWS Unit Testing, Performance Tuning,
Hands-on experience with RDBMS like SQL Server, Oracle, MySQL, and PostgreSQL.
A good understanding of UML and design patterns
Knowledge of high-quality professional software engineering practices for the agile software development cycle, including coding standards, code reviews, source control management, build processes, testing, and deployment.
Fundamental knowledge of design patterns
Experience in communicating effectively with users, other technical teams, and management to collect requirements, describe software product features, and technical designs
Passionate about building great solutions
Mentoring the team members to meet the client's needs and holding them accountable for high standards of delivery
Being able to understand and relate technology integration scenarios and be able to apply these learnings in complex troubleshooting scenarios