Senior Software Engineer (Mobile Backend-for-Frontend)
About the role
In this role, you'll help revolutionize a historically underserved industry by building scalable SaaS solutions. Your primary goal is to translate fundamental customer needs into robust backend architectures that power Procore's mobile experiences. As a Senior Software Engineer (Backend), you'll partner with infrastructure, platform, and product teams to design and build the GraphQL BFF services that Procore's iOS and Android apps consume directly. Use your experience in distributed systems and strategic mindset to help shape development standards and contribute to technical initiatives. Join us to build software that shapes the physical world. This position is hybrid and reports to a Manager, Software Engineering based in Austin, TX.
Responsibilities
- Contribute to technical standards for the Mobile BFF team and collaborate on cross-functional initiatives with backend feature teams, infrastructure, and platform teams.
- Build and maintain scalable GraphQL BFF services using Ruby on Rails, Node.js, and Java, hosted on AWS and Kubernetes.
- Mentor and develop fellow teammates by conducting code reviews, pairing, and providing technical guidance.
- Design and implement backend systems that balance immediate operational needs with long-term strategic goals.
- Enhance and maintain modern Continuous Integration and Continuous Delivery (CI/CD) systems (using CircleCI and ArgoCD) to support rapid deployment.
- Ensure system reliability and performance by overseeing testing, staging, deployment, and monitoring processes across the development lifecycle.
- Leverage a tech stack that includes Postgres, TypeScript, and an evolving microservices architecture to solve complex problems.
Qualifications
- Bachelor's Degree in Computer Science, Engineering, a related field, or equivalent work experience.
- 5+ years of software engineering experience with a strong focus on fundamentals, Test Driven Development (TDD), and system design.
Skills
- Professional experience with Ruby on Rails, Node.js, or Java is highly preferred; GraphQL or other BFF/API-layer experience is a plus.
- Experience working with software, platforms, and infrastructure at scale.
- Familiarity with modern Continuous Integration and Continuous Delivery systems.
- Ability to understand tradeoffs between short-term and long-term goals to balance immediate needs with strategic initiatives.
- Experience working closely with mobile teams or hands-on iOS/Android development experience is a strong plus.
Pay
Base Pay Range: 140,960.00 - 193,820.00 USD 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.