About the Role
We are looking for a Senior Java Developer with deep expertise in Java, Spring Boot, and database technologies to join our engineering team. You will play a key role in designing, developing, and maintaining scalable, high-performance applications, while mentoring junior developers and driving technical best practices across the team.
Key Responsibilities
- Design, develop, and maintain robust, scalable, and high-performance backend applications using Java and Spring Boot
- Architect microservices-based solutions and contribute to system design discussions
- Write clean, efficient, and well-documented code following industry best practices
- Design and optimize database schemas, queries, and stored procedures for performance and scalability
- Collaborate with cross-functional teams including product managers, QA, DevOps, and frontend developers
- Conduct code reviews and provide constructive feedback to team members
- Troubleshoot, debug, and resolve complex production issues
- Mentor junior and mid-level developers, fostering technical growth within the team
- Participate in architectural decisions and contribute to technical roadmaps
- Ensure application security, scalability, and reliability standards are met
- Stay current with emerging technologies and recommend improvements to existing systems
- Contribute to CI/CD pipeline improvements and DevOps practices
Required Skills & Qualifications
- 10+ years of professional experience in Java development
- Strong hands-on experience with Spring Boot, Spring Framework (Spring MVC, Spring Data, Spring Security)
- Proven experience designing and building microservices architecture
- Strong expertise in relational databases (e.g., MySQL, PostgreSQL, Oracle) — schema design, query optimization, indexing
- Experience with NoSQL databases (e.g., MongoDB, Redis, Cassandra) is a plus
- Solid understanding of RESTful API design and development
- Experience with ORM frameworks (Hibernate/JPA)
- Proficiency in build tools (Maven/Gradle) and version control (Git)
- Experience with unit testing frameworks (JUnit, Mockito) and TDD practices
- Familiarity with containerization and orchestration (Docker, Kubernetes)
- Experience with message queuing systems (Kafka, RabbitMQ, or similar) is a plus
- Understanding of cloud platforms (AWS, Azure, or GCP)
- Strong knowledge of design patterns, SOLID principles, and clean code practices
- Experience with CI/CD tools (Jenkins, GitLab CI, or similar)
- Excellent problem-solving, analytical, and communication skills
- Bachelor's or Master's degree in Computer Science, Engineering, or related field (or equivalent practical experience)
Preferred Qualifications
- Experience with event-driven architecture
- Exposure to Agile/Scrum methodologies
- Prior experience in a technical leadership or mentorship role
- Knowledge of performance tuning and application monitoring tools (e.g., New Relic, Datadog, Splunk)
- Experience working in a fast-paced, cross-functional product environment