Back to all positions

Senior Software Engineer (Java)

Remote Full-time Now Hiring

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.

Originally posted on