After working in Silicon Valley, and with tech students and alumni for the past seven years, one common thing really stood out about individuals that were best prepared for interviews: the dedication to practicing algorithms.
Many of the individuals I have coached over my career have asked how to gain the competitive advantage during the job search process. One of the most important tips I share is for individuals to practice algorithms daily. Software engineering and programming interviews often include whiteboard algorithms questions. Stories from people who have gone through the interview process at some of the top tech companies in the world explain in detail how algorithms are used during the process. And my recruiter contacts have shared that when they interview candidates for programming jobs, they are trying to quickly find out how adept candidates are at solving complex problems. Algorithm and data-set exercises mimic real life; complex problems present themselves in everyday work as a programmer. Whiteboarding exercises during program interviews offer insight into the candidate’s problem solving skills, ability to keep track of details, and communication skills.
Keeping Your Programming Skills Sharp
I teach job seekers that practice makes perfect. During the bootcamp, students learn three stacks of technology and practice their skills via projects, exams, and project pitch days. But it is important to keep learning after the 14 weeks of the bootcamp. Job seekers should strive to increase their baseline of knowledge, and there are various resources available to practice algorithms. It is highly encouraged that you code on a whiteboard, paper, and computer. Practicing algorithms will help you start to recognize common questions and patterns, as well as make you very familiar with algorithmic problem solving.
Long Term Career Goals
If an individual wants to grow and solve projects for a team then they should be proficient in algorithms. As a developer, your everyday work is to solve problems and algorithms solve problems very efficiently. Practicing algorithms will increase you skill and your visibility at work.