I applied online. The process took 4 weeks. I interviewed at AimLock (Castle Rock, CO) in Mar 2019
Interview
I submitted my resume via their AimLock website. A recruiter contacted me immediately. We setup a time to speak on the phone. The phone conversation lasted 30 minutes. She asked screening questions regarding my experience, focusing on my experience with C++, Agile with Scrum, and Linux. A follow-up interview was via a practical exercise remotely on the phone over a screen shared codeshare session. The interviewer asked me to implement a particular data structure and how I would traverse that data structure to extract the data in a particular order. Together we worked through the problem. The interviewer guided me to stay on-track. The follow-up practical interview lasted about an hour with about 30 minutes of back-and-forth questions following the interview. The following week, I was asked to come in for another practical interview. I was greeted by the recruiter who had me leave my cell phone in my car and also sign an NDA. I was brought into a conference room and introduced to a software engineer administering the practical and their software manager. I was asked if I knew any other languages than C++. I responded with Java and Perl. They asked which language was I stronger in. I responded with Java only because I use an IDE with Java and in C++, I am mostly worked with vi and implementation, definition, and make files. We continued in C++. I was given a problem to solve, however, I was constrained to solve the problem using brute-force. I preferred to explore a more efficient method to resolving the problem, but I sense that I was asked to use brute force in order to stay in a more “predictable” realm and keep the exercise on task. The problem was a complex statistics problem predicting a particular outcome depending on certain patterns. This practical lasted about an hour and a half. Following the practical, I was given a quick tour. I was finally asked typical questions like where I see myself in 5 years. I was also asked again about my experience with Agile with Scrum. I explained my experience and appreciation for Agile. I was also asked about my experience with test-driven development, continuous integration, and developing test cases, which I explained. I also volunteered my strengths and weaknesses. I asked questions regarding their software development process and environment. I framed my questions indicating that I am fine working in the chaos of a startup, but despite the volatility of a startup, their software development process needs to be disciplined. I asked about their development, test & integration, and production environments, which they were in the process of defining. After my question and answer session with the Software Manager, I was passed off to the recruiter who collected my badge, which concluded the interview.