Summary
Join Procore as a Senior Software Engineer and contribute to revolutionizing the construction industry through innovative software development. You will be responsible for evolving the existing codebase, designing and building a service-oriented architecture, and writing highly performant code. Collaboration with various teams and stakeholders is crucial, as is mentoring junior engineers. The ideal candidate possesses a Bachelor's degree in Computer Science or a related field, along with 5+ years of experience in object-oriented programming and modern web development. This role is based in Cairo, Egypt.
Requirements
- 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 full-stack modern applications and frameworks with Ruby on Rails, React/Typescript and PostgreSQL
- 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
Responsibilities
- 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 Procore’s 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
- Serve as mentor to junior Engineers on the team
Benefits
- Generous paid time off
- Healthcare coverage
- Career enrichment and development programs
Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.