We are seeking a highly skilled and experienced Java Developer to join our engineering team.
The ideal candidate will be responsible for designing, developing, and maintaining high-performance, scalable, and reliable applications.
This role requires a strong understanding of core Java principles, modern frameworks like Spring Boot, microservices architecture, and cloud technologies.
You will play a key role in building the next generation of our platform.
Key Responsibilities:
- Design, develop, and implement robust and scalable backend services using Java, Spring, and Spring Boot.
- Build and maintain microservices-based applications, ensuring high availability, performance, and fault tolerance.
- Utilize Object-Oriented Programming (OOPs) principles and design patterns to write clean, reusable, and maintainable code.
- Develop multi-threaded applications to handle concurrent processes and optimize performance.
- Integrate with messaging systems like Apache Kafka for real-time data processing and asynchronous communication.
- Work with cloud services, primarily AWS, for deploying and managing applications (e.G., EC2, S3, RDS).
- Design and interact with relational databases, writing complex SQL queries and optimizing database performance.
- Collaborate with cross-functional teams, including product managers, designers, and other engineers, to define, design, and ship new features.
- Write and execute unit, integration, and end-to-end tests to ensure code quality and reliability.
- Participate in code reviews, providing constructive feedback to peers to maintain high coding standards.
Required Skills and Qualifications:
- Bachelor’s degree in Computer Science, Engineering, or a related field, or equivalent practical experience.
- 5-8+ years of experience in software development with a strong focus on Java.
- Expertise in Core Java, including a deep understanding of Object-Oriented Programming (OOPs) principles and concurrent programming (Multi-threading).
- Extensive hands-on experience with Spring and Spring Boot frameworks.
- Solid experience in designing and developing microservices-based architectures.
- Proven experience working with messaging systems, particularly Apache Kafka.
- Hands-on experience with AWS services for building and deploying applications.
- Proficiency in database technologies, including writing efficient SQL queries.
- Strong understanding of version control systems (e.G., Git).
- Experience with build tools like Maven or Gradle.
- Excellent problem-solving skills and the ability to work independently or as part of a team.
- Strong communication and collaboration skills.
Preferred Skills (Nice to Have):
- Experience with containers and orchestration tools like Docker and Kubernetes.
- Familiarity with CI/CD pipelines (e.G., Jenkins, GitLab CI).
- Knowledge of other databases (e.G., NoSQL databases like MongoDB).
- Experience with RESTful API design.