Role: Senior Software Developer - Java
Experience Required: 4-6 Years
Location: Mumbai/Bengaluru
Must-Have Skills
Core Technical Expertise:
- Java: 4+ years of production experience with Java 8+ (Streams, Lambda, Concurrency, Collections)
- Frameworks: Strong hands-on experience with Spring Boot, Spring Framework, Spring Security
- REST API Development: Proven experience designing and implementing RESTful web services, API versioning
- Design Patterns: Solid understanding and implementation of creational, structural, and behavioral patterns (Factory, Singleton, Observer, Strategy, Command)
- Testing: Proficient in unit testing (JUnit 5/TestNG), integration testing, mocking frameworks (Mockito), TDD practices
Microservices & Deployment:
- Containerization: Hands-on Docker experience for packaging and deploying applications
- Microservices Architecture: Experience with service decomposition, inter-service communication, distributed systems
- Abstraction & Portability: Strong understanding of environment-agnostic design, configuration externalization
- Build Tools: Maven or Gradle for dependency management and build automation
Good-to-Have Skills
Advanced Technical:
- Orchestration: Kubernetes, Docker
- Cloud Platforms: Alibaba/ Azure / GCP services and deployment
- Message Brokers: Apache Kafka/ RabbitMQ for asynchronous communication
- Databases: SQL (PostgreSQL, MySQL) /NoSQL (MongoDB, Cassandra)
- API Gateway: Kong API Gateway/Spring Cloud Gateway/ Zuul for microservices routing
Development & Operations:
- CI/CD pipelines (Jenkins, GitLab CI/CD)
- Spring Cloud ecosystem (Config Server, Eureka, Circuit Breaker)
- Monitoring & Observability (Micrometer, Prometheus, ELK stack)
- Performance optimization and profiling
- Security best practices for enterprise applications
Client-Facing Experience:
- Experience working in service-based organizations
- Adaptability to different domain requirements
- Understanding of various industry standards and compliance requirements
Key Responsibilities
- Develop and maintain microservices for diverse client projects across multiple domains
- Implement robust REST APIs tailored to client business requirements
- Write comprehensive unit and integration tests ensuring high code quality
- Design portable, scalable solutions that can be deployed across different client environments
- Collaborate with cross-functional teams and client stakeholders to deliver project requirements
- Adapt to varying client technology stacks and domain-specific needs
- Participate in code reviews and maintain coding standards
- Support deployment and troubleshooting in client environments
Qualifications
- Bachelor's degree in Computer Science, Engineering, or related technical field
- 4-6 years of professional Java development experience
- Strong analytical and problem-solving skills
- Excellent written and verbal communication skills
- Ability to work independently and manage multiple client priorities
- Adaptability to work across different domains and client requirements
- Client-facing experience or willingness to interact with client teams