Senior Staff Engineer, Java

Nagarro
Summary
Join Nagarro, a Digital Product Engineering company, as a Back-End Developer. You will have 10+ years of experience in back-end development using Java, Spring Framework, Hibernate/JPA, and Microservices Architecture. Responsibilities include writing and reviewing high-quality code, understanding functional requirements, envisioning solutions, and implementing design methodologies. You will also lead/support UAT and production rollouts, create WBS and effort estimations, address issues promptly, give constructive feedback, and help troubleshoot complex bugs. A Bachelor's or Master's degree in Computer Science or a related field is required. The ideal candidate will possess strong problem-solving skills, excellent communication skills, and a passion for continuous improvement.
Requirements
- Total experience 10+ years
- Extensive experience in back-end development utilizing Java 8 or higher, Spring Framework (Core/Boot/MVC), Hibernate/JPA, and Microservices Architecture
- Strong working experience
- Strong experience in AWS code
- Hands-on experience with REST APIs, Caching system (e.g Redis) and messaging systems like Kafka etc
- Proficiency in Service-Oriented Architecture (SOA) and Web Services (Apache CXF, JAX-WS, JAX-RS, SOAP, REST)
- Hands-on experience with multithreading, and cloud development
- Strong working experience in Data Structures and Algorithms, Unit Testing, and Object-Oriented Programming (OOP) principles
- Hands-on experience with relational databases such as SQL Server, Oracle, MySQL, and PostgreSQL
- Experience with DevOps tools and technologies such as Ansible, Docker, Kubernetes, Puppet, Jenkins, and Chef
- Proficiency in build automation tools like Maven, Ant, and Gradle
- Hands on experience on cloud technologies such as AWS/ Azure
- Strong understanding of UML and design patterns
- Ability to simplify solutions, optimize processes, and efficiently resolve escalated issues
- Strong problem-solving skills and a passion for continuous improvement
- Excellent communication skills and the ability to collaborate effectively with cross-functional teams
- Enthusiasm for learning new technologies and staying updated on industry trends
- Bachelor’s or master’s degree in computer science, Information Technology, or a related field
Responsibilities
- Writing and reviewing great quality code
- 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 tool sets
- Enabling application development by coordinating requirements, schedules, and activities
- Being able to lead/support UAT and production roll outs
- Creating, understanding and validating WBS and estimated effort for 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 of 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