About the Role
We are looking for a skilled and motivated Backend Developer / Senior Software Engineer (SDE 2) to join our engineering team. The ideal candidate should have strong hands-on experience in Java development, designing and building scalable backend applications, and working with microservices architecture. The candidate will be responsible for developing high-quality, reliable, and efficient backend systems while collaborating with cross-functional teams to deliver robust software solutions.
Key Responsibilities
- Design, develop, test, and maintain scalable backend applications using Java.
- Build and maintain RESTful APIs and microservices-based applications.
- Write clean, reusable, maintainable, and efficient code following industry best practices.
- Apply strong knowledge of Data Structures and Algorithms to solve complex technical problems.
- Participate in architectural discussions and contribute to technical design decisions.
- Identify performance bottlenecks and optimize application performance, scalability, and reliability.
- Troubleshoot, debug, and resolve production issues effectively.
- Collaborate with product managers, frontend developers, QA engineers, and other stakeholders.
- Participate in code reviews and maintain high standards of code quality.
- Follow best practices for software development, testing, documentation, and deployment.
Required Skills & Qualifications
- 5–9 years of professional software development experience.
- Strong programming skills in Java and a good understanding of object-oriented programming (OOP).
- Hands-on experience developing backend applications and REST APIs.
- Good understanding of microservices architecture and distributed systems fundamentals.
- Strong knowledge of Data Structures and Algorithms, including problem-solving and complexity analysis.
- Understanding of database concepts, SQL, and data modeling.
- Familiarity with exception handling, multithreading, collections, and Java performance optimization.
- Experience with Git and standard software development practices.
- Strong analytical, debugging, and problem-solving skills.
- Ability to work collaboratively in a fast-paced engineering environment.
Good to Have
- Experience with Spring Boot and the Spring Framework.
- Familiarity with relational or NoSQL databases.
- Exposure to messaging systems such as Kafka or RabbitMQ.
- Knowledge of Docker, Kubernetes, CI/CD pipelines, and cloud platforms.
- Understanding of caching, system design, and application scalability.
- Experience with unit testing frameworks such as JUnit and Mockito.