Senior Backend Java Engineer | Microservices

Remotely
Full-time

As a Senior Java Developer, you'll be at the forefront of designing and implementing microservice-based applications that power our core business operations. You'll collaborate with cross-functional teams to create resilient, high-performance systems while following industry best practices and agile methodologies.


Key Responsibilities:

- Design and develop sophisticated microservice architectures using Java 11, Kotlin, and Spring Boot framework.

- Architect scalable, maintainable, and secure RESTful APIs for internal and external service integration.

- Implement efficient data persistence strategies using PostgreSQL and Oracle databases.

- Develop high-throughput, low-latency solutions leveraging Kafka for event streaming and Redis for caching.

- Containerize applications using Docker and orchestrate deployments with Kubernetes or OpenShift.

- Collaborate closely with frontend developers, QA engineers, and business analysts to deliver cohesive product features.

- Participate in code reviews to ensure code quality, performance, and security standards.

- Troubleshoot and optimize application performance in distributed environments.

- Implement automated testing strategies using JUnit, Postman, and JMeter.

- Contribute to continuous improvement of development processes and engineering practices.

- Mentor junior developers and share knowledge across the engineering organization.


Required Skills:

- 5+ years of professional experience in Java development, with strong knowledge of JVM principles and design patterns.

- Proven experience with Java 8-17 and modern Java features (lambdas, streams, optional).

- Advanced proficiency with Spring Framework ecosystem (Spring Boot, Spring MVC, Spring Data, Spring Security).

- Demonstrated experience building and maintaining microservice architectures.

- Expertise in working with relational databases (PostgreSQL, Oracle) and writing optimized SQL queries.

- Solid understanding of message brokers and event streaming platforms, particularly Apache Kafka.

- Practical experience with caching solutions like Redis for performance optimization.

- Strong knowledge of RESTful API design principles and HTTP protocols.

- Experience with asynchronous programming and multithreading in Java applications.

- Proficiency with build automation tools such as Maven and Gradle.

- Working knowledge of containerization with Docker and orchestration with Kubernetes.

- Experience with automated testing frameworks and performance testing tools.

- Ability to work independently while collaborating effectively in an agile team environment.

- Bachelor's degree or higher in Computer Science, Engineering, Mathematics, or related technical field.