Reading 02 — My Interviewing Experiences
My interview process has been exciting, nerve-wracking, frustrating, humbling, and everything in between. When interviewing for internships for the summer following sophomore year, I realized that I didn’t know a lot of essential technical knowledge for many of these jobs since we only started our Computer Science curriculum that year. Humbled, I was lucky to get an internship not as a software engineer, but a technical internship nonetheless. Junior year, I applied to numerous different companies and had some interviews in the fall, but did not receive any offers until I interviewed with a company in the middle of spring semester. I was frustrated by the fact that with most of the companies, the interview process consisted of at least 2 or 3 interviews, some technical and some behavioral. I felt like I was walking on eggshells the entire time and it seemed that if there was any flaw in my performance that day, my chances at getting the job were over. I get it, if you botch a technical question it doesn’t really show that you know what you need to know. However, the environment in which these technical questions are asked is not representative of a typical software engineer’s work environment at all. I guarantee that no one has solved a non-trivial programming problem at work without googling something at least once. Yet in the words of Quincy Larson, I’m expected to “walk up to a whiteboard and regurgitate algorithms that haven’t changed since the 1970s, like a (classically) trained monkey”? I understand that I need to know algorithms and how they work, but isn’t it more important that I know which ones to choose for a certain task? I’m not going to re-write it anyway, I’ll use a library. I was frustrated by this part of the process because I knew that when I solved problems it was not like this at all, and I was confident that if I could work at that company for a day or two, I could demonstrate that I deserved a job. Anyway, I was able to secure a software engineering internship after an interview process that was much less stressful. Senior year, I encountered an interview process that made a lot more sense to me. It gave me the chance to show my ability in an environment similar to how I would work. I had an online programming challenge, which consisted of three problems of increasing difficulty. When I interviewed on site, the candidates were placed in a room and given a laptop on which to code a solution to the given problem. I really enjoyed this because I was able to solve the problem exactly how I have been in school and how I will at work.
It’s harder for companies to put more effort into their interviewing process, but for me, it was a much more enjoyable experience than going up to a whiteboard with a dry erase marker. It may be less efficient for them to set up the interviews, but this improved process will allow them to find the right people for the job and not miss out on good candidates. I don’t think it’s a matter of ethics, but having an effective interview process makes the whole experience much better for both parties.