tap into our expansive network to build your career

Portfolio Company Open Roles

Principal Software Engineer (Ruby)



Software Engineering
Austin, TX, USA
Posted on Wednesday, May 29, 2024

Job Description

We’re looking for a Principal Software Engineer to join Procore’s Project Management Engineering Division. In this role, you’ll work across multiple disciplines to build the core Project Management products that enable construction professionals to connect their teams and project information to enable better decisions, faster.

This role will have a unique opportunity to be close to our customer and innovate solutions to unique problems that will have a broad impact across the construction industry. You will have an opportunity to build end-to-end customer experiences in addition to building innovative and scalable services and solutions that enable future growth and success for Procore’s platform.

As a Principal Software Engineer, you will provide technical leadership over multiple key products and initiatives to ensure they continue to meet the needs of Procore’s customers while maintaining a high quality bar. Success in this role will be accountable for the long-term architecture, health, stability, and quality of your team's domains, codebase and systems.
Your responsibilities will include planning ahead for future needs of our customers while prioritizing your role as an organizational mentor and advocate for technical excellence, quality and engineering efficiency. You will have responsibility to ensure the team’s technical strategy is well defined and aligns with the strategy of the broader engineering community.

This position reports to the Director of Engineering for Project Management and will be based in our Austin TX, office. We’re looking for someone to join us immediately.

What you’ll do:

  • Lead the design, development, and implementation of scalable software and data solutions to meet business needs.

  • Optimize performance and scalability of existing systems to support business growth.

  • Architect and implement robust integrations between diverse systems and services, while coexisting neatly with legacy code and systems.

  • Collaborate with cross-functional teams to define technical strategies, and roadmaps that deliver high impact customer outcomes.

  • Contribute to setting standards and development principles across multiple teams and the larger organization.

  • Champion best practices for software development, code reviews, and quality assurance processes.

  • Focus on driving consensus throughout our engineering teams and enable the education of our business partners via the generation of technical documentation and presentations that communicate architectural and design decisions and clearly articulate long term and short term trade-offs.

  • Be hands-on in our codebase 40-60% as well as working as a force-multiplier in our engineering organization by guiding and mentoring other engineers.

What we’re looking for:

  • Bachelor’s or Master’s degree in Computer Science or related field.

  • 10+ years of experience designing & implementing complex systems and business applications integrations with SaaS applications (including enterprise integration patterns, middleware frameworks, SOA web services)

  • 10+ years of demonstrated success in software development and building cloud-based, highly available, and scalable enterprise services.

  • You are adept at looking around corners, and take initiative to spike ahead of development efforts to look for areas of collision and opportunities for acceleration.

  • Advanced level familiarity with developing and scaling applications using Ruby on Rails (preferred), Python/Django or similar application frameworks.

  • Advanced skills in database technologies such as AWS RDS, DynamoDB and PostgreSQL. Experience with data migrations at scale.

  • Hand on experience implementing data streaming technologies and tool sets such as Kafka, Flink, and Spark at scale.

  • Skilled in software development lifecycle processes and experience with scrum, agile and iterative approaches

  • Excellent communication skills. Drives collaboration with their teammates, partners, and stakeholders to advance team goals. Fosters an environment of collaboration and knowledge sharing within their team.

Additional Information

Base Pay Range $185,800 - $255,475. Eligible for Bonus Incentive Compensation. Procore is committed to offering competitive, fair, and commensurate compensation, and has provided an estimated pay range for this role. Actual compensation will be based on a candidate’s job-related skills, experience, education or training, and location.

Perks & Benefits

At Procore, we invest in our employees and provide a full range of benefits and perks to help you grow and thrive. From generous paid time off and healthcare coverage to career enrichment and development programs, learn more details about what we offer and how we empower you to be your best.

About Us

Procore Technologies is building the software that builds the world. We provide cloud-based construction management software that helps clients more efficiently build skyscrapers, hospitals, retail centers, airports, housing complexes, and more. At Procore, we have worked hard to create and maintain a culture where you can own your work and are encouraged and given resources to try new ideas. Check us out on Glassdoor to see what others are saying about working at Procore.

We are an equal-opportunity employer and welcome builders of all backgrounds. We thrive in a diverse, dynamic, and inclusive environment. We do not tolerate discrimination against employees on the basis of age, color, disability, gender, gender identity or expression, marital status, national origin, political affiliation, race, religion, sexual orientation, veteran status, or any other classification protected by law.

If you'd like to stay in touch and be the first to hear about new roles at Procore, join our Talent Community.