A friend of mine referred me for an opening in early 2011. Unfortunately there were no open positions at that time. I had one interview for a technical position but early in to the interview it was clear it was too technical for my experience level. I kept a line of dialogue open between the recruiters as I was very eager to join Guidewire in a functional capacity and knew that I would make a great asset and addition to the company. After about 6 months, I got a phone call from the recruiter I most frequently talked to and was told the position was open and I was the top choice. I set up a phone interview with a field consultant. This first call was to go over the position and qualifications and a general get to know each other type of call. Very casual and comfortable. At the end of this call, we set up a time to take the functional test for the next day. On the day I was expecting to receive the technical test, I heard nothing, no calls or emails. I gave up and wrote an email to the HR contact I had. My first interviewer had forgotten to schedule the test! He emailed me and apologized and no harm done. I took the test that evening, it included some basic programming questions that could be answered in any language of choice. I got the feeling this was to assert that one understands the basics of computer science and the basic programming structures (loops, arrays, etc). There were a couple basic XML questions, cleaning up syntax, some basic DB design type questions. The test was on a word document, which was sent at a specific time and then required to be emailed back within 90 minutes. There were a few industry (insurance) specific questions that were pretty general. Designing some high level anti-fraud claims algorithms and the like. After I emailed the test back in the evening, I received an email the next day asking to set up a followup phone interview. It was scheduled for a couple days later. This followup call was also relaxed and casual, we didn't talk about my test but we got in to some more database design/programming questions. These were all pretty high level. About an hour after finishing this interview, I received a call from my recruiter asking to schedule the next round, which would be an on-site interview in Atlanta. I scheduled the interview for a week later. The onsite/in person interview consisted of 3 interviewers in succession (not at once). The whole process took about 4.5 hours and was a great way to get to know some employees in the company and learn more about the culture and passion. After leaving the interview site and waiting in the airport for my return flight, I received a call from my recruiter saying he would like to extend an offer.