Staff Software Engineer - Full Stack
ExternalPrepare for this interview
EliteAI-generated questions, company research, and talking points tailored to this role
Responsibilities
- Lead the design and development of high-performance backend systems written in Rust/C/C++ , powering Procore's BIM and construction technology platform.
- Architect and build scalable, distributed services aligned with Procore's service-oriented and microservices architecture.
- Own complex technical initiatives from concept to production, ensuring reliability, performance, and maintainability.
- Collaborate closely with Product, Frontend, Infrastructure, and Platform teams to deliver robust APIs and backend services.
- Establish and promote engineering best practices in system design, code quality, testing, and performance optimization.
- Drive architectural decisions that support enterprise-scale customers across international markets.
- Mentor senior and mid-level engineers, providing technical leadership, code reviews, and design guidance.
- Anticipate scalability, reliability, and performance challenges in large distributed systems and proactively design solutions.
- Contribute to CI/CD, observability, and operational excellence across backend services.
Requirements
- Bachelor's or Master's degree in Computer Science or equivalent practical experience.
- 8+ years of professional experience building production-grade backend systems.
- Strong expertise in modern C++ (C++17/20 or later) , including memory management, concurrency, and performance optimization.
- Experience designing and building distributed systems and microservices at scale.
- Deep understanding of multithreading, networking, and asynchronous programming.
- Experience with service-oriented architecture and API design (REST/gRPC).
- Familiarity with containerized environments and cloud-native infrastructure.
- Strong understanding of data structures, algorithms, and system-level design.
- Experience working with high-throughput, low-latency systems.
- Experience operating software at scale (thousands of hosts, millions of users).
- Track record of identifying architectural risks early and driving long-term technical strategy.
- Experience designing CI/CD pipelines and improving developer productivity.
- Strong documentation skills and ability to bring clarity to complex technical solutions.
- Ability to balance short-term delivery needs with long-term architectural vision.
- Nice to Have (Bonus)
- Experience with 3D data processing, geometry engines, or BIM systems .
- Familiarity with linear algebra, computational geometry, or spatial indexing.
- Experience with Rust or performance-critical systems programming.
- Exposure to WebAssembly or cross-platform native modules.
- Background in graphics pipelines or handling large model datasets.
- Experience optimizing large-scale data processing pipelines.
- Additional Information
- Base Pay Range:
- 880,000.00 - 1,210,000.00 NOK Annual
- This role may also be eligible for Equity Compensation and/or Bonus Incentive Compensation. Procore is committed to offering competitive, fair, and commensurate compensation. Actual compensation will be based on a candidate's job-related skills, experience, education or training, and location.
Benefits
Additional Information
We're looking for a Staff Backend Engineer (C++) to join Procore's Product & Technology Team. Procore builds software that improves the lives of everyone in construction, and our Product & Technology organization drives our innovative, global platform at scale. We are a customer-focused team spanning engineering, product, design, data, security, and business systems. As a Staff Engineer, you will play a critical role in shaping the architecture and backend systems that power Procore's BIM and construction management solutions worldwide. This position reports to a Senior Director of Engineering and is based in our Norway location. We're looking for someone to join us immediately.
Your Match
How well this role fits your profile.
Company Intel
What employees say
Worked at procore? Share your experience