By Jason Ioffe
The field of Information Technology (IT) covers a plethora of career paths which support the backbone of nearly any modern industry – from medicine, to finance, to video games and countless more. Database administrators ensure the security of a company’s most precious data, and cloud architects guarantee stable access to that data, anytime and anywhere, through internet-based distributed computing networks. Software engineers and web developers work together to create powerful, intuitive tools for an organization’s customers and internal use. All the while, IT consultants find themselves constantly seeking ways to improve the technological foundation of a firm. Finding a steady career in any of these roles is contingent upon mastery of concepts in computer architecture, and this mastery should be made perfectly clear to an employer during a job interview.
In my experience, most prospective employees are turned away from positions in IT due to poor performance during technical interviews – especially software and web developers. Speaking as a developer, I can tell you what traffic lights, whiteboards, and word puzzles have in common: they can all come up during your interview. While companies will not usually expect you to write efficient code on the spot, they will still evaluate the way that you think and organize the world around you. It will not be uncommon to hear thought experiments such as “How many traffic lights are in Manhattan?” or “How many cows are from Canada?” If your instinct is to immediately search the internet to provide an accurate answer, then you will disappoint your recruiter. Questions like these, though seemingly useless or bizarre, exist to test your analytical approach. For instance, let’s take “How many women in the United States earn over $150,000 per year?” An efficient approach would be to first limit the group to the amount of people who earn over $150,000 per year, which would be a very small subset of the US population, and then extract the women from the result to derive your answer. Being able to organize available data to reach solutions with minimal strain will get you far in the world of IT.
Sometimes, time sensitive tasks may require you to work quickly. IT interviewers commonly ask prospective employees to draft solutions on a whiteboard. These may range from visualizing the organization of data flow within the firm to actually solving small programming puzzles. If you are a programmer, you will likely have to design simple algorithms or data containers. Do not be afraid to adopt a naïve solution in these time-sensitive circumstances – it is better to be timely and right than end the interview without a solution. For instance, you may be asked to find the shortest distance between two given words in a text file. An acceptable approach would be to test every word against every other word. This would be considered “N Squared” complexity, and you should be familiar with “Big O Notation” to describe the complexity of computing algorithms.
Even if your dream firm uses database architectures or programming languages you haven’t mastered yet, be optimistic and show that you can adapt. After all, the concepts are the same. IT is not so much about memorizing exact syntax, but rather being able to analyze and organize the world around you.