Senior Backend Java Engineer | Microservices
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.
