Job responsibilities
- Design, develop, and maintain scalable, robust, and secure Java Spring applications.
- Provide technical guidance and mentorship to a team of developers, ensuring best practices and high-quality code.
- Collaborate with cross-functional teams to define, design, and ship new features.
- Architect and implement scalable and maintainable microservices and cloud-native applications.
- Ensure the performance, quality, and responsiveness of applications.
- Conduct code reviews, identify bottlenecks, and devise solutions to mitigate issues.
- Stay updated with the latest industry trends and technologies to ensure our applications leverage the best practices.
- Drive the adoption of DevOps practices, continuous integration, and continuous delivery (CI/CD) pipelines.
- Develop and maintain technical documentation.
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience.
- Hands-on experience in Java development, with a focus on Spring Boot.
- Advanced in one or more programming language(s)
- Strong experience with AWS services (e.g., EC2, S3, RDS, Lambda, API Gateway, CloudFormation).
- Solid understanding of microservices architecture and RESTful API design.
- Proficient in database design and management (SQL and NoSQL databases).
- Experience with containerization technologies like Docker and orchestration tools like Kubernetes.
- Familiarity with front-end technologies (e.g., Angular, React, Vue.js) is a plus.
- Strong problem-solving skills and the ability to work under pressure.
- Excellent communication and leadership skills.
Preferred qualifications, capabilities, and skills
- Experience with serverless architecture and AWS Lambda.
- Knowledge of other cloud platforms like Azure or Google Cloud Platform.
- Understanding of CI/CD pipelines and tools such as Jenkins, GitLab CI, or AWS CodePipeline.
- Experience with automated testing frameworks and tools.
- Familiarity with Agile/Scrum methodologies.