Staff Engineer, Java
Full-time
Not Applicable
Job Overview
REQUIREMENTS:
- Total experience 7+years.
- Extensive experience in back-end development utilizing Java 11, Spring Framework (Core/Boot/MVC), Hibernate/JPA.
- Good understanding of Data Structures, Object-Oriented Programming, and Design Patterns.
- Proficient in unit testing using JUnit or other frameworks.
- Expertise in REST APIs and Microservices Architecture.
- Hands-on experience with Docker.
- Working knowledge of Apache Kafka.
- Proficiency in working with Relational and NoSQL databases (Preferably PostgreSQL and MongoDB).
- Understanding of Behavior Driven Development (BDD) using tools like Cucumber.
- Working knowledge of containerization tools like Docker and orchestration tools like Kubernetes
- Exposure to cloud platforms, preferably Google Cloud Platform (GCP).
- Strong understanding of UML and design patterns.
- Strong problem-solving skills and a passion for continuous improvement.
- Excellent communication skills and the ability to collaborate effectively with cross-functional teams.
RESPONSIBILITIES:
- Writing and reviewing great quality code
- Understanding functional requirements thoroughly and analyzing the clients 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.