Ask HN: What do developers earn on toptal.com?
This site seems to be pitching itself as the replacement for odesk and elance- where you work with the "top %3 of developers" (who knows how they can make that claim) and they pay you well, because you're the "top %3".
Has anyone gone thru the process?
The fundamental issue of outsourcing is usually trading quality for low price... given their language towards the developers on the apply page, it seems like this is a sweatshop that doesn't pay well.
But my mind is open. Is it really worth doing? For someone who isn't junior?
(EG: I have several patents, and several decades of experience.)
96 comments
[ 4.3 ms ] story [ 219 ms ] threadThey asked me to do a fizz-buzz/filter test in a cut down web based IDE. I did the questions in a language appropriate to my trade - Mathematica.
Their entire filtering process is automatically scored. I got back a nice form letter saying I'd failed.
Executive summary: Words don't match actions. Nice website, but you're still a piece of meat.
Our job is to minimize false positives and false negatives. Almost all of us are engineers here. We all know you can't give an automated, standardized test to fully judge anything. The automated test is simply one of several steps, and it does provide helpful information.
Feel free to email me directly at breanden@toptal.com if you'd like more information.
Every part of your "interview process" suggests otherwise.
Being spied on? I don't know what that is referring to.
The circumvention clause is real, though we've never even come close to needing to enforce it.
Re refunding all fees: We've never even come close to needing to enforce this, but if someone really botched an engagement, this is a possibility. However, part of the benefit of joining Toptal is that you have the entire network and core team going to bat for you. Good people wouldn't stay long if we were taking all their compensation from them.
For a company of TopTal's size, I guess they could (should) give their C*Os a training on PR, or at least a damage control manual!
http://yuriybabenko.com/blog/my-experience-joining-toptal
I applied to toptal (never did dev work through them, but I would) and after I was accepted, was asked to name my rate - at the time, it was US$60/hr and they said I'd likely find work at that (this is correct, by the way - I did find work at that through them but decided not to take it for unrelated reasons).
In regards to the other comment where bbeneschott used that language, the person was also flat-out wrong. When I applied, step one was a phone call with a person, step two was an automated quiz, step three was a live-coding session over skype with an engineer, step four was an app to build at home, and step five was another skype session with an engineer to review that application. Onerous? maybe, yeah. But definitely not inhuman or automated. Sounds like the other person bbeneschott "called a liar" simply didn't make it through step 2 (I can understand why they'd be upset).
disclaimer: I know bbeneschott personally (through toptal). But I don't earn through toptal anymore and have no financial incentive I can think of to support them.
Secondly, w/r/t/ the person who did their FizzBuzz question in Mathematica: you're trying to suggest that maybe they weren't able to implement FizzBuzz in Mathematica?
I do think it's entirely plausible that an automated coding test could be "failed" by a competent programmer in any programming language, because many automated coding tests are bullshit. It's not Toptal's fault that the state-of-the-art in automated programmer assessment is sub-par. Isn't that the problem Starfighter is solving -- better automated assessment of programmer ability? There's a reason it needs to exist.
Yes it is.
They choose the tools they use, they take responsibility for their results. It is their business, they are responsible for everything that happens on their behalf.
Top 3% is sort of a useless metric, isn't it? I'd not be surprised to find that, since most people suck, 97th percentile is a minimum you need to get anything done properly. But within that, there's probably at least an order if magnitude difference in capability (and rates).
[I will admit that I blame @patio11 for the $100/hour and "charge more" ideas. /grin]
Oh, edit: I had absolutely no problem with the onboarding process, I think it was just fine. It's only the "no you can't set your own rate" part that I disliked.
So I didn't do it. I can get other offers where I will not be made to dance like an unpaid monkey.
This indicates that the people running the company are junior engineers who think brain teasers and algorithm challenges are how you test for a good engineer. This is based on the common excitement that young people get in completing these kinds of tests.
When you get sufficient experience, you come to realize that this is not what makes a good engineer. Very few companies and very few projects are cutting new grown algorithmically. But building a system that can be maintained and extended without being brittle, this is much more important.
Very hard to find white board questions for that.
Also, while many companies to white board questions, any well run company with a good engineering culture will make that less than %10 of the interview process. On toptal this seems to be the extent of them actually learning about you as an engineer.
For that reason, his comments are very good... and your smear that he "failed to get in" and the implication that he's somehow biased is, in my view, a punch below the belt.
On the other hand though, publicly calling a company 'stupid' because one does not like the way they recruit employees is more than a punch below the belt. If I don't like someone's recruitment process I don't apply for a job with them, but don't go to Hacker News and call them 'stupid'.
Now I think about usability, design, etc. of a system and wonder what the trade-offs are when choosing one design over another, not to mention time and cost trade-offs.
Isn't this what any respectable client submitting projects on Toptal should look for? I don't think I'd want a junior dev diving head first into my project without first understanding the requirements and presenting me with different trade-offs, etc. Unless ofcourse Toptal wants to be a platform for lazy college kids asking help on their assignments.
I know you understand these points, but I'm just adding this for future readers.
It's not that I "failed" to get into Toptal. I refused to take the codility test after seeing it as I didn't see any point in doing so. I'm sure I could solve those codility problems in 30 min. each if I practiced similar problems for a couple of weeks, but why should I?
I told them this, and their condescending response to me is why I called them stupid. Programming is a vast field, and not every programmer is going to find such puzzles "interesting and challenging".
However, it's also important to know that the 3% was not arbitrary. We didn’t start by saying, “wow, we should set the acceptance rate at 3%, because that sounds nice” or we somehow knew that the bottom 97% were bad. 3% (and every value you see on our screening process) is simply the result of a numerator and a denominator (successful_applicants over all_applicants). We designed the process to be the bare minimum criteria for us to be extremely confident that we are admitting someone into the network who will thrive here.
When it comes to technologies being in demand, it really ranges all across the board: from the standard PHP, Ruby, Javascript etc, over more bleeding edge like React, React Native to niche things like OpenCV are all there.
Full disclosure: I am currently employed as Head of Community for EMEA @ Toptal
Relying on coding challenges or automatically-generated code metrics is deceptive because it tests if people can solve coding challenges, not solve real production issues or work on production apps, quickly and/or produce maintainable code. (It's about as useful as asking "why are manhole covers round" frequently asked questions interview trivia questions as proxy signals for intelligence.)
So, unfortunately, finding top coding talent is fundamentally an irreducible problem because it takes a little time & money to examine if someone is a badass coder by other badass/es reviewing some actual work and/or working with them on side-project/s.
100 years of industrial psychology. See page three.
That gets you > 60% hit rate.Things that do not work.
My favorite HR signal which doesn't seem to qualitatively work:
- non-rigorous certifications
The best interview styles are not labeled as such explicitly, whenever possible, because it makes for artificially-awkward pressure, alters expectations and ups the hype and hazing.
Disclaimer: I work as a Director of Engineering at Toptal and I've held a few hundreds of those live interviews myself.
Disclaimer: she interviewed me. (The experience, by the way, was almost identical to the one I had interviewing with AirBnB recently).
http://www.joelonsoftware.com/items/2005/01/27.html
Having patents and lots of experience makes closing a project a bit easier. But it doesn't really help when talking to the decision makers. There is an episode[1] of .NET Rocks podcast where they discuss marketing for programmers. Its full of good stuff and you will definitely get great insights from it. Go listen to it and go from there.
[1]https://www.dotnetrocks.com/default.aspx?showNum=1181
There is a very well documented screening process, that requires surely a bit of your time to go through, just as any other application to any company you'd like to work with. In my career I've interviewed with several European and U.S. companies, and the more the company is cool, the more they will test you, Toptal does just the same. Three steps out of four of the process are live interviews. I took my testing in August 2013, it took less than a couple of weeks and in total I spent a couple of days' worth of my time. It's definitely been worth it.
The algorithms I got tested on were of the same difficulty of the ones detailed in many books that prepare you for coding interviews, the same ones you'd go through if you were applying for Facebook or Google or other similar companies, nothing out of the ordinary in the tech world.
You can ultimately set your rate as you like, but recruiters will give you advice so that you can be in line with the market: I have about 20 years of professional experience and I live in Italy, my rate takes both those factors in consideration, and I am more than happy about it. If you have very niche skills, and as such ask for a high rate, Toptal will allow it, but then it will be harder for you to get hired. But you're not doing the price war with unqualified developers that ask for $5/hour, that's not how it works! Simply, if you have several patents and say your rate is $100/hour, and you want to apply for a 1 week Wordpress theme gig, it will not work out, but that's just common sense.
After several months of working as a developer, I joined the recruiter team, and I can witness that Toptal developers are all qualified and smart: for as experienced as I may be, I am surely not the one with the most years. I have spoken with Toptalers that worked at Apple and then NEXT in the 80's, researchers that work at CERN, creators of famous frameworks, that's who you are competing with, especially if your rate is above the market average. It's your call in the end.
All in all the experience is very personal, very human, the projects are great and, as long as you work well, are reasonable with your rate and have skills that are in demand, you will hardly be without work.
I'm curious, why do you think the place you live should be taken into consideration? I always thought that in case of remote work location/nationality should be irrelevant, or it's just discrimination.
Unless you meant it as: you're in Italy and set the rate for Italian employers?
That's provided you get continuous jobs of course - but you won't know if you do unless you try with the high rate first.
If you are a developer say in Croatia, where we have a large community, the average wage of your fellow citizens is around €750, or $860
If you make $30/hour and you work full time, your monthly wage is a little over $4.800, five or six times what your neighbour makes. You've got a lot of slack there. If you live in Zurich, with $4.800 you cannot even pay the bills or rental. I'm not even mentioning what it takes to live in the Bay Area.
So, a good part of it is just being competitive. Another side of it is that clients know the cost of living where you are, and they will not pay your average iOS developer living in Croatia the same as they would pay her if she lived in San Francisco.
The goal there is to maximise the chances of a developer being hired.
Of course chances to get hired matter, but if there's a chance that you can get 2x rate with half the work (or other more realistic proportions), that's even better! Hell, why not go all the way and get a POBOX / virtual company from the most expensive neighbouring country if that increases your rate?
Ever since I started working, even before joining the core team, I had continuous work, barely two weeks off between two projects as I was moving and I could use a break. For me it worked very well, I stopped worrying about the next client and if they would pay, I stopped waking up at 5 am and coming back home at 8pm for 7 hours of teaching and seven of commuting, I stopped taking crappy projects and started working with Silicon Valley startups, I got rid of onsite meetings and started traveling. I know you may think this is just company talk, but I wouldn't be working for Toptal if I didn't love the way it changed my life!
2) because you're better - the only reason somebody should hire you at all. Not because of colors of your eyes, skin or passport, definitely.
2) Consider that, my salary is x in my country and my living cost is y. And one of my colleague who lives in the bay area and works onsite has a salary of 4x with a living cost 4y. Now if I start to charge 4x, my savings would be (4x-y) when at the same time his savings would be 4x-4y. Do you think that's fare? And why on Earth people will hire a remote developer of same quality if he has to pay the same to get a onsite developer in the same time zone?
Footnote: I'm not even nearly sure why you're trying to convince me that they are exploiting me! They takes the hassle to hire great developers and manage great clients with quality jobs and money which I won't be able to do on my own. I'm getting way more than my friends are making in local companies and getting the opportunity to work on great projects. I am not seeing any reason not to be delighted.
2) "Do you think that's fare?" - yes, your colleague can change location to some cheap country if they want to make more savings. It's not employer's business how you spend your money. They only care how much value developer add to their company, nothing else.
> "And why on Earth people will hire a remote developer of same quality if he has to pay the same to get a onsite developer in the same time zone?"
- because some remote developers are better, I'm trying to underline it few times but you again missing this point. There are employers who choosing cheap developers just because they are cheap but it's especial kind of projects with awful codebase, ftp-deployment and so on. If your skills are better than US developer with N rate, your English is good enough and you are ready to work in US time zone(s), put your rate to N and start looking for employers - you'll find them when you'll prove your skills.
> I'm getting way more than my friends are making in local companies
I'm glad you are happy and I'm not trying to say you shouldn't be :) One of my friends (not imagined one, I can give his Skype to prove it) followed my advices to increase his hour rate and now he can afford to be happy not only in his current country - that is the point of my advices. When you can afford to change country of living it's real freedom.
And for me personally regional rates are humiliating - I know I'm not worse of developers living in US and I can prove it.
2) I live in the capital of my country and it offers better employment opportunities than rest of the country. As a result more people are coming here everyday and now the capital is very much burdened with overpopulation. The rest of the country has more room but underdeveloped. Now the only logical way is to develop the rest of the country at least to some point so that the local people can live there happily. In the development process its not possible to maintain a higher salary for every other people in rest of the country until the market becomes similar to the capital, because the yield and market size is not the same. And its not necessary as well, because better living standard can be ensured there with less money.
> because some remote developers are better
I've explicitly mentioned that we are considering two developers of same quality. Other developers equal to my caliber living in the US have access to more resources than I have, and I don't want to leave my country, so obviously I'll take advantage of my lower living cost. Quality doesn't have any boundary but opportunity has. Toptal is getting a cut from my payment to find me the opportunity and I don't see anything wrong with that :)
In any case, I don't believe the right way to make someone understand is making an argument. It is only possible by setting an example and evaluating its success. If Toptal can make all the parties happy (their clients, developers and themselves) then they are doing it right despite all the exploit theory you bring on. Of course not every client / developer will be happy, but again they don't need to stick with Toptal.
I won't continue this discussion any further. Thanks for your replies.
I generally apply for jobs there when I have some spare time but the devops jobs are few and far between. Most of the time my rate is too high.
From the slack channels I'm in, there's mostly non-US members that can undercut my price.
I've always been paid on time for the few jobs I did for them . The one thing I like about them is they deal with getting the money and from what I know if the client doesn't pay them, they still pay the worker.
I don't do it full time so I have a different view on things.
I'm interviewing elsewhere, locally, for my regular daily-rate/salary.
About the rate, I shall not share my rate here, but I can tell that I'm in Argentina and I earn more than most of the developers from the US, actually many people I know and are with Toptal from my region got offers to go to work to San Francisco and rejected them, because they prefer freelancing and the freedom which it brings.
You’re milage may vary, but I am happy to be working with Toptal.
Since I do contract work at the moment I wanted to see if (this developer notwithstanding) toptal was worth having a relationship with. I contacted support since there were a number of questions I needed answered before I would consider going through their interview process.
The support guy I was put in contact with, who had zero programming experience (I asked), told me my questions would be answered on day three (or maybe it was part three) of the interview process. I politely said that was a deal breaker for me and his response, in so many words, was that it didn't matter since I wouldn't make the cut anyway. His lack of ability to determine that aside, he had zero information about me at this point.
My advice: Avoid like the plague.
According to the BLS(Bureau of Labor Statistics) the top 10% of developers makes $148,000 a year in salary alone(does not include insurance, FICA etc...).[0]
FICA -> $159,000(7.5% employer tax for Social Security and Medicare)
Insurance -> $169,000(health and disability, sometimes life)
I'll assume 2 weeks of holidays and 2 weeks of vacation which is standard in the U.S.
That puts the top 10% of developers at around $88/hour(1099 rate, 81$/hour w-2 rate) at a corporate or salaried consulting gig. That is a pretty high rate but similar to my experience for top end developers make.
http://www.bls.gov/ooh/computer-and-information-technology/s...
P.S. I probably mishandled some of those numbers but it's getting late and I'm pretty sleepy :P.
If you're a "top" developer charging under $150/hr, you're charging too little.
- Fresh out of a top college at a large firm: 5Lk/yr ($7.5k USD)
- Shown yourself to be good, at a small startup, one or two years out of college: 10-15Lk/yr ($15k-$22k USD)
- mid-20's developer at top-notch tech firm: 20-30Lk/yr, can go higher ($30k-45k USD)
- engineering manager or top engineer at a top startup: 30-45Lk/yr ($45k-67k USD)
- VP, CTO, etc - 50-60Lk/yr ($75k-90k USD)
- it can go up from there, I've heard of 1crore+ salaries...
Lk = Lakh = 100,000 rupees.
Crore = 10 million rupees.
Note that about 15-20Lk would provide a similar lifestyle to that of a young in SF earning $100k USD, by my estimation (nice apt in the center of the city, going out to nice restaurants & pubs regularly, uber & food delivery daily, etc).
Also note that there are extremely few Indian developers on Toptal currently (I have no idea why). Maybe two or three in the entire network. There are also relatively few American developers (I'm not sure if it provides much value if you're a well-connected American developer; it's more helpful if looking for quality clients is a problem).
EDIT: Just wanted to add that the weekly rate I was paid on Toptal (they charge/pay weekly) for part-time work, ~20h/wk, was in the "engineering manager or top engineer at a top startup" range – in other words, way above the top 1% of developers in India. So I would say it can compare extremely favorable, but then developers set their own rates on Toptal so not everyone would earn as much.
During the interview, I was got stuck. The interviewer instead of helping me identify the issue told me, "I don't think you will ever be able to solve this!" He wasn't interested in how I solved the problem but if I solved the test case. I'm a senior engineer with 10+ years of experience and this was just rude.
I've interviewed candidates for top companies & been interviewed by them and this is _not_ how you conduct an interview.
This might have been an isolated incident but I have doubts about the company which cannot even get their onboarding process right and prides itself to be in the hiring business.
I never got a straight answer on whether I'll get my standard rate of $120/hour.
P.S. - The mistake, I was making during the interview, was I didn't call the method which I had written [a terrible oversight :P] as I don't write methods which output to console everyday.
2. They have "regional rates" and for my region rate is 3 times lower than my current rate.
Considering both these facts, I'm glad they missed my appointment.
Joining Toptal does not cost anything but few hours of your time. I think that you will probably spend a lot of time reading these comments and thinking about them anyway. My suggestion to you, just try it. It will give you an answer better that anyone here can.
As for your questions:
1. You saw it already, but 3% is just a matter of statistics that show facts about applied vs accepted. Screening process is structured to make sure that only developers that are on top of their game can go through it. And yes, I'm one of those that support the thought that even front-end developers should understand basic algorithms and data structures, which is the first technical step in Toptal screening process.
2. Toptal is far more than just a sweatshop. To me, it as a standard software development shop that is just distributed. No different than any other company I worked with. It has a great culture, and I actually became friends with many people I met that work through Toptal. There is a whole team of people that is actually spending Toptals money organizing events and gathering developers so that they can meet for real, and not just know each other by their nicknames. There is always someone from the company that can help with any issue that might arise while you work with a client.
3. As for the rate, you set your own rate in Toptal! However, it is your job to make it competitive. Toptal people can just help you with a suggestion that will get you more work. Eventually, it is your choice to take their advice or not.
But seriously, two comments, both about Toptal. Consume with a grain of salt.
Apologies if this was another mistake. It's just a little suspect when things get as glowing a review from people who don't otherwise comment.
I get your point, and it is true that I'm not active on HN. However, that has nothing to do with the credibility of what I wrote. That is exactly why I made sure to share my background in advance.
If you take a look at my submissions you can see that I'm actually working with a lot of Toptal developers that are producing some great technical tutorials, tips, etc. Which is another great thing Toptal has. We share for free a lot of valuable technical knowledge and we spend a lot of effort making it.
For the (automated) tests - I've never had need to do anything like them at work in over 20 years of professional software development. Unsurprisingly to me, I utterly failed them - but told them I've that, and so went through anyway. Other parts of the testing were better - the 'live coding' (ie, having someone keep an eye on you as you wrote code on screen) was fun and relatively simple, but a lot more like reality of a day to day role.
The final step took me a full two weeks to learn a whole new framework for a 'single page application' - again, something that I do not specialise in at all, or have ever done before. They appeared to simply see it running, and that was the final pass to allow me to create a profile on the Toptal site.
Half the roles listed are still unfilled after a couple of weeks. I suspect that a number of them end up just wanting someone really cheap - but Toptal doesn't do cheap - not with a ~50% markup over the developer cost. I've had a number of jobs applied for simply never come back with any status and they eventually time out. Only very rarely do I recognise any company names for the new jobs they list - certainly none of the ones they promote that are their current clients show up.
So, if you are a NodeJS, Laravel, Rails, Wordpress, IOS, or Android developer - and don't expect to be paid well, compared to the 'top 3% in the world' - then it might be worthwhile taking a few weeks to apply. Otherwise, it will not pay what you're worth.
I know it can be frustraiting if you waste a lot of time to get into a company but in the end you don't. Someone here mentioned having to solve three codility challenges in 90 minutes. Well, if you have a degree in CS you will know the basics such as the pros and cons of arrays and hash tables, what computational complexity is, or how to implement a sorting algorithm. If that is nothing similar to what you do working as a web developer that's fine, but you need to know the basics to get any programming job done well. No wonder most interviews begin with white-board questions.
I would never slam a potentional employer on the basis that you didn't get a job there.
Also when it comes to rates, if your rate is $100/hour but you're only able to work 50% of your time, because you spend the rest of it finding new clients, then I guess you should be more then happy doing the actual work for $50/hour full time.
### First Let me tell you something about the interview process, because I see the most hate comes from that. It is consisted of 4 parts: 1. Initial interview (basic communication) - this is where they see do you know English language enough to do this. 2. Codillity challenge - 90 min to solve 3 problems. This is hard. Yes, many will say that this is nothing like they use in every day developing, but every developer should be able to do at least 1 problem. 3. Skype challenge - 2x20 min to solve 2 problems. This is way easier then Codillity. 4. Project - you get a small project to develop using desired technologies. And then you present it in a 10 min Skype presentation.
Basically the Codillity challenge is the hardest. But it is not something that you can't do or learn. Famous 3% is just a marketing trick. They don't say 3% of all developers in the world, but 3% of all developers that applied to Toptal. Yes, it is a marketing trick and everyone use those.
### Second You don't know how much Toptal is charging for your services. You only know how much you get from TT and client knows how much he is paying TT. And in this gap the TT is getting money.
### Third Honestly, I do not understand people who live in USA or any other developed country and would work for TT. I live in a country, where the average net pay is $400 per month. Yes, and I am not kidding. As a developer I would maybe get twice as that. And on TT I earn that in a week. If I had the luck to be born in a better country I would never considered TT. There is a small chance that you would get from TT what you charge on your own. Even if you get $120 per hour, you can know that TT is charging the client at least $180.
### Fourth From my perspective TT is working very well. I have an opportunity to earn decent money, I can travel, organize my time better, etc. There are downsides, like any other freelancing job, but I don't have to mention those.
I've seen people trying to hire iOS devs ("agencies" that doe client work type places) for $80-$100 an hour.
Is toptal-- the "top %3" paying closer to $150? Or closer to $80?
Meanwhile, I'm getting declined as 'too expensive'.
And yes, I have been told by several clients that I would be an expensive hire. And then I don't get hired, in spite of what is usually a highly productive conversation/interview.
In Toptal the pay varies on developers and client's budget. I think the lowest rate the companies have to pay in Toptal for a full time developer is $45/hour or $1800/week (highest can be $3200+/week, ref: http://www.toptal.com/faq#how_much_does_toptal_cost). Toptal has more or less a 50% markup over what developer gets. So given company's budget and preferred time-zone to work they try to match a developer whose pay will fit within 66% of clients budget. And you can be sure of the fact that this 66% is a very handsome money for a lot of developers worldwide considering the living cost in their country.
I can assume that even the highest range Toptal offers might not be good enough for Top 3% US developers. But it's good enough for Top 3% worldwide developers who has accepted into the Toptal network. Also why on Earth developers in the US will have to rely on Toptal or other similar sites? Definitely they can access the jobs more easily than a Eastern European / South American / South East Asian developer. Don't you think so?
Finally, who are pointing on the fact that developers, despite of their nationality, should get the same payment should also consider that Nationality is not the main issue here. People who gets migrated to USA charges the standard rates in USA. But who are not living there don't need to charge the same because their living cost is much less.
(In short, if your expected payment is above than what Toptal offers, don't apply there. Toptal is very good place for freelancing jobs for a lot of international developers, but it's definitely not for everyone. And the fact that, its not for everyone doesn't necessarily make Toptal a bad thing).
AMA.