A few years ago, I wrote an article on how I got into the most exclusive remote work platforms and it got a fair amount of attention. Since then, I've answered the same question all over the years: "How can I get into Toptal?". I'll try my best to give you some tips on what to expect and how to prepare.
What's Toptal?
For starters, Toptal is a remote work marketplace which claims to accept only 3% of the applicants. As such, the work quality and the rates are much, much higher than other platforms like Upwork, Freelancer, Freeeup, you name it. There are some other top platforms like CrossOver, BairesDev, Number8, Pilot or Turing which also claim to hire the best of the best. After passing on most of these (not bragging, just helping), I can honestly say the toughest interview has been Toptal.
Apply to Toptal with my referral code and we both get 500USD once you land your first job: https://www.toptal.com/#join-only-great-devs
I'm sold. How can I get in, then?
Clearing the screening process is exhaustive. It takes a lot of your time and energy but, believe me, it's totally worth it. Apart from writing a killer resume, I'm going to shoot some other recommendations if you're willing to apply.
1. Do your research
Toptal hires for roles in Software Engineering, Product and Project Management, Finance, and Design. My first recommendation is to look online for interview stories on these roles. See what others have gone through while applying to Toptal. There are hundreds of testimonials on the technical interview and the test project for all of these roles. If you can't find any resource for your role, then try looking for the same in any other FAANG company. The process will likely be similar.
2. Communication is king
As of April 2020, I've referred short of 130 people into the platform and only 3 of them have passed. I'd say 75% of those who didn't clear the process were filtered out in the very first interview. They call it the "language and personality" interview. This is nothing else than just a screening phase to see how well you communicate in English. I've seen many of these interviews myself and the bar is pretty high.
You definitely don't need to be native-fluent or have crystal clear pronunciation. The trick is to communicate as clearly as possible and be able to effortlessly talk about yourself and your experience. Do not sound rushed. You must practice your English speaking skills regularly before taking your shot at Toptal, or in general at any of these top remote work companies. If you're not fluent in English, but you're dead serious about improving, you'd be spending by now 3 hours a day (from 5-8 am) studying, practicing, speaking with yourself out loud, repeating everything you hear in movies, etc. This is definitely a very restrictive filter in the process.
One last thing: put up a smile, look friendly (even if you are not), and set up a good space for the interview. It's been scientifically proven we humans favor friendly people over serious, rude looking folks, regardless of the role. It's also fine if you disagree with this notion, take your chances.
3. Getting technical
This section is mainly aimed at Software Developers. To put it down in simple words, you need to be good at algorithms. Sure you don't practice that in the job, sure you don't need it to create a React app or a Go backend, and sure you can be a great engineer without those skills. All of them valid points I also agree with. But, sadly, acing an algorithm interview is a very common requirement to get into these platforms (or any other big tech company). You either suck it up and accept it or give up and move on. It's like being good at sales, design, or cooking - you can get through life without those skills, sure, but wouldn't you be better if you take a stab at them?
Now, as with everything, you just need a lot of practice. Don't compare yourself with chess masters or mathematicians that can solve any coding problem in 10 seconds. Good for them, but that's probably not you, or me. I've put an insane amount of hours studying for technical interviews (Toptal, Amazon, Crossover). The recipe is simple: get yourself a copy of Cracking the coding interview, sign up for LeetCode and Hackerrank, and commit to putting 2 hours a day, for 2 months, solving algorithms.
I explain this topic in-depth in my latest FREE guide: Cracking the Toptal Interview. Sign up for the waitlist today.
Now, let me be more specific. For Toptal you won't probably need to master graphs, linked lists or trees. I'd recommend you to focus on solving between 70 and 150 problems tagged as easy in Hackerrank and Leetcode. This will involve working on problems with strings, sorting, search, and, why not, a bit of recursion.
As a fun exercise, try solving Repeated String and Minimum Distances in Hackerrank. That's somewhat similar to what you'll find in the interviews. Don't apply to Toptal if you can't still solve these 2 problems - it'd be a missed shot for sure. Don't be discouraged, though, it's all about practice, practice, practice.
4. Time to show off your true skills
Let me be honest. If you clear the 2 previous algorithm filters, you pretty much passed already. The last step in the process is to build a project with the skills you need for the role. You'll have 2 weeks to solve a problem you'd normally find in your daily job.
For designers you'll probably be asked to deliver UI/UX sketches for an application; For web developers you're likely to submit a full-stack project with authentication, decently looking frontend UI, unit tests, good DB management; For Machine Learning be prepared to hand off, for instance, an end-to-end supervised learning project with data analysis, model implementation and perhaps deployment; and, for Product Management, I won't be surprised if you're asked to define the roadmap for a new product, evaluate pros and cons, design wireframes or even do some mock team planning.
This is the time to show off the experience you've built over the years. You'll need to demonstrate your expertise in the final interview as they will ask you a ton of things about your project. Most of the companies at Toptal are willing to pay very well for experts, but you need to believe and act as if you're one of them.
Why only Toptal?
Let me tell you what, I used this same preparation to interview and get a job offer from Amazon. At some point, you've just put such a huge amount of work and study that you don't need any Toptal to revalidate your learning, you're 3% already. You have what you need to apply to any other top remote marketplace. It will increase your chance to work remotely for US companies with salaries you can only dream of now. I'll suggest some platforms below but I don't know them all. Ping me on Twitter and let me know if you know more:
Cracking the Toptal Interview
I think a blog post is not enough to teach everything I know. That's why I'm writing a FREE guide with an in-depth review of the topics I covered here: algorithm questions, exercises for test projects, tips for the technical screening, and much more. Sign up for the waitlist now - I can tell you all the blood and sweat will be worth it at the end.
Would you recommend any other prep material? Do you have experience interviewing in these platforms? Shoot me a comment below and follow me on Twitter if you like this type of content.
Top comments (14)
I was curious and took a look at some of the developers available for hire in my country on Toptal and some of them are actually working full-time at companies, and I suppose must be doing this part-time on the side.
Do you know how well that would work in practice? Do companies allow you to only work nights and weekends?
Yeah, right. It all depends on the type of contract you want.
You can set your availability to full time, part-time or hourly. I, for instance, have had all kinds of engagements. Right now I'm working an hourly job, needed to get some rest, but the last 2 years I worked full time on one of them.
You can definitely find companies that allow you to work only at nights or on weekends.
Nice! I am slightly intrigued, maybe I will give the interview a go some day.
Absolutely! Good luck :D
I just gave the codility test and 5 minutes later I recieved an email from a technical screener with initial lines
"The next step in the process is to schedule some time to conduct a technical interview and validate your results" .
Did i just clear the codility test ? or the line "validate your result" means that it will be declared in the next interview ?
It means you cleared the first step, you got it! Now you'll go onto the next phase which is the live screening where they will ask you about the algorithms you implemented in the codility test and will ask you 2 more algorithms. Good luck!
Thanks Carlos, I really apprecciate the advice you give us. Let me also add codewars.com, I think that's one of the best sites to improve your knowledge of different languages. And I recommend Python as a language to do the coding tests, it's probably the best given its concise sintax (less time typing, more time to think).
A good roadmap would be something like:
I also reccommend Project Euler if you want to improve with math problems, that sometimes you get.
Thanks for the recommendation. I'll definitely start recommending codewars for this purpose.
+1 for Python and Project Euler too!
Hi Carlos,
Nice article, thanks!
I was wondering about your thoughts on codility lessons. How do the 'Painless' and 'Respectable' lessons compare to the Hackerrank's 'easy' ones you mention?
Are the Toptal tests substantially different from these specific lessons?
What are the benefits of working with Toptal?
I'd summarize them as:
Amazing article! Very informative. :D
Thanks!
Glad you found it helpful!
I have my technical interview for Toptal on Wednesday. Hope I ace it :D