Job Summary
We are looking for a Senior Backend Software Engineer to join our engineering team in Egypt. The ideal candidate will be responsible for designing, developing, and maintaining scalable backend systems and APIs that support high-performance applications. This role requires strong experience in Java, Spring, Spring Boot, cloud platforms, and both SQL and NoSQL databases.
Key Responsibilities
- Design, develop, and maintain backend services and APIs using Java, Spring, and Spring Boot.
- Build scalable, secure, and high-performing distributed systems.
- Design system architecture and contribute to technical decisions and engineering best practices.
- Integrate with cloud services and deploy applications on AWS and GCP.
- Work with both SQL and NoSQL databases, ensuring performance, reliability, and scalability.
- Optimize application performance, troubleshoot production issues, and improve system stability.
- Collaborate closely with product managers, frontend engineers, QA, DevOps, and other stakeholders.
- Write clean, maintainable, and well-tested code.
- Review code, mentor team members, and support technical growth across the team.
- Participate in system design discussions, technical planning, and architecture reviews.
- Ensure engineering best practices in security, observability, and reliability are followed.
Required Qualifications
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- 5+ years of experience in backend software development.
- Strong hands-on experience with Java.
- Strong experience with Spring Framework and Spring Boot.
- Good experience building RESTful APIs and microservices.
- Solid experience with AWS and GCP cloud platforms.
- Strong experience with SQL databases such as MySQL, PostgreSQL, or similar.
- Strong experience with NoSQL databases such as MongoDB, DynamoDB, Cassandra, or similar.
- Good understanding of distributed systems, scalability, performance tuning, and resilience.
- Experience with CI/CD pipelines, version control, and modern development practices.
- Strong problem-solving skills and ability to work in a fast-paced environment.
- Good communication skills and ability to work effectively within cross-functional teams.
Preferred Qualifications
- Experience with containerization and orchestration tools such as Docker and Kubernetes.
- Experience with messaging systems such as Kafka or RabbitMQ.
- Familiarity with monitoring and observability tools.
- Experience working in agile development environments.
- Exposure to security best practices and cloud-native architecture patterns.
What We Are Looking For
- Strong ownership and accountability.
- Ability to lead technical initiatives and drive backend architecture improvements.
- A collaborative mindset and willingness to support team growth.
- Passion for building reliable and scalable systems.