Principal Software Engineer - Collaborative File Management

  • Carpinteria, CA, USA
  • Employees can work remotely
  • Full-time

Job Description

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. Procore is on a mission to revolutionize a historically underserved industry. Will you join our journey?

As a Principal Software Engineer on the Construction Documents teams, you’ll enable our customers to exercise enterprise-level document management and control. You’ll design and implement a system to link millions of documents to applications, clients, and services. In collaboration with Product, QA, UX, and other teams, you’ll identify critical areas, develop roadmaps, and drive strategic direction for significant parts of the technology stack. Backed by the might of our teams, you’ll have the tools and resources needed to achieve extraordinary results that render a significant impact extending beyond the boundaries of traditional engineering roles.

This position will report to the Senior Engineering Manager for the Construction Documents Group and can be based at any of our US offices or remotely in the US. We’re looking for someone to join our team immediately.

What you’ll do:

  • Architect and design a document service and management system that serves hundreds of millions of requests per day to web, mobile, and 3rd party applications for large-scale document management
  • Evolve our existing codebase from a monolithic Rails application into a modular system with clear, well-enforced domain boundaries and a coherent public interface
  • Participate in designing and building a system that aligns with Procore’s technical vision of a Service-Oriented Architecture
  • Use a collaborative approach to lead architectural design decisions that improve scalability and performance
  • Collaborate with Engineering, Product, and UX to design and build solutions that delight users and solve critical business problems
  • Serve as a leader and develop teammates by conducting code reviews, providing mentorship, pairing, and training opportunities
  • Drive key projects including:
    • Scalability: We’re scaling and need engineers who are ready to take on the challenge of working on live, core systems with millions of users
    • Complex data management systems: We’re building a world-class document file management system from the ground up. You’ll work through challenges like file intake, document management, large file manipulations, permissions, and file revisioning.
    • Microservices: We build, maintain, and develop a wide series of microservices and are looking for engineers adept at discovering new opportunities and driving them to completion

What we're looking for:

  • 12+ years experience in Object-Oriented Program fundamentals, Test Driven Development and Design principles (Ruby on Rails, Python, C++, Java)
  • Bachelor’s Degree in Computer Science, a related field, or comparable work experience
  • Experience working with our stack of Javascript, React, PostgreSQL and NoSQL
  • Experience designing and building software in a Service-Oriented Architecture
  • Experience in working and developing RESTful APIs
  • Experience leading large initiatives with the ability to course-correct as needed
  • Track record of anticipating technical problems that will fall out of major projects and designing solutions to overcome those problems
  • Demonstrated expertise with building or significantly improving large, business-critical systems involving stability, performance, and scalability
  • Time-honed expertise with modern web development across the entire spectrum of development, testing, staging, deploying, and monitoring

Additional Information

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

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.

Perks & Benefits

You are a person with dreams, goals, and ambitions—both personally and professionally. That's why we believe in providing benefits that not only match our Procore values (Openness, Optimism, and Ownership) but enhance the lives of our team members. Here are just a few of our benefit offerings: generous paid vacation, employee stock purchase plan, enrichment and development programs, and friends and family events.

Privacy Policy