Senior Software Engineer (Ruby)

Full-time

Senior-level

Cairo - Egypt

Job Description

A US-based leading provider of construction management software is looking for Software Engineering Managers to join their team. They provide cloud-based construction management software that helps clients efficiently build skyscrapers, hospitals, retail centers, airports, housing complexes, and more

What if you could use your technology skills to develop a product that impacts the way communities’ hospitals, homes, sports stadiums, and schools across the world are built? Construction impacts the lives of nearly everyone in the world, and yet it’s also one of the world’s least digitized industries, not to mention one of the most dangerous. That’s why they are looking for a talented Senior Software Engineer (Ruby) to join their journey to revolutionize a historically underserved industry.

As a Senior Software Engineer (Ruby), you are responsible for designing, building, and shipping software using your analytic, pragmatism, and engineering skills to provide solutions adopted by Engineering teams. If you have a passion for solving complex problems unique to running large, highly scalable, resilient systems and want to use your knowledge of software design and architecture, strong problem-solving skills, and desire to learn to continuously improve the experience of our customers and our engineers, we would love for you to join us!

This position will report to an Engineering Manager.

Responsibilities

  • Bachelor’s Degree in Computer Science, a related field, or comparable work experience
  • 5+ years of experience in Object-Oriented Programming fundamentals, Test Driven Development and Design principles
  • Strong experience working on modern applications and frameworks with Ruby on Rails
  • Experience with React/Typescript and PostgreSQL is a plus
  • Experience designing and building software in a service-oriented architecture
  • Time-honed expertise with modern web development across the entire spectrum of development, testing, staging, deploying, and monitoring
  • Experience with development in Docker, AWS, and microservice environments
  • Understanding of the tradeoffs between technical, analytical, performance, and product goals, and adept at formulating solutions that balance all of these needs
  • Strong experience documenting and bringing team clarity to complex solutions
  • A curious mind that is driven to innovate and solve customer problems

Requirements​/Qualifications

  • Evolve our existing codebase from a monolithic Rails application into a modular system  with clear, well-enforced domain boundaries and a coherent public interface
  • Contribute to designing and building a system that is aligned with the technical vision of a service-oriented architecture
  • Write a highly performant code that minimizes payload size and deferred scripts while consuming the lowest possible amount of resources
  • Collaborate with Engineering, Product, and UX to design and build solutions that delight users and solve critical business problems
  • Communicate complex problems and solutions to technical and non-technical stakeholders
  • Collaborate effectively with teammates by conducting code reviews, providing mentorship, pairing, and training opportunities
  • Mentor junior Engineers on the team

Apply for this job