Senior Java Developer
caterpillar
Job Description
- Experience - 8 to 14 years on Java API Development , REST API and good exposure to Azure concepts
- The Senior Software Engineer will be responsible for designing, building, and delivering scalable backend systems and enterprise-grade APIs. This role requires strong expertise in Java development, cloud-native design using Microsoft Azure, and modern DevOps practices. The engineer is expected to take end-to-end ownership of features, contribute to system architecture, and ensure high standards of quality, performance, and reliability.
Key Responsibilities
- Backend and API Development
- Design and develop robust, scalable, and secure RESTful APIs using Java and modern frameworks such as Spring Boot. Build microservices-based systems that support high throughput and availability. Ensure proper API versioning, documentation, and adherence to standards.
- Cloud and Azure Development
- Develop and deploy applications on Microsoft Azure. Work with core services such as Azure App Services, Azure Functions, Service Bus, and cloud-based databases. Implement cloud-native solutions that are resilient, scalable, and cost-efficient.
- DevOps and CI CD
- Design and maintain continuous integration and continuous delivery pipelines. Automate build, test, and deployment processes using tools such as Azure DevOps. Ensure reliable and repeatable deployments across environments.
- System Design and Architecture
- Contribute to high-level and low-level design of applications. Apply microservices architecture and design patterns to solve complex engineering problems. Ensure systems are scalable, maintainable, and resilient.
- Quality and Engineering Excellence
- Write clean, maintainable, and well-tested code. Conduct peer code reviews and enforce coding standards. Improve code quality through static analysis tools and ensure adequate test coverage. Implement monitoring and logging for production systems.
- Collaboration and Agile Delivery
- Work closely with product owners, architects, and QA teams in an Agile environment. Participate in sprint planning, design discussions, and retrospectives. Collaborate effectively across distributed teams.
- Ownership and Mentoring
- Take ownership of features from design to production. Mentor junior engineers and contribute to knowledge sharing across the team. Support production systems and resolve issues in a timely manner.
- Required Skills and Experience
- Strong experience in Java and backend development using frameworks such as Spring Boot
- Experience in building RESTful APIs and microservices
- Hands-on expertise with Microsoft Azure cloud platform
- Experience with CI CD pipelines and DevOps practices
- Strong understanding of databases including SQL and NoSQL
- Good understanding of software design principles and architecture patterns
- Experience working in Agile development environments
Good to Have Skills
- Experience with containerization and orchestration technologies
- Knowledge of API management platforms
- Exposure to event-driven architecture
- Experience with monitoring and observability tools
- Understanding of performance optimization techniques
- Behavioral Expectations
- Strong ownership and accountability
- Ability to work independently and drive solutions
- Effective communication and collaboration skills
- Capability to handle complex technical challenges and ambiguity