What are the responsibilities and job description for the Java Backend Developer position at CoreAi Consulting?
We are looking for a Java Backend Developer who thrives on building scalable, high-performance systems that power large-scale applications. You will own the development and delivery of backend services, RESTful APIs, and event-driven architectures, working closely with product managers, architects, and cross-functional engineering teams to translate complex business requirements into elegant technical solutions.
The ideal candidate brings deep Java expertise, a strong command of modern frameworks and design patterns, hands-on experience with both relational and NoSQL databases, and a forward-looking mindset toward leveraging AI-powered developer tools to accelerate delivery and improve code quality.
Key Responsibilities
- Design, develop, and maintain robust, scalable backend services and RESTful APIs using Java 8 .
- Build and evolve microservices-based architectures using Spring Boot, ensuring high cohesion and loose coupling.
- Implement asynchronous and event-driven services using reactive programming models (CompletableFuture, Project Reactor, or Vert.x).
- Apply domain-driven design (DDD) and SOLID principles to deliver maintainable, production-ready code.
- Design and implement data models and integrations with relational databases (MySQL, PostgreSQL) and NoSQL stores (MongoDB, Cassandra, Couchbase).
- Leverage Spring Data JPA and Hibernate for ORM and efficient data access patterns.
- Integrate with internal systems, third-party services, messaging platforms (Kafka, RabbitMQ), and external APIs.
- Write comprehensive unit and integration tests using JUnit 5, Mockito, or TestContainers; maintain high code coverage standards.
- Actively use AI coding assistants (e.g., GitHub Copilot, Claude Code, Gemini etc. ) to boost productivity, generate boilerplate, and explore solutions.
- Apply prompt engineering techniques to leverage LLMs for debugging, code review, documentation generation, and test case creation.
- Work in an Agile/Scrum environment with iterative delivery cycles, sprint planning, and continuous improvement.
Required Skills & Qualifications
- 5 years of hands-on backend development experience; Java as the primary language.
- Java 8 Strong proficiency in Streams, Lambda expressions, Optional, Concurrency utilities (CompletableFuture, ExecutorService, Fork/Join)
- Strong understanding of Java memory model and garbage collection fundamentals
- Spring & Spring Boot Deep expertise in Spring MVC, Spring Security (OAuth2 / JWT), Spring Cloud
- Strong knowledge in Dependency injection, AOP, auto-configuration, and Actuator
- Hibernate and Spring Data JPA Proficient with Entity lifecycle, lazy vs. eager loading, N 1 problem prevention
- Strong knowledge in Query optimization, transactions, and connection pooling
- Strong understanding of asynchronous programming patterns: callbacks, futures, reactive streams.
- Experience with event-driven architectures using Kafka or RabbitMQ for decoupled, scalable system design.
- Familiarity with reactive frameworks (Project Reactor, RxJava, or Vert.x) is a strong plus.
- Proven experience building and operating microservices at scale.
- Experience working with relational (MySQL, PostgreSQL) and NoSQL (MongoDB, Cassandra, Couchbase) databases.
- Experience with unit testing frameworks: JUnit 5, Mockito, AssertJ.
- Practical, daily use of at least one AI coding assistant (GitHub Copilot, Claude Code, Gemini, or equivalent).
- Ability to critically evaluate, refactor, and improve AI-generated code — not just accept suggestions blindly.
- Awareness of prompt engineering for software development tasks (refactoring, documentation, test generation).
- Experience with cloud platforms: AWS or GCP (compute, storage, managed databases, messaging).
- Containerization and orchestration: Docker and Kubernetes basics.
- CI/CD: Jenkins, GitHub Actions, or equivalent pipelines.
- Experience with Spring Security for authentication and authorization layers.