Senior Java Engineer (Spring Boot, Microservices, Cloud)

Min Experience

7 years

Location

Hyderabad

JobType

full-time

About the role

Java Developer

Responsibilities:  

- Module Ownership & Team Management: Own modules and manage a team of engineers.

- Architectural Excellence: Architect, design, build, test, and deploy high-performance code.

- Issue Resolution: Troubleshoot, debug, and fix existing issues.

- Code Review: Review team members' code and suggest optimizations.

- Deployment: Verify and deploy changes to live environments.

- Flexible Design: Externalize control parameters for flexible design to meet requirements as tech use-cases.

- Production Analysis: Analyze production issues and provide long-term solutions.

- NFR Identification: Identify non-functional requirements to be met.

- Tech Debt Management: Add technical debt to the team’s backlog for periodic resolution.

- Timely Delivery: Deliver business functionalities within expected timelines, working with multiple stakeholders and constraints.

- Branch Management: Create necessary branches and checkpoints for quality code delivery.

- API Performance: Continuously check and improve the performance of various APIs.

- Tool Implementation: Introduce tools to avoid repetitive work and reduce human errors.

- Tech PoCs: Take technology Proof of Concepts (PoCs) to production.

- Java Ecosystem Updates: Stay updated with changes in the Java ecosystem, ensuring upgrades to the latest releases and patches.

- Security: Ensure application security by following secure coding practices.

- Mentorship: Coach and mentor team members.

- Collaboration: Work with architects, developers, QA, infrastructure, DBAs, product managers, scrum masters, and program managers in an Agile environment.

- Product Management: Collaborate with product managers to suggest alternatives or phased delivery of functionalities.

- Dependency Management: Help teams overcome dependencies with other stakeholders to meet committed timelines and quality.

- Stakeholder Liaison: Liaise with other teams and third parties to communicate requirements for successful feature implementation.

 

Qualifications:

- Education: Bachelor’s or Master’s degree in Engineering or Computer Applications.

- Experience: 9-13 years of relevant programming experience in Java in an internet product.

- Technical Skills:

- Strong computer science fundamentals and object-oriented programming skills.

- Proficiency in collections/data structures and multi-threading.

- Hands-on experience with Spring Boot, Microservices, Spring Security.

- Experience with message queues and sockets is a plus.

- Proficiency in unit testing frameworks like Junit, Jest, etc.

- Experience in CI/CD development.

- Familiarity with code quality control platforms like Sonar, secure coding practices, OWASP vulnerabilities, token management, and OAuth.

- Experience with Git, Maven, and Docker.

- Experience with SQL/No-SQL databases and caching technologies.

- Working experience in cloud environments (AWS or equivalent).

- Proficient in Kubernetes .

- Diverse experience with Python and Node.js.

- Analytical nature for solving data-related problems within the organisation.

- Nice to have experience in low latency and decision-making systems.

Management Skills:

1. Experience handling a module independently and improving non-functional requirements (NFRs).

2. Experience managing a team of high-energy engineers and fostering their growth.

3. Strong mentoring, communication, and interpersonal skills.


 

Skills

Java
Java Spring boot
Java Microservices
Kubernetes
Docker