Procore Code Corps is Inspiring Girls to Code

What do you get when you teach others what you love to do, and have the support and encouragement of your company to do it? Fulfillment. That’s what several of us experienced this summer while teaching girls the basics of coding at the Girls, Inc. of Carpinteria’s Eureka! summer program. It feels good to make a difference in our local community by giving back and inspiring others. When we asked the Teen Programs Manager at Girls Inc., Kenya Rodriguez, why she decided to partner with Procore, we were delighted by her answer, “Our mission at Girls Inc is... Read More

Operational Excellence - One Way Optimism is Constructed at Procore

Heidi Helfand is Director of Engineering Excellence at Procore Technologies. She is also the author of the book Dynamic Reteaming, the Art and Wisdom of Changing Teams and is an international keynote speaker in the software industry. Heidi recently lead the Operational Excellence event for Procore's R&D organization and offers up a deep dive here into the event, how it was produced and why. Event Blueprint In Procore R&D, we not only “build the software that builds the world,” but we also actively build our growing R&D organization. One example is our recent Operational... Read More

How to Handle Growth Through Dynamic Reteaming

Teams are dynamic, especially at fast-growing software companies like Procore. When you hire new people, your teams change. It’s inevitable - so you might as well get good at dynamic reteaming in order to make hiring new employees more seamless. I work in R&D to help teams get up to speed quickly when they form or help “reset” them when they change or transition. It only takes the addition or loss of one person to have a new team system. Each team system is unique and has a different dynamic, which changes with the addition or loss... Read More

Introducing Blueprinter

A new way to format and serialize APIs. Blueprinter is a declarative and fast Ruby object to JSON serializer, an alternative to solutions like Active Model Serializers. Why build another serializer? When we began writing Blueprinter, existing options at the time of writing were few, most suffered from poor performance and hard to read code. Procore has a very large API, with hundreds of endpoints representing hundreds more data structures. We needed a fast, simple option that we could use across our gamut of different needs. We noticed an opportunity to solve our needs as well as something we could... Read More

Twisted Tales

Making Redux Saga scalable with TDD, SOLID principles and the Narrator Design Pattern There and Back Again... Asynchronous code is hard. Talking to a server is one of the most critical parts of a modern web application, and being able to write tests around this communication layer is imperative. The JavaScript ecosystem has some excellent state management solutions, with Redux being probably the most popular flavor. This simple and intuitive library provides the best solution we've seen to a longstanding problem, and is built with testability in mind. However, we've found that the asynchronous libraries commonly used with Redux can... Read More