FullStack Labs

Please Upgrade Your Browser.

Unfortunately, Internet Explorer is an outdated browser and we do not currently support it. To have the best browsing experience, please upgrade to Microsoft Edge, Google Chrome or Safari.

Why We Don't Require Take Home Coding Challenges When Hiring

Written by 
David Jackson
Why We Don't Require Take Home Coding Challenges When Hiring
blog post background
Outsourcing Delivery Models
Nearshore Software Development Basics: Development Teams in Latin America
Nearshore Plus: An Innovative Approach to Nearshore Software Development

Why Fullstack Labs Doesn't Require Take-Home Coding Challenges When Hiring Software Developers

Common practice for software companies is to have applicants complete take-home coding challenges. In the past, FullStack Labs used to require take-home coding challenges because it gave us a way to test the skills of applicants without having to invest a lot of company time.

Over the years, though, we started to notice that take-home challenges didn't work as well as we thought. In fact, we found that they often made it harder to hire the most talented programmers, who generally didn’t have the time or the desire to complete the coding challenge.

Since so many companies still use take-home challenges, we want to address the issue, explain why FullStack Labs stopped using them, and describe the alternative process that we now use to find the best developers for our company.

Coding Challenges Take Too Much Time

The vast majority of applicants that apply to FullStack Labs are developers who already have jobs. They're looking to FullStack Labs to find new opportunities that their current employers aren't providing them.

A coding challenge can take anywhere from several hours to several days for applicants to complete. Investing this much time into a coding challenge while holding down a full time job is challenging. Because of this, many applicants start coding challenges and never complete them, as they run out of free time, or otherwise aren’t able to complete them in the requested time frame.

Applicants Often Have to Finish Multiple Challenges at Once

To make matters worse, developers often interview with several companies at the same time, each of whom require their own coding challenge. Taken together, these coding challenges easily turn into a full time job for developers who already have full time jobs.

I hadn't thought about how intrusive take-home coding challenges are until I interviewed a senior software developer with 20 years of experience who was currently working on three coding challenges from other companies he’d applied to.

I later learned that one of the companies that had assigned him a coding challenge, filled the open position without telling him. He wasted hours of his personal time finishing a coding challenge for a job that had already been filled.

Not surprisingly, many developers have stopped accepting take-home coding challenges. I don't blame them. As an industry, we need to respect professional developer’s time more than we do.

FullStack Lab's Alternative to Take-Home Coding Challenges

Even though FullStack Labs decided to stop issuing take-home challenges, we still needed a way to test the skills of our applicants. So we've created the following three step interview process that allows us to properly assess a candidate's technical and professional abilities, while also respecting their time.

Interview #1 - 60 to 75 minute preliminary interview

  • The first step in our interview process is a 60 to 75 minute zoom video conference interview with a member of our Operations Branch. Candidates are asked to have their cameras turned on during this interview, to allow face-to-face communication.
  • The interview begins by having candidates complete a 30 to 45 minute online technical exam. The exam consists of 10 to 20 multiple choice and short answer questions. All questions are technical in nature.
  • We have different exams tailored to different types of technologies. For instance: React.js, Angular.js, Node.js, Ruby on Rails, React Native, Python, Vuejs, etc.
  • The questions on the exam range from easy to hard, and are all tailored to the specific technology type of the exam.
  • Candidates are allowed to use Google during the exam to look up information if needed.
  • Once completed, the candidate meets with a member of our Operations Branch for a 30 minute verbal interview, focused on general, non-technical matters.
  • Candidates that do well in Interview #1 move forward to Interview #2. Candidates who we determine aren’t a good match don’t move forward to interview #2.
  • In either case, we email the candidate to let them know if they are, or are not, moving forward.

Interview #2 - 90 minute technical interview

  • Interview #2 consists of a 90 minute technical interview with FullStack Lab's CTO or CIO.
  • Part I: The first 30 minutes is a verbal interview focusing on the candidates technical background, and also providing them with more information on FullStack Lab and the position they have applied for.
  • Part II: The second part of the interview consists of a 60 minute pair-programming session.
  • During the pair-programming challenge a candidate clones an existing client app and contributes a new feature. The candidate is expected to demonstrate proficiency with the requested technology.

Interview #3 - Final Interview - 30 minutes

  • Interview #3 consists of a 30 minute final interview with our CEO.
  • We prefer to conduct the interview in-person when possible, or via a Zoom video conference if an in-person meeting isn’t feasible.
  • The interview is conversational - no skill assessment tests are given at this stage.


  • After the third interview, FullStack Lab's hiring team reviews the feedback and findings from the three previous interviews and makes a final decision.


With this new approach, we are able to assess an applicant's skills and qualifications within a total combined time investment of about three hours. We feel that three hours is a reasonable amount of time to ask candidates to invest in our hiring process. This streamlined approach not only saves time, but also allows us to hire candidates more quickly, which lowers the chances of us losing them to another company.

David Jackson
Written by
David Jackson
David Jackson

As the CEO of FullStack Labs, my primary responsibility is for the management of the company. I manage and directly contribute to many different departments within the company, including recruiting and hiring, marketing and sales, bookkeeping and accounting, tax and legal, and general operations. I take a hands on approach to management, meaning I prefer to roll up my sleeves and work directly on projects, instead of managing through meetings, policy, and bureaucracy. Prior to FullStack Labs, I was Vice President of Sales and Partner at CAE, where we built an industry-leading marketplace for buying and selling used capital equipment. I graduated Summa Cum Laude from the California State University Sacramento with a degree in Business Administration.

FullStack Labs Icon

Let's Talk!

We’d love to learn more about your project. Contact us below for a free consultation with our CEO.
Projects start at $50,000.

company name
Type of project
Reason for contact
How did you hear about us?
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.