Key Responsibilities:
- Design & Development: Design, develop, test, and maintain high-performance and scalable Java applications.
- Collaboration: Work closely with product managers, architects, and team members to understand requirements and deliver innovative solutions.
- Code Quality: Follow coding standards and best practices; contribute to code reviews to ensure clean, efficient, and maintainable code.
- Continuous Learning: Stay updated on industry trends, emerging technologies, and best practices to drive innovation within the team.
- Agile Development: Participate in Agile/Scrum processes, including sprint planning, and contribute to the successful delivery of sprint goals.
- Documentation: Create and maintain technical documentation, including design specifications, implementation details, and user guides.
- Mentorship: Guide and mentor junior developers within the team.
- System Design: Apply a strong understanding of data structures, algorithms, and system design principles.
- API Development: Design and implement efficient and performant REST APIs.
- Frameworks: Demonstrate strong proficiency in Java and Spring Framework (Spring Boot, Spring MVC).
Key Requirements / Skills:
- Experience with relational databases (MySQL, PostgreSQL) and proficiency in SQL.
- Experience with NoSQL databases (MongoDB, Cassandra).
- Familiarity with cloud platforms (AWS, Azure, Google Cloud).
- Exposure to Docker and DevOps best practices.
- Experience with Linux/Unix-based systems and basic shell scripting.
- Strong analytical, problem-solving, and communication skills.
- 5-8 years of relevant experience in software development.
- Engineering or science background preferred; Bachelor's degree or higher preferred.