Junior and Mid-Level Java Developer (2-4 Yrs Experience)
About the Role:
We are looking for a skilled and motivated Mid-Level Java Developer with 2 to 4 years of experience to become a core member of our software team. In this role, you will be responsible for translating business requirements into high-quality, scalable Java applications, taking ownership of key features from development through deployment, and helping to uphold our technical standards.
Key Responsibilities:
Development & Execution
- Independently design, develop, test, and deploy features and modules using Java 8/11+ and the Spring Boot framework.
- Write clean, efficient, and well-documented code following SOLID principles and established design patterns.
- Take ownership of complex technical tasks and deliver them on schedule with minimal supervision.
Collaboration & Quality Assurance
- Actively participate in code reviews, providing constructive feedback to peers and ensuring high code quality across the team.
- Design and execute comprehensive unit and integration tests (using JUnit, Mockito) to ensure the stability and reliability of applications.
- Collaborate closely with senior developers and architects to refine technical designs and implement solutions.
System Support & Improvement
- Troubleshoot and debug issues in both development and production environments, identifying root causes and implementing effective fixes.
- Contribute to the continuous improvement of the CI/CD pipeline, development tools, and engineering processes.
- Assist in documenting technical specifications and implementation details.
Technical Requirements:
Core Skills (Required)
- Experience:2-4 years of professional development experience with Java (preferably Java 8 or higher).
- Java Frameworks: Solid, hands-on experience with the Spring Framework, specifically Spring Boot, Spring Data JPA/Hibernate, and Spring Security.
- APIs & Services: Proven experience developing and consuming robust RESTful web services. Familiarity with Microservices architecture concepts.
- Database: Proficient in SQL and database concepts, with experience working with relational databases (e.g., PostgreSQL, MySQL).
- Tools: Proficient with Git for version control and using build tools like Maven or Gradle.
Bonus Skills (Preferred)
- Experience with cloud platforms (e.g., AWS, Azure, GCP) and familiarity with cloud-native development concepts.
- Knowledge of Docker and basic familiarity with Kubernetes.
- Experience with message queues/brokers (e.g., Kafka, RabbitMQ).
- Understanding of caching technologies (e.g., Redis).
Qualifications & Work Style:
- Bachelor's degree in Computer Science or related field, or equivalent experience.
- Demonstrated ability to work effectively in an Agile/Scrum environment.
- Strong analytical, problem-solving, and time-management skills.
- Excellent communication skills and ability to articulate technical concepts clearly.