About the role
Design, develop, and maintain scalable backend applications using Java and Spring Boot. Collaborate with cross-functional teams to integrate microservices and troubleshoot production issues.
What they look for
Requirements
Requires a bachelor's degree in a related field and at least 5-6 years of professional Java development experience. Candidates must possess strong knowledge of the Spring ecosystem, REST APIs, and relational databases.
Full description
This is a remote position.
The Key Responsibilities are:
- Design, develop, test, and maintain backend applications using Java and Spring Boot.
- Translate business and technical requirements into scalable software solutions.
- Participate throughout the software development lifecycle, including analysis, design, implementation, testing, deployment, and production support.
- Design and integrate REST APIs and microservices.
- Troubleshoot production issues, identify root causes, and implement sustainable solutions.
- Write clean, maintainable, and well-tested code following engineering best practices.
- Perform code reviews and provide technical guidance to other team members.
- Contribute to system design, architecture, and technical decision-making.
- Improve application performance, reliability, security, and maintainability.
- Create and maintain technical documentation in Confluence.
- Collaborate with product owners, QA engineers, and other technical teams in an Agile environment.
- Participate in Scrum ceremonies and technical discussions.
Requirements
- Bachelor’s degree in Computer Science, Computer Engineering, Software Engineering, or a related field.
- Minimum 5–6 years of professional software development experience, primarily using Java.
- Strong experience with Java, Spring Boot, and the Spring ecosystem.
- Solid understanding of object-oriented programming, design principles, and common design patterns.
- Experience designing and developing REST APIs and microservices.
- Good experience with Maven and Git-based development workflows.
- Strong knowledge of relational databases, SQL, and data-access technologies such as JPA/Hibernate.
- Experience writing unit and integration tests using tools such as JUnit and Mockito.
- Familiarity with CI/CD pipelines and modern software delivery practices.
- Strong debugging, problem-solving, and root-cause analysis skills.
- Experience with Agile software development practices.
- Ability to independently own technical tasks and guide less-experienced engineers.
- Excellent verbal and written English communication skills.
- Availability to work during the core working hours of 12:00 PM to 9:00 PM Lebanon time.
Preferred Qualifications
- Experience with AWS services and cloud-based application development.
- Working knowledge of Python.
- Experience with event-driven systems, messaging technologies, or distributed systems.
- Familiarity with Docker and containerized applications.
- Experience with application monitoring, logging, and performance optimization.
- Basic front-end experience with React is a plus but not required.
This opportunity is remote for Egyptian applicants and Hybrid for Lebanese applicants.
Similar roles
-
Software Engineer (Java with Snowflake)
DTCC Hyderabad, Telangana, India
-
Java BackEnd Developer
Consort Group Lisbon, Portugal · €28K–€40K/yr
-
Senior Java Developer & AI | Remote
Grupo Data Lisbon, Portugal
-
Java Backend Developer
Capco Mumbai, Maharashtra, India
-
Senior Developer (Java, AWS, DevOps)
Deploja AB Gothenburg, Västra Götaland County, Sweden
-
Software Engineer III - Java AWS
JPMorgan Chase & Co. Bengaluru, Karnataka, India