Position Overview
We are seeking an experienced Backend Java Developer with strong core Java capabilities and a deep focus on API design and backend architecture. In this role, you will design, build, and maintain high-throughput, secure RESTful APIs and enterprise backend components. You will focus on writing scalable code, optimizing multi-database interactions, mastering asynchronous execution, and driving sound object-oriented and functional programming practices across the stack.
Key Responsibilities
- Design, build, and maintain RESTful APIs and backend services using Java (11+) and the Spring / Spring Boot framework.
- Implement clean architectural patterns, object-oriented design principles (SOLID), and reusable software modules.
- Author standard OpenAPI/Swagger documentation for REST endpoints and internal contracts.
- Leverage Java concurrency utilities, multithreading frameworks, and asynchronous programming patterns to ensure efficient application performance.
- Diagnose, debug, and resolve memory leaks, thread contention, and garbage collection bottleneck issues using Java profiling tools.
- Design and optimize relational (PostgreSQL, MySQL, Oracle) and NoSQL database schemas.
- Manage data persistence and transactional boundaries using Spring Data JPA / Hibernate.
- Write tuned SQL queries, establish effective database indexing, and configure connection pooling and caching strategies (e.g., Redis).
- Implement standard API security mechanisms (OAuth2, JWT authentication, authorization, and data sanitization).
- Build structured logging, health checks, and application metrics using standard logging frameworks (Logback, SLF4J).
- Write clean, maintainable, modular, and unit-tested code using JUnit and Mockito.
- Participate in code reviews, technical architecture reviews, and maintain test coverage across applications.
Required Technical Qualifications
- 5+ years of hands-on software development experience using Java 11/17+ with deep knowledge of Collections, Streams API, Multithreading/Concurrency, Memory Model, and Exception Handling.
- Strong expertise in Spring Boot, Spring Core, Spring MVC, and dependency injection paradigms.
- Deep understanding of RESTful architectural styles, HTTP status codes, JSON payload processing, custom middleware, and error-handling patterns.
- Advanced proficiency in Spring Data JPA / Hibernate, multi-datasource routing, raw SQL query tuning, and database migration tooling (Flyway/Liquibase).
- Practical experience with message brokers and event streaming architectures using Kafka or RabbitMQ.
- Solid grasp of Design Patterns (Factory, Builder, Singleton, Strategy), TDD/unit testing principles (JUnit 5, Mockito), and build tools (Maven / Gradle).
Preferred Qualifications
- Understanding of containerization basics (Docker) and modern CI/CD deployment workflows.
- Familiarity with microservice resiliency concepts (Rate Limiting, Circuit Breakers, Retry policies).
- Experience with caching layers and distributed system synchronization.