The interview process consisted of:
1. A very brief phone call with a recruiter who asked me a few simple questions about my background and prior employment experience.
2. A 1-hour online behavioral interview with a Senior Software Engineer who asked me more in-depth questions about my prior employment experience and what I had worked on specifically.
3. A 1-hour technical interview with another Senior Software Engineer, over Coderpad. It consisted off several Rspec tests, and you needed to fill in several functions to make the RSpec tests pass. It was relatively straightforward (no complex knowledge of Data Structures/Algorithms needed) and was really more to test whether you could code at a basic level.
4. A 2-hour in-person interview, with 5 or so different engineers, some junior engineers and some senior engineers. They will either all be behavioral interviews or only 1 will be another technical interview. The technical interview portion is also relative simple here -- my example was about writing code to convert between Arabic and Roman Numerals.
-----
My advice for preparation:
The questions they ask during behavioral interviews are really the usual questions you would be asked at any behavioral interview, so there is not much that you can do to prepare besides simply reviewing your resume.
For the technical interview, review coding questions from Hackerrank and ExercismIO, as these are roughly equivalent to the level of difficulty of questions you will receive.
---
My thoughts:
As far as interviews go, Procore is extremely fair -- there's no stupidly esoteric DS&A/DP/Math questions like you'd get at other companies, which is nice. The recruiters and HR staff are friendly during the interview process and don't put you on the spot. Overall the process could be shorter -- I applied in early December, and my first interview wasn't until February.