The Hiring System

Deconstructing the system that fills millions of jobs each year.

Scroll down...




The first step of the Viking Method is to understand the system that you're about to become a part of. Some aspects of the hiring process are probably familiar to you but others you might not have thought much about.

We'll cover:

  1. How the process looks from your perspective
  2. How the process looks from their perspective
  3. The Hiring Funnel
  4. Hacking the system

With an understanding of these things, you can leverage the strengths of your background and avoid the pitfalls so many people in your position stumble into.

Getting Hired from Your Perspective

No matter what particular job you're looking for, the process is likely to look approximately the same:

  1. Research + Preparation: You need to prepare yourself by cleaning up your web presence, preparing your resume, and identifying an opportunity.
  2. Resume Submission / Reach-Out: Once you've identified a job to apply for... apply! You might drop your resume on their site or email an individual at the company directly.
  3. Phone Screen: If the company deems you worthy of spending a bit of time on, they will set up a virtual or telephone "screen". This is usually a half-hour interview to make sure there is alignment between the two of you on the high level parameters and values of the role. You'll probably be asked "soft" questions about your past and your expectations.
  4. Take-Home technical Challenge: For technical positions, it is common to require applicants to demonstrate their proficiency by building a technical application. This is often a 24-hour or 1-week challenge that involves building an app to specifications. This step may occur at any stage in the process, though it is most common immediately before or after the phone screen.
  5. Technical Interview (on-site): If you do well on the technical challenge, you will likely be invited to the company's headquarters to interview with your prospective team. This is typically a multi-interview session where they will ask you deeply technical questions while also assessing your fit in their team. It may last for a half or full day.
  6. Fit Interviews: Occasionally, you might need to meet again with company leaders who will have to sign off on your offer (eg. the CTO) in order to assess your fit with the company.
  7. Job Offer: If you have proven sufficiently impressive, the company will extend an offer to join their team. You typically have anywhere from a few days to a week to decide whether you will join.
  8. Offer Negotiation: If you follow our method, you will always negotiate the offer because there is always room to do so.
  9. Offer Acceptance: Once everything is up to your expectations, you will sign your offer paperwork and prepare for your start date.

We will discuss each of these steps in far greater depth in future lessons, but it's good to have a roadmap in your head until then.

Hiring from the Company's Perspective

While knowing what the path looks like from your perspective is instructive, understanding how this process looks from the perspective of the party who is trying to hire you is ultimately far more valuable. This is the information that you can use to your advantage.

Understanding where companies are coming from will give you a number of clear advantages:

  1. You will be able to craft a better personal narrative
  2. You will be able to sell yourself better in interviews
  3. You will begin to see areas of the process where you can hack it

