Job Description
Procore’s Business Systems Technology group is looking for a Principal Software Engineer to elevate our business systems technology landscape, enhance scalability, drive operational excellence, and enable efficient growth for the business.
As a Principal Software Engineer, you’ll use your expert-level technical skills to craft innovative solutions while influencing and mentoring other technical leaders. You’ll collaborate with cross-functional teams and play a pivotal role to design, develop, and optimize business systems, platforms, services, integrations, and transactional data across diverse domains including finance, accounting, e-commerce, billing, payments, expenses, tax, and talent. To be successful in this role, you’re passionate about domain-driven design, systems optimization, event based integrations, configurable cloud services, with a strong bias for action and outcomes. If you’re an inspirational technology leader comfortable translating vague problems into pragmatic solutions that open up the boundaries of technical possibilities—we’d love to hear from you!
This role is based out of our Austin, Texas office, reports into the VP Technology of DTS Business Systems and offers flexibility to work remotely as schedule permits.
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.
- Collaborate with cross-functional teams to define technical strategies, roadmaps, and drive outcome delivery.
- 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.
- Generate technical documentation and presentations to communicate architectural and design options, and educate development teams and business users.
- Mentor and guide junior engineers to foster their growth and development.
- Roughly 40-60% hands-on coding.
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 application 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 online services or streaming systems
- Deep understanding of micro-services architecture and containerization technologies (e.g., Docker, Kubernetes, Mesos).
- Expertise with diverse DB technologies like RDMS PostgreSQL, Graph, NoSQL (document, columnar, key-value), Snowflake.
- Strength in the majority of commonly used data technologies and languages such as Python, Java, Go or Scala, Kafka, Spark, Flink, Airflow, Splunk, Datadog, Jenkins, or similar
- Skilled in software development lifecycle processes and experience with scrum, agile and iterative approaches
- Excellent communication skills: Demonstrated ability to explain complex technical issues to both technical and non-technical audiences.
- Knowledge of accounting, billing and payment processing concepts and experience with finance (ERP), billing applications and payment processors preferred
Qualifications
See more jobs at Procore Technologies
Apply for this job