Senior Java Backend Engineer | Spring Boot | Microservices | Kafka
- Work arrangement
- Remote
- Occupation
- Software & IT
- Location
- Cairo, Cairo Governorate, EG
- Compensation
- Not disclosed
- Apply by
- April 14, 2027
About this role
Senior Backend Engineer (Java)
Job Description
We are looking for aSenior Backend Engineer (Java)with strong experience in building scalable, high-performance backend services and REST APIs usingJava and Spring Boot. The ideal candidate will have hands-on experience developing microservices, event-driven systems, and distributed applications that operate reliably under heavy load.
The role involves designing and developing backend services, working with relational databases and caching technologies, implementing event-driven architectures, and optimizing application performance. You will also contribute to CI/CD pipelines, automated testing, code reviews, and software design practices.
Key Responsibilities
- Design, develop, and maintainhigh-performance backend services and REST APIsusing Java and Spring Boot.
- Build and maintainscalable microserviceswith a focus on reliability, maintainability, and performance.
- Developevent-driven architectures and asynchronous processing flowsusing Kafka or similar streaming platforms.
- Design and optimizerelational database solutions, including PostgreSQL, with a strong focus on query performance and efficient data handling.
- Implement and optimizecaching solutionsusing Redis, Ignite, or similar technologies.
- Develop and integrategRPC servicesfor efficient communication between distributed services.
- Design and implementmulti-tenant backend services, ensuring appropriate tenant isolation, scalability, and security.
- Containerize and deploy services usingDocker and Kubernetes.
- Contribute toCI/CD pipelinesand automated deployment processes.
- Write unit, integration, and performance tests to ensure application reliability and quality.
- Apply appropriatedesign patterns, clean code principles, and software engineering best practices.
- Participate incode reviews, technical discussions, and architectural decisions.
- Performperformance profiling, troubleshooting, and tuningto optimize services under heavy workloads.
- Monitor and analyze application performance, database queries, resource utilization, and system bottlenecks.
- Collaborate with other engineers and teams to design and deliver reliable distributed systems.
Requirements
- 5+ years of professional software development experience, with strong hands-on experience in Java.
- Strong production experience withJava and Spring Boot.
- Proven experience buildingmicroservices and REST APIs at scale.
- Hands-on experience withKafka or similar event-streaming platforms.
- Strong knowledge ofPostgreSQL or other relational databases, including query optimization and database performance.
- Experience withRedis, Apache Ignite, or similar caching technologies.
- Experience withgRPCand distributed service-to-service communication.
- Experience designingmulti-tenant applications and services.
- Experience withDocker and Kubernetes.
- Good understanding ofCI/CD practices and deployment automation.
- Strong knowledge ofunit testing, integration testing, and automated testing practices.
- Good understanding ofsoftware design patterns, clean code, and SOLID principles.
- Experience participating incode reviews and collaborative software development.
- Practical experience withperformance profiling, load testing, troubleshooting, and application tuning.
- Strong understanding of scalable, reliable, and distributed backend architectures.
Technical Stack
Java | Spring Boot | Microservices | REST APIs | Kafka | PostgreSQL | Redis / Apache Ignite | gRPC | Docker | Kubernetes | CI/CD