Employment

I think the hiring process for technology companies gets a lot of flack but I think it accomplishes the purpose it was designed for. Companies don’t mind missing out on qualified candidates as much as they want to avoid hiring candidates who would be a bad fit. They’d much rather minimize false positives while rejecting individuals who would be qualified over accepting more people, some of who might not be good fits.

While I personally don’t love the coding trivia style technical interviews, I do think that most people who pass them are qualified software engineers. Not necessarily because the coding tests reflect any specific technical knowledge but because they require a lot of practice that ensures the candidate is dedicated to learning. My own personal experience followed this kind of trajectory. At first I was not very good at technical interviews. I took a while to complete even easier problems and was not super confident. Two years ago I decided to just practice coding problems every day. I worked through almost 200 problems in a summer and by the end of the summer felt really confident in my interviewing ability. I don’t think that doing these problems really improved my ability to write real world software, but I do think that it built my discipline.

After you work through enough problems on leetcode and hackerrank you start to see the coding problems as an easier challenge and interviews become less stressful. I think that being very prepared for these kinds of questions defintily pays off. In my experience it flips the interview when you are confident. Instead of worrying about what the company thinks you can be confident in your skills and decide whether the company is a good fit for you.

As far as Notre Dame goes, I think I had to learn most of my interview prep skills outside of the classes I took. All of the technical interviews I had mostly focused on either coding problems, side projects or design. I don’t think that the role of the CS department is necessarily to teach how to pass interviews however. I do think I have learned valuable skills at Notre Dame, but the nature of the game for interviewing is that you have to put in more work outside of class if you want to be successful.

My favorite interviews have been ones where I get a chance to write some code on my own for a period of time and then talk through it with a member of the company that I am interviewing with. I also enjoy design interviews, where you talk through a design with an interviewer. Both types of interviews are more like real world engineering where you can justify your decisions and explain them. I would like to see interviews move away from the pure coding challenge model.

If I could give a younger version of me advice I would probably say to aim higher earlier. I don’t regret anything but I probably could have explored more opportunities earlier on in my college career if I had known more about the CS industry.

I do think that the hiring process is pretty fair. I feel like I know what is expected of me and just have to practice until I hit that bar. Recruiting is a really hard problem for companies to solve and I think that the process we have now is decent for companies and individuals looking for jobs.

Leave a comment

Design a site like this with WordPress.com
Get started