Senior Backend Java Developer (API & Software Engineering)
Summary
Designs and builds high-throughput RESTful APIs and backend services in Java/Spring Boot, focusing on scalable architecture, database optimization, and asynchronous execution.
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.
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.