Having good problem solving skills has been identified as one of the most important attributes to get hired at FAANG and other Tier-1 companies. Top tech firms are constantly on the lookout for good problem solvers who can work to develop state-of-the-art products and innovations.
If you’re an engineer who wishes to get hired by a FAANG company, it is crucial to develop your problem solving skills not just to nail their technical interviews, but also be a valuable resource in their journey.
How are these skills defined, you may ask? Well, your ability to recognize patterns and apply diverse concepts in solving questions and offering solutions to complex problems are what define your problem-solving skills.
As for cracking coding interviews at these top tech firms, possessing sound problem solving skills will give you the ability to solve questions that you haven’t quite encountered before. To develop your problem solving skills isn’t a straightforward path; it is replete with constantly experimenting and solving a wide range of problems to identify and determine largely inherent patterns.
When did companies start testing for problem solving skills?
The evolution of testing for problem solving came about in the 1950s when William Shockley, a towering inventor credited with creating the semiconductor device, was flummoxed with how he could get geniuses on board to work for him. He knew very well that the multitude of products that would spring up from the semiconductor invention would be new and unique, and persons merely with the knowledge of coding or computers wouldn’t be equipped to assist with complex product design. He identified that he’d require problem solvers who had distinct capabilities to find solutions to problems they weren’t exposed to in the past.
He started to conduct interviews with a new flavor - by posing a bunch of puzzles to candidates, to understand if they demonstrated the ability to think critically. Shockley was wildly successful in hiring supreme talent, and went on to successfully hire a few genius engineers who went on to start their own billion-dollar technology companies including Intel and AMD.
It wasn’t until later that Microsoft found merit in hiring problem solvers, adopted the approach, and displayed phenomenal results in hiring the best talent from around the world. Then came Google, and Facebook, both of which started testing for problem solving skills having witnessed the efficacy in the approach.
In fact, they took it up a notch further - Facebook, in particular, started employing time-tested coding interviews that tested for problem solving skills in a limited-time environment. The pressure test resulted in several experienced programmers being eliminated, and only good problem solvers came out on top. Yes, they did follow in the footsteps of Microsoft and Apple, but why not if it brought phenomenal results? As such, a sweeping reason behind why these companies are knocking it out of the park today is the sea of engineering talent that they swim in. It goes without saying that it takes great engineers to build great products, and these companies are always on the lookout for great engineers.
Over time, looking at the wild success in hiring great talent, a fair number of popular startups joined the bandwagon too. And before we knew it, problem solving became perhaps the most essential skill to get hired at the best companies.
In this article, we look to understand why these companies repeatedly test for problem-solving skills at their interviews. Is it because they want to make the process arduous and only select the best candidates? Or does it save them a load of time and resources by standardizing the hiring process? Let’s find out.
Reasons why FAANG companies test for problem solving skills in their interviews
To identify analytical and critical thinking abilities in candidates:
Analytical thinking: A key area that problem-solving tests for is a candidate’s analytical ability. Analytical skills are crucial to solve complex data problems in the current age. A candidate with good analytical skills can understand and classify complex data/information, and use it effectively to form problem solutions.
Critical thinking: Critical thinking is important in the world of computing. If you have to develop your coding fluency, critical thinking is an essential skill that contributes to your coding fluency and your ability to code up complex algorithms.
Problem solving is a convenient and proven way to hire genius engineers:
With the scale of products that these top tech companies are dealing with, it comes as no surprise that they have genius programmers in their ranks. How do you think they got expert coders on board? Yes, you guessed right - by testing for problem solving. Over time,these companies have successfully hired genius engineers by putting candidates through problem-solving tests in their interviews. When you hire great engineers, you’re nearly certain to produce great results, and that’s exactly what these companies have been doing all these years.
To Standardize their hiring process:
Large companies like Google or Facebook that have several engineers working on innovative products have found the need to standardize their hiring process. Think of it - if it weren’t for a standardized and well thought-out hiring process, it would’ve been far from possible to hire phenomenal engineering talent. So as much as it is convenient to onboard great talent, it makes it easier for companies to hire at scale.
Moreover, as a hiring manager you can't trust the opinion of the entire interview panel. Getting the right candidates to join is a real problem that these big companies face, and without a standardized process, the bar in gauging candidates often falls off balance. Testing for problem solving has helped alleviate this problem at scale, allowing only the best engineers to crack these interviews.
Taking from other successful companies who’ve employed the approach:
As we mentioned earlier, besides big tech firms that have adopted and streamlined their hiring processes around problem solving, a long list of startups have also identified the importance of testing for the attribute in the last decade or so. Many popular startups have structured their technical interviews to test candidates on programming concepts such as data structures and algorithms that require sound problem solving skills.
Problem solvers can easily switch teams and continue to deliver:
A rather subtle thing that puts problems overs ahead of their peers is the fact that they can easily switch teams and move to newer, more challenging projects, where pastures are much greener in the tech world. … engineers are always on the lookout for innovative projects to work on, and it comes as no surprise that they get enlisted for new product-design projects based on their problem solving skills.
Innovative product design requires problem solvers:
Product-design is often viewed as a different ballgame that doesn’t let even experienced engineers in, so long as they don’t have a proven problem-solving track record. Companies like Google, Apple and Netflix, among other big firms, are constantly endeavoring to upscale the scope of their product offerings, and require engineers who can solve tough problems to find
You can bank on problem solvers to find solutions to new and complex problems:
Are often grappled with new challenges from time to time. Whether it’s a challenge with scaling up an existing product or service, or creating a product from scratch, it takes a good engineer to achieve anticipated results. Problem solvers, with their unique ability to understand problems from a unique perspective lens and apply sound logic in decision-making can be entrusted with providing solutions to complex problems that are often encountered along the path from design to market. Problem solvers, even today, are tasked with working on cutting-edge technologies and products that are constantly changing the way consumers interact with the world.
What does it take to be a good problem solver?
In order to be an effective problem solver, here’s what you must seek to achieve:
Mental discipline: Solving problems can often be viewed as a long, wild-goose chase that involves considerable experimentation. As such, you must work towards increasing your time-span of concentration and embrace failure while you find the best possible route to take while solving a problem. This can only be a result of long and patient hours of coding practice.
Emotional Attitude: One's emotional attitude is crucial to becoming a good problem solver. Let's cite a quick example in this regard by referencing the fundamental differences between mountaineering and working out a gym. Mountaineering and working out a gym lead to different results. Working out a gym regularly cannot enable you to start scaling ambitious mountain peaks immediately - you’ll have to scale easier peaks and figure out how to conserve and expend energy before taking on the more daunting ones. An almost similar logic applies to problem solving - you can only solve the most complex problems through practice and effort.
Learning the craft: The craft of problem solving can be learnt by following these steps:
- By becoming thorough with computing fundamentals.
- By learning how others approach solving specific problems.
- By engaging regularly with peers and instructors to advance your coding capabilities
Note that problem solving is a journey. You’ll often feel clueless at the beginning. But by keeping at it, you can grasp subtle techniques in identifying patterns and classifying problems based on inherent patterns to solve them seamlessly.
Good problem-solving skills can help you overcome interview anxiety
Interview anxiety is a common phenomenon that can throw even experienced engineers off guard. It often comes in the way of optimal interview performance, resulting in undesirable and disappointing outcomes. By becoming an effective problem solver, however, you can overcome interview anxiety like a boss, allowing yourself to perform to your best ability at the interview.
Dealing with and overcoming interview anxiety is a process that involves dedicated effort over months. A good way to beat the menace is to practice as many coding problems as possible not by mugging them, but by categorising them into patterns so you associate problems with patterns and not as individual problems. Practicing a bunch of mock interviews with domain experts can also do wonders in helping you overcome interview anxiety.
Get started right away with your technical interview prep! Sign up for our Webinar today!