We'll dig into each of these later, but first let's see how the hiring process looks like from the company's perspective.

  1. The Position is Needed: The whole reason there is a job posting is because someone at the company is overworked and needs help or a team is trying to take on an opportunity that they simply cannot handle with the resources currently available.
  2. The Position is Defined: To make a hire, the team needs to articulate exactly what they're looking for. This step is often skipped and you'll see the problems with that downstream when you interview for a role that feels very poorly defined and each team member has a different idea of what you'll be doing.
  3. Budget is Allocated: The team leader (hiring manager) goes to whoever controls the budget (often the CTO) and petitions to make the hire, justifying it either by talking about how much money the new person can make the company by building product or how much lower the risk of catastrophic failure will be by adding a new person.
  4. The Team Searches Internally: Once the hire is authorized, everybody on the team is asked if they know any good candidates. They ask their friends, post on Facebook, or otherwise reach out however they can to find great people. This is the most important step for you to think about later.
  5. The Position is Posted: If the team can't find a suitable candidate internally, they sigh deeply and get in touch with their HR team to post the position externally. The HR person gets a vague list of requirements from the hiring manager and, without knowing most of the terms, turns it into a job description. The hiring manager says "sure, that looks good" while actually playing World of Warcraft on his monitor.
  6. Resumes are Filtered: The position is posted on the web and the torrent of thousands of resumes comes flowing in. Within minutes, the resumes are routed to the "save for later" folder. Someone junior on the engineering team or in the HR department is coerced in to "checking out the resumes" and starts on the Sisyphean task with dread. It becomes rapidly clear that 99.9% of people who have applied are wildly unqualified and the junior person resolves to spend as little time as humanly possible on each resume to avoid missing that evening's South Park episode. How does "electronics repair" mean 4 years of development experience on an agile team??? Somehow, a small handful of them are pulled out more or less at random and sent along for phone screening. Any new resumes after this point are generally just put into a generic "resumes" folder that may never get viewed.
  7. Phone Screens are Administered: The HR team lines up phone screens for the candidates who didn't seem too crazy or absurdly unqualified. Many of them prove to be incapable of communicating like a normal human being and many more actually don't have the hard technical experience the role requires. The HR team is gun shy because the engineers have yelled at them before for sending over candidates who "waste their time" so they are careful to select only those people who seem likely to meet the required social and technical bar.
  8. Technical Challenges are Reviewed: After technical challenges are sent out, the engineering team can do nothing but shake their heads. At least half of the challenges aren't even submitted and half of those that are haven't even completed the requirements for the problem. By some miracle, a small handful of them have managed to put together clear code that solves the problem and actually runs. They still wish that someone would do show the initiative to do more than just solve the problem and instead go above and beyond expectations.
  9. Technical Interviews are Administered: The HR team sets up a "super day" of interviews for the candidate to come into the office. This is a big investment since it means taking 5 or more hours of valuable dev time to screen a candidate. Members of the engineering team are harassed and corralled into actually showing up for their assigned time slots and none of them have bothered to read the resume because they'd rather be coding. They remember the challenge questions that stumped them in their previous interviews and prepare to fire away with them. Most candidates, despite progressing this far, actually can't really code and don't seem to have the curiosity and drive necessary to excel on the engineering team, as evidenced by their lack of knowledge of fundamentals and best practices.
  10. The Team Argues About Hires and Acquiesces: If the team is lucky, after many weeks of searching, one or two candidates meet the bar. One guy thought the candidate smelled a bit odd and another was offended that the candidate couldn't prove each of the SOLID principles. The team can't reach cohesion about how awesome a given candidate is and the leader is stuck weighing the needs of the position (they're losing potential revenue every day it's not filled) versus the cost of making a bad hire. But they've come this far and Candidate X is the best they've had and, more importantly, the team generally likes Candidate X. There just isn't any more time to seek perfection -- they need the butt in the seat as of yesterday.
  11. The Offer is Extended, Disorganization Reigns: The team leader calls the candidate to extend the offer and hopes the candidate accepts immediately. Pressure is applied to make sure the team doesn't have to suffer through another phase of the job search by looking for another candidate. The candidate negotiates and everyone grumbles but acknowledges that it's a huge pain to find another one so, after failing to respond to many emails and dragging out the process as long as possible in the hopes of finding another candidate in the meantime, they ultimately say yes and the candidate is officially accepted.

There are a number of key elements about this process which you should realize:

  1. It is fundamentally driven by humans making human decisions.
  2. These humans want you because you will make their lives easier.
  3. These humans are quite busy and generally hate parts of the process as much as you do.

Use this to your advantage! We will shortly go into more detail about what exact characteristics hiring managers are typically looking for, but the very fact that this is a human-driven process and not a pure meritocracy means you need to play that game too.

When you're submitting your resume to a company, think about the difference between dropping it on their website (into the generic "resumes" folder that no one wants to bother sifting through) and emailing it directly to someone who has seen your name pop up on their radar before.

When you're interviewing, think about how frustrating it must be for them to be confronted with a sea of mediocrity and empathize with them about it. Do what it takes to stand out!

