If you haven’t heard about Toptal before, it is a network of freelance software developers, software testers, designers, finance experts, product managers, and project managers.
It is similar to some other freelance networks such as Upwork, Fiverr, and Freelancer to name a few, on other hand, there are quite a few differences between Toptal and other freelance websites, two biggest being in my opinion, the vetting process and higher median hourly rate, more on this later.
As I have heard and read more about positive than negative experiences with Toptal, I’ve decided to give it a shot and try to join the network, but before I did I wanted to know more about the whole process and how to better prepare for all of the upcoming interviews.
Unfortunately, most of the posts were on how to get to the Toptal network as a software engineer, but none or very little on how to prepare for interviews as a quality assurance engineer, that’s why I decided to share my experience about the whole process and hopefully make it a bit easier for you to prepare for it.
My background: Software test engineer with 6 years of experience in telecommunications, betting, and the fintech industry. During these years I have worked on testing Web, Android, and iOS applications as well as BE services on different test levels and with different test types and techniques.
More about me on Linkedin: https://www.linkedin.com/in/mateajdukovic/
The Toptal Screening/Vetting Process
In order to join the Toptal network, you need to successfully complete 5 steps of the screening process, which according to the Toptal website should take 2–5 weeks (for me it took 6 weeks), but this will mostly depend on your availability as you can choose when you want to complete each step. Official info about this can be found here.
Step 1. Language and Personality
“The first step of the screening process is a comprehensive English language and communication interview evaluation. We also assess personality traits, looking for candidates who are passionate and fully engaged in their work.”
I have applied to Toptal on April 16, 2020, and less than an hour after I have received an invitation for the initial interview, in the email there was a time, date, and link to the BlueJeans meeting which was scheduled for April 20.
This meeting was pretty straightforward, the interviewer asked me about my CV and projects I was working on before and to tell them a bit about myself and also which hourly rate I expect. An hourly rate can be changed once you get accepted to the network, but you can also ask the interviewer for guidance on it, it will depend on your experience and your region. All interviews are in English, but you don’t need to be perfect at it, you just need to be able to lead a normal conversation. This was the easiest step of the process.
Step 2. In-depth Skill Review
“We also test each applicant’s technical knowledge and problem-solving ability through various assessments. Every member of the Toptal network is an expert in their domain, and we typically only advance candidates with exceptional results in this phase.”
After the initial interview was finished, I received a link to the Hackerrank online test by email. The test was a mix of coding challenges as well as theoretical and practical questions about software testing.
Before you start this test, read instructions carefully, it gives you an overview of how many questions are about coding and how many about QA, and how much time you will have.
Also, you can try a sample test to get familiar with the platform before starting the real test.
I took this exam on April 23.
This was the hardest part of the process for me as you have limited time and you don’t know what coding and QA questions will be about. If you pass this step I think you have really good chances of getting in.
Note: You are free to use any programming language to solve coding challenges.
Step 3. Live Screening
“Each candidate is interviewed by Toptal screeners who are experts in their functional domain. Our screeners provide specific live exercises, looking for problem-solving ability, depth of experience, communication ability, and creativity.”
The live screening was scheduled for May 08, and questions in this interview were a lot easier than the ones from step 2., the difference here is that person that is doing the interview sees every step of your coding/testing process, but if you have any experience with live coding from past interviews, etc. then this fact shouldn’t be a problem. I had 2 timed tasks (10–15 minutes) each and they weren’t difficult, just be sure to have your testing environment ready before the interview.
Step 4. Test Projects
“Each candidate is assigned a test project to evaluate whether they can “walk the walk.” Test projects take 1–3 weeks are comprehensive and provide real-world scenarios for candidates to demonstrate their competence, thoroughness, professionalism, and integrity.”
This step was the longest to complete by far, as it took me 2 weeks to complete the project, I was working on it for around 6 hours each day. There were 3 projects actually, I needed to write automated tests for the front-end application, back-end application, and also do performance testing for the applications of my choosing.
You will get detailed instructions on what is expected from you, but you can also ask the person who is in charge of reviewing your project if you have any doubts about it.
I finally completed the project on May 22 and after that I had a meeting where I explained step by step how it all works and why I made certain decisions.
Everything went well and I have finally received the “Welcome to Toptal” email! :)
Step 5. Continued Excellence
“Members of the Toptal network maintain a track record of excellence while working with clients. As a quality-first company, our focus is on the top for talent and the top for clients, and this principle permeates through to every engagement and every delivered project.”
So far I have worked on one project only, so I do not have much experience with this step, but I think you will be fine if you do all the things on time that were agreed before the project started, and if you are transparent about how many hours you can devote to a project, etc.
How I prepared for Toptal interviews
I quit my job at the beginning of 2020, found another job but that fell through in the end due to coronavirus, so from March 2020 I was without a job and had a lot of time on my hands, but it was great as I used that time to learn more about software testing, practicing programming with Python on various platforms, learning about databases, going over ISTQB questions again, etc.
I think this has all helped me to get into Toptal, I had almost 2 full months to prepare for it.
Preparation for technical screening
I took “Problem Solving” and “Interview Preparation Kit’’ on the Hackkerank platform, they have some really good challenges which are fun and help you to learn more about algorithms and how to solve problems. In my opinion, it is enough to go through easy ones, no need to practice hard ones as you are applying for Quality Assurance and not a Software Engineer role.
I have completed 30 or so challenges there, this is my profile on Hakerrank https://www.hackerrank.com/mate_ajdukovic
Next, I completed all free Quality assurance interview questions on TestDome, “Easy” and “Hard” https://www.testdome.com/d/quality-assurance-interview-questions/83 and Python questions marked with “Easy” https://www.testdome.com/d/python-interview-questions/9 on the same site.
After that I have read “ISTQB Foundation Level Syllabus”, I’ve already passed the ISTQB exam a couple of years back but I wanted to refresh my knowledge, I have this book printed, but if you don’t have it you can find a link to it on this page https://www.istqb.org/downloads/category/2-foundation-level-documents.html
During and after reading a book I have took a couple of ISTQB sample exam questions, you can find these on the same link above, but also here https://www.toolsqa.com/istqb-exam-questions/ and here https://www.softwaretestinghelp.com/istqb-testing-certification-sample-question-papers-with-answers/.
I can’t emphasize enough how important it is to go through sample exam questions, you will gain confidence and also see where you lack knowledge so that you can improve it before taking the Toptal exam.
I have also watched this video to learn more about MySQL databases, it is long but, but it is really really good, it is 4+ hours of pure SQL https://www.youtube.com/watch?v=HXV3zeQKqGY
I have created a database and a few tables to test my knowledge of SQL after I’ve watched the video.
If you go through all the steps I have mentioned and you have a few years of experience, you have high chances of clearing technical screening.
Preparation for live screening
As I have already prepared for software testing questions for the technical interview, I didn’t need to do much for it here, I have just skimmed the ISTQB book again, but I have spent some time before this interview practicing FE and BE test automation, for example testing simple website and mobile app for FE with Selenium and Appium, and sending simple HTTP requests and asserting responses for BE. This has prepared me enough to pass this step.
Preparation for the test project
For the project itself, requirements were very detailed and this project should be handled as if it was a real client, so you need to communicate if you do not understand something, don’t make any assumptions if something is not clear.
In order to complete the project, I went through requirements and started working on each of them, how fast you will finish this project mostly depends on how much experience you have with front-end and back-end test automation, as well as performance testing.
You will get a link to your repository on Gitlab and you need to push all your changes there.
I’ve used resources like Google, StackOverflow, Youtube, etc. basically anything you use in your normal day-to-day work to get things done.
After 2 weeks I have completed my project and I had a final interview where I explained how the project works and why I did things a certain way.
Welcome to the Toptal network
After you have joined Toptal, you will need to set up your profile where you will add relevant experience based on tools and projects you have worked on, similar to setting up a profile on Linkedin, the only difference here is that there are some specific rules on how to set up your profile, but you will get help on this after you have completed test project interview.
Projects on Toptal
You are all set up and you can start applying to different projects based on your availability, whether hourly, part-time or full time, you will also get contacted frequently by Toptal recruiters if your skills are matching project needs. From what I have seen so far new projects are added daily or every few days.
My first Toptal project
Due to the signed NDA, I can not talk about project specifics, but it has been a really positive experience. The project was interesting and communication with the project owner and the rest of the team was great. Before the project started I’ve communicated how many hours per week I would be able to work and this was respected, also billing hours and payment were smooth.
Based on my experience so far I am really pleased that I’ve joined Toptal, I think there is something for everyone, as you can work full time, part-time or hourly and on a variety of projects and in different time zones.
Also, there are always events organized either online or offline, so you can meet with Toptalers from your city/country or other parts of the world.
If you decide to apply, please consider using my referral link when applying to Toptal, and I hope this article helps you with your application. :)