We'll give you specific tips to handle these things shortly, but the important thing is that you understand how this system works behind the scenes so you can begin to hack it.

The Hiring Funnel

You now know the steps of the hiring process but let's build a model of the macro-level picture of how candidates actually progress through them.

The hiring process is a funnel. As a job-seeker, you are currently at the top and want to get to the bottom. At each step along the way, you'll need to get it right to make it to the next step. It's like a video game that ends with you getting paid.

Funnels are used all over the place in the business world, from sales to customer acquisition to learning management to site analytics. The basic idea is to segment the process into discrete steps where the transition between each step involves some sort of drop-off in numbers due to a friction point of some sort. If you're optimizing for the outcome (e.g. the sale, the signup, the knowledge or the visit), your goal is to:

  1. Maximize the number of units moving through the funnel.
  2. Reduce drop-offs between each section of the funnel.

Job-hunting is also a funnel. When viewed from the perspective of the hiring company, it looks something like this:

Hiring funnel

In this, you can see how a large number of applications results in a very low number of offers being extended. This should be intuitive, but we're looking at it because it determines how you should think about the hiring process. For now, we'll just use this model to help structure our approach, but we'll also look later at how you can short-circuit the funnel to optimize for success (which is shown in the comment on the image).

The funnel we'll look at involves all the steps of your hiring process, not just the interviews. Each step in the funnel has sub-steps, of course, but this is the high level approach:

VCS Hiring Funnel

You can see that it all starts with pulling together the available jobs and then working your way through qualifying them, applying to them, interviewing with them, and finally working with and accepting offers. The "Filter of Despair" is the point where you've submitted applications and are waiting to hear back about potential interviews. This represents the point where you go from being totally in control to waiting for third-parties (who often either take their sweet time or are completely radio silent).

Hacking the Funnel

As we said above, to succeed in a funnel-based process, you'll need to maximize your total throughput and reduce the drop-off between each stage of the funnel. At least, that's the "front door" approach.

How do you increase throughput? Apply to more places.

How do you reduce drop-off between stages? Make yourself a more attractive candidate at each step of the process.

Both of these should be intuitive and you shouldn't ignore them. You need to submit applications and be a good candidate if you want to succeed!


This is a system, and that feels awfully conventional. Coming from a non-traditional background, you are at a disadvantage in the earliest stages of the funnel anyway. Who is going to choose your resume over that of someone who spent 4 years in college nominally studying this stuff and getting a CS degree? Your conversion rate is not likely to be nearly as high as you'd like on the top end.

The question then becomes, How can we hack this funnel to take advantage of it in ways that other candidates are not?

The best way is actually to skip some steps entirely. We can do this by exploiting the key systemic characteristic that most people don't recognize -- that this is, as we've said, a human-driven process. Sure, you could keep throwing yourself at the front door and fighting your way through each step of the funnel. Or you could hack your way in the side door and skip the most ruthlessly time-wasting steps to get yourself right to the interviews.

How do you do this? By connecting 1-on-1 with real humans within the organization and getting them to help you reach the interview stages immediately.

That is the core of our human-based approach, which we'll cover in greater detail in upcoming lessons. This isn't a fuzzy call to "network" your way in, it is a specific strategy that comes with actionable and specific tactics for accomplishing our goals and getting you the interviews which will allow you to prove your worth on a level playing field versus candidates from traditional backgrounds.

Sign up to track your progress for free

There are ( ) additional resources for this lesson. Check them out!

  1. The Zen Payroll Development Workflow should give you a perspective on what life is like at an engineering organization.
  2. The Best Way to Hire Software Developers
  3. How to Hire Talent
  4. Joel Spolsky has a lengthy diatribe on hiring developers, which should give you an idea of the need and pain of hiring great engineers.
  5. Joel Spolsky's Guerrilla Guide to Interviewing 3.
  6. How I Built A Job-Application Machine

Sorry, comments aren't active just yet!

Next Lesson: What Companies Want