Wow, it's nice to see my post on the top page of Hacker News.
Note that I wrote this post back in February 2020 and there are a couple of things that I would like to add:
- Due to high demand, I increased my rate to $250/hour + some fixed monthly fee in April. I didn't drop any single client :)
- I'm seeing very little impact from the coronavirus. I have a client base spanning between Japan and the US in a little-impacted industry (education). Don't put all your eggs in one basket.
I did well in Kaggle's highest-prized competition[1], so I wondered if I should explore this kind of consulting myself.
The competition I was in was effectively limited to US residents though, but as a "remote" freelancer you compete world-wide, potentially with people willing to work for far less. Are there reasons your clients prefer US-based freelancers enough to justify the gap in pay?
How often will the clients find you again to do the follow-up work, e.g. new software feature requests, for the previous projects? If you refuse the requests, will this undermine the business relationship?
I don’t get what “NLP/ML for Asian language processing and language education” work is. Can someone explain a bit more. What kinds of companies do this, what kind of businesses?
An example of "language education" is Duolingo, where the author used to be an employee.
"NLP/ML for Asian language processing" covers anything that has text in CJK/other languages. I work with Japanese and lots of things taken for granted in NLP pipelines require entirely different approaches specifically for Japanese. For example, there's no spaces, so word tokenization is actually a complicated issue.
As a business owner & non-engineer who sometimes uses freelance software engineers like OP, it's fascinating to see so much pushback to the guy's hourly rate. On Hacker News!
People are so hung up on how much the guy gets per hour, as a business owner all I'm thinking about are the total costs. There are lots of cheaper developers who would take longer to get the job done- how have I saved money by hiring them? And that's before getting into quality of work. I think many commenters are imagining OP as a contractor who works 40 hours a week for his clients, 9 to 5. The whole point of a consultant is that they're project-based, it's not an ongoing expense. I would certainly hire OP for a 20-50 hour project, say, and then an hour here or there to fix bugs and answer questions as needed. It's not a huge total cost, I don't care what the guy gets paid per hour. I literally just look at it like 'overall, this ML/AI project cost me $10k, and delivered x amount of value'.
If HN commenters think $250 an hour is a lot, wait till they hire accountants or- god forbid- attorneys :) I bet OP is much smarter and delivers more value than my attorney that charges $400 an hour for simple contract review, and breaks out specific line items for answering my e-mails and 10 minute phone calls with me....
When I notice people pushing back on hourly rates, I think of a story a friend told me about an expert locksmith. He could unlock a door in under 30 seconds, but he often fiddled around a bit so his customers would feel better about having spent $200. He was very good, but if he made it look too easy, they would complain or give him a bad review. I try to never begrudge someone that knows how to add value and set a marketable price. If you're consistent, reliable and add value, they deserve it!
I'm not saying it's easy but $200 is a lot. Hypothetically purely based on opportunity costs, the AI freelancer could afford spending an hour trying to unlock his own door, someone like me I could spend like 6 hours buy a lockpick and watch a YouTube tutorial, or maybe easier to spend the next hour looking for a cheaper locksmith!
That is only possible because you didn't put a price tag on your own time.
Similarly, a company's CEO could say "Hey, I could simply go to university myself and learn everything about NLP and solve my NLP problem and save 10.000$ for this contractor! Yay!"
That's only scalable up to a certain point, and that point is usually reached when you realize that you need employees.
Another perspective is -- do people know how much ML/AI experts are making wrt total compensation at some of the big companies?
They might not make $250/hr in salary, but sometimes the stock options will dwarf that number.
I can see how being freelance can be nice though. It keeps you on your feet, you get to see the problem from lots of different perspectives, and it tends to concentrate on the work.
A bit OT, but in my industry (defense), some of the IT consultants from vendors can easily cost you $200-$400 / hr.
And these consultants are definitely not Ph.D holders, working on state-of-the-art technology. Just your average java enterprise programmers that get flown in to do slight upgrades.
Super cool, I've been thinking a little about this for CV rather than NLP. One thing that gave me the idea is I (the company I worked for, at the direction of me) engaged an outside expert on a particular ML domain. It wasn't a freelancer, but just someone at a major company who did some cool stuff. I approached them, told them about what issue we were having, and engaged them for a 50 hour contract @ $500/hr. Completely worth it, but looking at your rates maybe we super overpaid. Not that it matters, but just an interesting data point and got me thinking about freelancing purposely if those are the rates. Thanks for sharing your experience.
You didn’t overpay; OP is severely undercharging. $150-200/hr is freelance marketer manager territory.
As an aside, this is one of several reasons I think charging an hourly rate is bad for business: You immediately get compared to other freelancers based on this arbitrary number rather than your abilities.
I was just reflecting on the rate before you posted and realized OPs rates are around what I made in base salary, plus I get the benefit of things like health insurance, equity, etc. I think I would consider freelance for $500/hr, but $150-200/hr seems low for all the risk, for me personally. But I could see doing it depending on whether I really just enjoyed the freelance lifestyle and didn't have to live in an expensive locale.
As a general rule to consider freelance you should make at least twice as much per hour as you do full-time employee to make up for the instability of the job. This calculation of course changes in times of instability such as now, I don't think there is any freelance job I could be offered right now that would tempt me to quit my current job - of course it is also unlikely I would get offered twice hourly given my current salary is pretty high up for my region.
A FTE costs (to the company) way more than their salary; an easy rule of thumb is to double it. The salary cost does not include things like the cost of providing an office, retirement matching, health insurance, etc. etc.
If a typical ML engineer makes $250K/year, she costs the company about $500K/year; that means the hourly rate should be at least $250/hr.
I've heard this rule of thumb and can't make it make any sense. My company's contribution to my health insurance and retirement doesn't come anywhere near 25% of my salary, and there's simply no way my office space costs more than $500/mo for my share of it.
Well rule of thumb or no, this is basically how much universities add on to grant applications. The highest postdoc salary in the UK (prior to permanent positions) is roughly £40k on the national spine scale. But if you put in funding for a postdoc, the uni will claim something like £80-100k per year. Say we get a half million pound grant. That will typically cover two postdocs for two years, plus capital and incidental costs.
Where does that £40k go? For a start we don't require private health insurance in the UK (we pay out of our taxes). Some of it is estates upkeep (offices, labs, capital equipment, cleaning etc), internal grants, support infrastructure (IT, computing), interview/acquisition cost, legal/HR costs, training, insurance, bonuses, employee benefits/pension matching and employer tax burden. Most universities put the rest into an "overheads" pot which can be used for a variety of things.
Most grants have a separate section for conference travel, publishing expenses, etc. In a smaller company, all of these things need to be added on (unless you're grant funded). So you're also considering expenses on top. If you pay someone to headhunt a candidate, that can be thousands plus a percentage of salary. We have access to a lot of training courses, most of which bill the university thousands per head.
The labour and legal costs alone of hiring candidates can also be very high. Think of a company like Google where your interviewers may well be on six figure salaries. In the US a typical hire costs about $4k. If your company depends on bums on seats to make money, the time between someone leaving and someone starting is costing you a fortune.
Depending where the company makes money, your overheads may also be paying for other staff. For example the university has an HR department, finance, legal, cleaning, estates, etc. None of those people generate any money for the university directly, though they are necessary for it to function. Some of their salaries are paid for by IP royalties, tuition fees and government subsidies, but a big chunk is from research grants.
I've heard this factor of two from people running consulting/contracting businesses. The biggest reason according to one of them is the the inconsistency of work over the longer term. You can't always keep everyone busy, sometimes to keep clients you need to be available and waiting on them.
And that is the cheapest kind of firm with minimal overhead. For larger firms it is probably an even bigger multiplier.
exactly, furthermore if you are a self-employed consultant depending on your country's rules if you do not have a job to do at the moment you can't get any government benefits until you get a job.
For example in my country if I lose a job and I have a consultancy that I have made money on in the last year or two (I forget) you have to close it down, and then wait some months, and go through some bureaucratic thing to get them to say ok he really shut down the company before you can get the normal government payment for someone unemployed.
Obviously as starting a company is also not without its work and costs you don't want to do that, which means you need to have the money to last a few months between gigs.
It's not about health insurance and 401k contributions. Freelance workers have a lot of non-billable hours that they spend "working" but can't charge for (e.g. marketing yourself to clients, networking, administrative overhead).
Yeah, it's a bad rule of thumb. It might at least be in the right ballpark for someone making a near median salary of say $50K, but non-salary costs don't scale even close to 1:1 with salary increases.
the rule of two is for if it makes financial sense to be a consultant, if you can make 2 times per hour as a consultant that you make as a full-time employee, then it might be sensible for you to become a consultant. It exists basically so you don't look at the crazy money you're being offered and think hell yes, when in reality you are only being offered a 30% raise.
The less important part of the rule of thumb is for businesses to determine if it makes sense to have someone as a consultant or a full-time employee. But whoever is doing hiring should be able to figure that out for themselves because they should know how much the employee actually costs - but hey, even they might need help sometimes.
If anyone is reading this and considers $150 per hour "low", do reach out to the email in my profile. Here in the Netherlands the going rate for a AI engineer is more around $90, so I'd be happy to pick up the work.
If you look at the person's bio on their website, they have a phd and have written multiple books on the topic, plus have been an invited speaker and regular at conferences in the area. They went to work at a company doing the same specialization, then went out on their own. This is about how to cash in on being a well-known contributor in a very hot niche area.
Given all that, I feel like they are still just selling their skills for short term cash while others make the real money off what they produce. As always with contracting.
New to freelancing, and while I get the hustle and pricing according to the value for the client, it's still hard to wrap my head around people charging 500$/h+. Like, what is the value an AI contractor can deliver in ~50h that easily justifies spending 25k (and without much prior knowledge about the product, systems in place, etc.). Honest question, trying to understand the game.
This has nothing to do with AI specifically. Basically if you are hiring a contractor/consultant you are doing one of two things - bringing on capacity, or bringing on capability. Sometime a mix of both.
The former category buys you a little bit of flexibility in hiring, etc., so you should be willing to pay a little more than you would fully loaded (e.g. 1.25.x - 2x salary, depending on a bunch of factors) with no complaint, but that's about it. The great thing about capacity freelancers is you can turn them on and off easily as your needs change.
That capability category is a vastly different space though. Imagine I'm a specialized skill/experience sort of consultant or freelancer. If you hire me to show you how to do something you don't know how to do, how much is that worth? Or what if bringing me on for 3 months can pull your time-to-market ahead by a year? Maybe you would love to hire me full time but can't afford it (or I just don't want full time with you) - or maybe you just don't have enough of this sort of work to justify an expensive hire.
It all comes down to value. If 50k worth of my time will save you 3 million dollars, why do you care how much time that is?
Sometimes a 2 hour conversation can save you from a 300k mistake. Should I be charging you for the time, or the impact?
Just responded to the person you were responding to, but well put. In my case it was very much the latter, and we don't know the true results yet, but will potentially allow us to get operational significantly faster, with fewer mistakes, with a better product. Win win win.
Imagine developing a core competency for your company where it's complicated enough that you're not sure what route to take. Also assume you have a team of maybe 8-10 ML engineers who all make what ML engineers make. It makes so much more sense to pay $25k to get direct knowledge of systems and techniques versus your team spending a bunch of time exploring different products/methods/algos to find something that might work in the end, or might fail in a few months. $25k is like 5 MacBooks, hardly worth thinking about versus being able to get experienced direction from someone who has done what you're trying to do and saving your team literally hundreds of hours of exploratory work. It's not really a game, it's good sense. Yeah given the covo here I probably could have negotiated them down, but that's my time doing that and then things have to be vetted with outside counsel and the CFO, also time wasted, versus just telling them this is what the person charges, we need them for 50 hours, "authorize the charges please." And at what cost, saving a few thousand dollars?
How do you develop a business connection and market your service as being more valuable that the wide abundance of free materials, engineering blogs, research papers, etc., in this space?
Just for example, I run a team of 10 machine learning engineers at a large ecommerce company. We mostly do NLP and computer vision, some time series forecasting.
I cannot imagine ever paying anything close to $25k for consulting advice, that’s just bananas to me. We recently purchased licenses to use the data annotation tool prodigy from the spaCy creators at explosion.ai. That was ~$4000 and the decision whether to build our own data annotation system or not was excruciating, involved all kinds of business documentation, RFCs, approvals, NDA processes, etc. It was deeply non-trivial to procure that, and building our own was a very serious option we pursued with tech specs and prototypes and everything.
Spending 6x that amount for _advice_ about NLP, which practically grows on trees today, is just totally unrealistic.
It makes me suspect the real target customer for you is not companies with actual ML engineering teams or ambitious data-driven projects, but more like someone looking for McKinsey-lite. Some place that has no serious ML use case beyond drop-in pretrained models and sees $25k as the cheaper path to rubber stamp certification that dissolves internal political feuds. Most likely just selling super cookie cutter NLP models as if they are advanced and represent some sexy leap forward for a company with a couple junior data scientists. Algolia or just some drop-in Elastic tfidf search is more than enough for these companies. Spend the $25k on an intern who can tell you anything you need to know about neural network frameworks.
In reality, the 4-5 ML engineers you already hired are very likely more knowledgeable than the freelance consultant you might hire. They can tell you much more about state of the art and simultaneously know the specific integration path in your company’s web service and data ecosystem. Those folks won’t be wasting time prototyping - they would be pursuing a more efficient way to get the answers you need than advice from a freelancer, even if that freelancer was Bengio for pete’s sake.
I just cannot see the value prop here except for the usual story of paying for consulting as a virtue signal / credential / politics kind of thing.
I just really don't know what to tell you, I'm sorry. We saw the value, pursued the person, and had an engagement with them effectively consulting for 50 hours. There was no justification to anyone outside of our team, other than getting the very quick approval, and the consultant worked with our team directly and not to anyone outside the team. There was no internal politics at play.
And again, this wasn't a "freelance consultant" in the sense of the original story posted to HN, but an accomplished person at a very respected company who was able to secure the approvals from their side to help us out. This was novel/niche work for which "drop in pretrained models" don't really exist or apply.
Frankly to judge and belittle someone else who is just sharing their experience by saying they're not doing serious work and don't have serious customers is very rude.
It’s not rude at all to highlight how this warrants huge skepticism. “Just calling someone up” to spend $25k+ on “advice” and claiming it’s justified in time saved of your existing staff not flailing around to research the same topic is _very_ weird. That doesn’t line up with any professional experience I’ve ever seen in any machine learning team at Fortune 500, startup, finance & academia jobs. _Maybe_ for appearance fees to have a big name researcher come and give a company presentation or keynote. _Maybe_. Absolutely not believing it for ad hoc freelance consulting based on someone having some NLP projects on GitHub, conference presentations or publications, or gigs at “fancy” AI employers, and I find it’s worth making this comment so other readers can consider how extremely shaky that premise is.
Just to provide another perspective : I've consulted for 20+ companies. Spending money for outside advice or actual work products is extremely common and generally worthwhile if done right. There's a reason why consulting is a multi billion dollar industry.
I disagree. Consulting is fashion signaling. It’s a huge business because it’s about buying and selling political status in the context of company decision making. It offers value from social signaling, not from strategic facts that demonstrably yield improvements to success metrics.
>That was ~$4000 and the decision whether to build our own data annotation system or not was excruciating, involved all kinds of business documentation, RFCs, approvals, NDA processes, etc. It was deeply non-trivial to procure that, and building our own was a very serious option we pursued with tech specs and prototypes and everything.
The fact that you went through all of that for a 4k line item means there's something wrong at your end. You would have burned through multiples of that putting together a prototype, only to them spend lots of hours on the procurement process for my team would have just put on a credit card (exaggerating but only somewhat).
Sounds like you are not really accounting for the opportunity cost of your peoples time.
> You would have burned through multiples of that putting together a prototype
No, we had the prototype we needed for making the decision with 1 team member working on it part-time for 4 weeks.
Your economics are way off. The cost of the prototype pales in comparison to risks around vendor lock-in, security issues, license growth, etc. The legal team vetting the contract and NDAs is the real expense - and well worth it to be quite careful about vendor software.
The cheap quick prototype helped us realize the longterm cost of maintaining that tool was too large, and the upfront procurement costs were worth it.
In a “move fast and break things” shitshow where you just instantly buy the vendor software, the risk of getting burned on a bad / unsafe contract is huge, and you end up playing hot potato with the 3 licenses you bought because you didn’t appropriately plan for license growth, dealing with data breaches, etc.
I think you’re naively reacting to the perception of a bureaucracy unable to do anything, but it’s totally not. This type of vetting is very cost effective.
It’s also why nobody is just quickly dropping $25k on consulting from freelancers.
I work at an f500, and I have worked in other data science groups at companies in the same industry. It's no huge thing for a large consultancy to be thrown 500k-3M for a 6 month "predictive" project whose deliverables are some python code that trains simple scikit models.
Absolutely grinds my gears too because the consultants turn in dreck that we're expected to fix to help the VP who hired them save face.
Not sure why I'm sharing except that the last line of your comment really hit home for me.
> I cannot imagine ever paying anything close to $25k for consulting advice, that’s just bananas to me
The parent already explained why he was willing to pay $25k for a consultant, but you ignored his explanation and just started talking right past him and insulting the work he's doing.
" It makes so much more sense to pay $25k to get direct knowledge of systems and techniques versus your team spending a bunch of time exploring different products/methods/algos to find something that might work in the end, or might fail in a few months. $25k is like 5 MacBooks, hardly worth thinking about versus being able to get experienced direction from someone who has done what you're trying to do and saving your team literally hundreds of hours of exploratory work."
>Spending 6x that amount for _advice_ about NLP, which practically grows on trees today, is just totally unrealistic.
If you can't conceive of what useful advice might look like then that's just a failure of imagination on your part. Getting any ML model to work properly involves a lot of esoteric domain-specific tricks. You have to use A,B,C to model the problem domain, apply X to transform the data, clean the data by throwing out Y, impose constraints Z on the model. You can pay your full-time employees hundreds of thousands of dollars to spend hundreds of hours discovering these through trial and error, or you can just pay someone $25k to explain these to you up front.
Of course you can find a billion worthless, generic, baby's first bag-of-words spam filter type NLP tutorials online, but that's not the same as commercially applicable expertise.
Our company was thinking of going after this very large contact,waaaay out of our league. We had experiences in some,but not all areas.We hired an expensive contractor to draft proposals, submit necessary information amd etc.When we read what the guy has produced,it was clear that it would have taken ages to get even half of it+ we would have skipped tons of things.So it was worth it. In a sam way, I could walk into almost any business using certain software and give advice,which would result in cost reductions, optimisations and etc,so I could justify charging $1500 a day or so,as an example.
The last projects I worked on with about 10 other people doing some not-cutting-edge tech to make things more efficient increased the company's yearly revenue by over 500mil. I imagine a consulting team can probably negotiate a fee exceeding $500/hr delivering that kind of returns.
The company is not that special, I don't even know if we make it to Fortune 500. The point being, technology is a force multiplier, and when applied at the right lever for companies above certain size, the returns can be enormous.
Cutting edge applied ML can do things that previously could only be done by humans. You're generating potentially unprecedented insights into your data because neural networks pick up on what I call "nonlinear" correlations - stuff that is missed with typical first order statistics like averages and skews and such.
So basically ML when done right is enormously valuable because it horizontally extends the reach of computation into previously humanlike domains.
But the caveat is that it's hard to do ML right. You need very much to be a generalist, an autodidact (to quickly learn the nature of the domain you're operating in) and I think a background in math and/or physics, or at least some other quantitative field is indispensable. You can do a hell of a lot more with neural networks than sort cat pictures or target ads.
Plenty of lawyers charge $500/hour or more, why shouldn't engineers? Having a PhD and domain expertise in a niche field seems at least as valuable as a law degree.
If you're working on a project that's driving $1 billion / year in revenue even a 0.01% increase is $100k/year. It's pretty easy to justify $25k on a contractor if they can demonstrate even a very modest impact on your project.
That is about 1 month cost of an average Engineer at a big company. So as longs as the freelancer provide as much as value as your average employee in 1 monh the company is doing a good decision. It is even better because the expertise of the freelancer tends to be high.
$500 per hour, 8 hours a day, 5 days a week gives $20k a week, $80k a month or (let's be charitable and say you earn a $40k bonus) $1 million a year. I don't know what the split between benefits and pure salary is in America, but let's put it at 2/3. Does the average engineer at a big corp really pull in $666.000 a year..?
I think you're misunderstanding the parent. Their comparison is between:
(1) a 50 hour contract at $500/hr = $25K
(2) 1 month of paying a full-time engineer = $25K (i.e. $300K/yr including payroll taxes and benefits)
If a freelancer comes in with specialized knowledge for solving a particular problem, it can be quite easy for them to add more value in 50 hours than an average engineer would in a month, and therefore it's worth it.
Exactly, I suspect that depending on the problem and the expert the value multiplier could be in the double digits.Something freelancers should think about when proposing and charging their work.
For what it's worth the average engineer doesn't get anywhere near 300k/yr. SV rates in some sectors have really distorted peoples view of what is actually being paid across the industry.
The average salary of an engineer at one of five companies in a single geographic area is _very_ different to "an average engineer", even just in the State let alone in the US or further afield.
This seems to be less and less the case. The ML industry changes so much and so quickly that a PhD in some specific subject is obsolete quickly. Of course there are ancillary benefits to having a PhD, and certainly the more stogey "higher ups" of certain mentalities might be convinced, but largely it doesn't move the needle. In fact, most of the really respected people in the industry have told me that one shouldn't get a PhD for ML anymore unless they have very specific goals and it is a tip top program.
It is funny that you think you overpaid. Small company mentality. The right person's time can be worth tens of thousands per hour. The question isn't what you paid but what you got in return (most companies function by vastly overpaying the 95% of average people they employ, and underpaying the competent 5% who don't know their value or will move onto better things soon).
There is almost no one that is worth tens of thousands per hour. Most "big companies" overpay for people with fancy titles that produce a lot of noise but not a lot of output. Small companies have no choice but to be highly efficient and that's why they have lower levels of pay inequality.
Chances are that 95% of people is what is bringing in 95% of the value of your company.
This is the wrong way of thinking about it. There is almost nobody who is worth even 1k/hour full time in most scenarios.
If 20 hours of someones time saves you 2 million though, it's a no brainer to pay them 20k to do it.
Some people absolutely do specialize in this sort of engagement, and do well at it. It's really important to remember that. $N/hour usually doesn't mean $N*2000/year salary. Often hourly rates go up because of the nature of the work means the ratio of billable hours to hours put in isn't great (see, e.g. many independent lawyers).
Also worth noting that most people contracting at this level don't in fact charge hourly but that's a different aspect.
This seems like such a narrow viewpoint. Consider a business problem -- like a misconfiguration of an Amazon S3 bucket -- that is needlessly costing a company an extra $30k per month. Say you don't have the expertise on your team and hire an expert for 1 hour @ $20,000/hour to fix it. It would be well worth it to stop the bleeding.
This example sounds a little like the examples to justify torture because they guy you have caught knows how to defuse the ticking bomb. Sounds good but never happens in reality.
I actually organised this once (not torture, paying a large amount for an hour or twos work). I was made tech manager at a startup and that included the on-site infrastructure where we had ~10 support agents taking calls for our main client. We were having VoIP issues (dropped calls) due to a misconfigured router/switch and I just couldn't solve it after spending a week investigating (I was ~2 years into my career with very little sysadmin experience). I hired a contractor to remotely fix it at £375 an hour (took two hours) and was entirely worth it.
P.S. It was an inflated amount to get an immediate fix based on his daily rate knowing it'd only take an hour or two - not because sysadmins working on ~30 person networks reguarly earn ~£3k a day.
A better example would be a broken hard drive change.If you have no valuable data,you could just bin in and buy a new one,so such a service would only be able to charge $50or so for labour.Now,if the hard drive contained some valuable info,i.e. technical drawings with no copies outside it,etc.,then you suddenly need to hire a data recovery company,which, depending on how difficult the task is, could charge you thousands if not more. Here's a good example when it's worth paying tons of money for some otherwise absurd things:
www.independent.co.uk/life-style/gadgets-and-tech/news/bitcoin-value-james-howells-newport-landfill-hard-drive-campbell-simpson-laszlo-hanyecz-a8091371.html%3famp
It's perhaps uncommon for such values with respect to S3 bucket engineering experts, but I've come up against many problems where paying an expert $600 an hour to solve something within a day would have saved thousands. The real problem is picking an expert who'll actually have it solved quickly, while avoiding the consultants who will drag out a day of work into multiple days/weeks, or leave you with working but deficient solutions. Difficult!
This is business, not saving human lives. Remember, whenever a company pays you something, you're leaving money on the table - they're still making a profit overall, otherwise they wouldn't be doing this! Same goes with buying, of course - any car discount you fail to negotiate, is profit for the dealership.
> There is almost no one that is worth tens of thousands per hour.
Sure, but there are plenty of business problems worth solving even if it takes millions. You're not paying for the person, you're paying for someone to solve your problem.
This reminds me of a story a friend told me: he locked himself out of his house, he calls up the emergency locksmith, locksmith takes a look, and says it will be £150.
My friend (annoyed) asks what is he going to do. Locksmith pulls out a bent coathanger. My friend gets angry. Says he could do it himself, he has a coathanger upstairs, he doesn't need the locksmith, £150 is a total rip off, calls him every name under the sun.
Locksmith: "Okay mate, you have a coathanger now?". Friend says no, agrees to pay him. Door opened. £150 well spent.
I think too many people here perceive tech as something that meets their needs when it should be about providing a service to others.
That anecdote applies to more than locksmiths or tech.
A MacBook repair shop may replace a $0.50 transistor, but charge $200+. What you're paying for is the knowledge and experience in identifying and solving the problem. It's unfortunate that so many consumers don't understand this principle.
A couple years ago I was approached for a consulting job for a company using DSSSL with some arbortext extensions for generating their user manuals, I was unfortunately already committed on a project, darn the luck.
I don't know who they found to take the task, but I have to assume they charged them quite a lot because you're just not going to find very many people to solve that particular problem.
Certainly not 10000 per hour, but a significant amount given the Danish market.
It depends how you define almost no one. I agree almost no one is worth that much...but that was my point. There are people with hourlies in the hundreds of thousands. I wouldn't call tens of thousands particularly high.
And no...that just isn't correct. It does vary by industry. Very generally, capital-intensive businesses have smaller productivity differences...but even then it is probably far less than you think (in some of those industries, experience curves are per employee). But, given the subject of the post, then yes...productivity can vary that much.
What is perhaps confusing you, and many companies get this wrong, is that they treat every employee like a superstar when (by definition) they can't be. It is far more profitable to hire five below-average people and teach them to be average than hire one superstar.
My point wasn't really about what companies should or should not do but how they should look at those decisions. Wages really don't matter. I will pay someone $1m tomorrow if they can generate $5m in sales. Simple.
But companies should think carefully before they go down this route. It mostly isn't worth it because most companies aren't very good at hiring and will lose the employee if they can't continuously provide a high productivity environment. Some places can retain staff but, again, there is an 95/5 rule about workplaces just as there is employees.
Agreed, if the top contributors fell in the 95% bucket :)
Imo EVERY senior/principal engineer is underpayed if compared to juniors based on contribution value. And this is OK
Larger companies will pay that much salary for ML talent especially with experience and a PhD. I've seen $400+k salaries for people with a few years experience and no PhD. Contractors will generally charge twice the amount per hour as an employee so you're looking at $500-1000/hr.
As for why. If a large company makes money from advertising and you improve their $10billion/year click model by 0.01% CTR then you've just made them a million dollars. Do that few times throughout a year and a million dollar payout seems low.
> Contractors will generally charge twice the amount per hour as an employee so you're looking at $500-1000/hr.
Yea, no. Not outside of the HN bubble. I run a data science company myself (in Europe). Rates here are really not higher than 80~100 euros per hour. That's for someone with a master's degree in data science and years of experience. On top of that, we have to very actively look for clients and advertise a lot. It's not like people are en-masse knocking on our doors to throw their money at us. So I claim BS on 500/1000 per hour. That just absolutely does not happen except for maybe the 1% who is a celebrity in ML world.
The first thing I see going on your website: it's in Dutch.So you are targeting local companies only,or at least that's the impression I'd get. Is there a lot of large/extra large companies in Netherlands that could use your expertise?I don't mean the offices of some multinationals that are only there with a tiny office for tax reasons but companies operating there.I'm not in the ML industry, so I can't comment much on the services you provide,but I I think you should look into getting advice on your sales process, marketing,etc.
In my experience it very much does, depending on what you're doing I guess. Levels.fyi under the Data Scientist tab seems to verify that this isn't some bubble thing. Well, bubble maybe, but not HN bubble.
Sorry but I have never heard of "levels.fyi". TBH the domain already looks like a typical silicon valley HN-bubble website. Don't you think there is a massive selection bias to the people who fill in their salaries on a website like that?
A more reputable site (that's known outside of the HN-bubble) would be the stackoverflow salary calculator. If I fill in "Data Scientists with a master's degree and 5 years of experience in the Amsterdam area" I get a median income of EUR 51K. In silicon valley it's higher of course, but the same profile in San Francisco still 'only' gets you a median income of USD 157K.
I cite my salary and salaries of my friends and colleagues in the industry, and levels.fyi. You cite your experience and stack overflow. I think we'll have to agree to disagree, as you're not going to convince me I make less than I make (or pay, apparently) and I'm not going to convince you anyone makes more than you. I think that's okay.
No... but just checking it out, and every single post is about FAANG/uber from people who work in silicon valley. You didn't exactly disprove my point.
You are getting normal UK rate for being a normal UK based contractor. The author managed to hike up his rate by writing books, actively participating in conferences and etc. Anywhere he goes he can start conversations like: 'I'm the guy who's publishing books on the subject". All these things add some weight to what he does. Also,maybe, he's just better at selling himself than most.
I do have a CPA and we did an S-corp election for 2019 tax return. This is something I didn't get to mention in the post because we hadn't filed the tax yet.
LLC is a business entity type. S Corp is a way to be taxed.
With LLC, life is simpler (formation, filing taxes, maintenance).
With S Corp, you can distribute the profit as dividend (at a lower tax rate) after paying yourself a reasonable salary.
Edit: I just noticed that you'd posted the original comment in this thread. So, LLC electing to be taxed as an S Corp means simpler filing requirements (as opposed to C Corp and the like), coupled with the ability to distribute dividends.
Great article! The most important part for others reading this:
Narrowing your niche down attracts specific types of clients who have specific needs that few people in the world can solve.
My expertise is NLP/ML for Asian language processing and language education. When defining your specialty, I think it helps if you define it in terms of the industry, not in terms of an ML stack. People look for, e.g., “AI solutions for healthcare” and “text analytics for finance,” not for “GANs” or “Seq2Seq models.” You need to be willing to learn a very wide range of ML techniques and models, from simple regression to GANs and RL, no matter what industry you work in.
In other words, define your niche in terms that make it easy for someone with budget authority to say "yes" to hiring you.
This is worth noting also because if you accidentally cross over into talking with recruiters or other gate-keepers to the real budget authority holders, you'll be misled into talking or padding your resume with technical terms that are not the key value drivers for why you'd get a nice-paying contract.
One interesting thing about being freelance during times of economic instability is that the "steadiness" metric is inverted when you have multiple sources of income compared to relying on one company.
This has never been a big problem for me. Some clients have strict policies (e.g., only allowing you to work on their servers) while others don't care as much. In some cases, as a freelancer, you only work on a "proof of concept" prototype assuming you have access to their private data. It is their FTEs job to actually train/implement/deploy this prototype using their private data.
Great question. I work for a small AI consulting firm, every large corporate client we've approached asked us to work within their own systems. They would never let data outside their network for us to work on. Worse, they would make us engage with the lowest, least skilled ranks for the organisation.
HOWEVER, I also know management consultants who also do work for these corporations and they seem to get the data no strings attached. Apparently all the security/privacy policy is ignored when someone who reports to the CEO says 'Give BCG all the data they want'.
Great post. I felt like $150/hour is way too cheap for his resume (10+ years of experience, PhD, author of book, based in Seattle). I am pretty sure some companies will be happy paying twice as much.
"As a freelance AI engineer, you are expected to, for example, start with a client, familiarize yourself with the product and the codebase, submit the first PR within a couple of days"
Although I have my doubts maybe this is true specifically for AI area. In general contracting, getting familiar with the large project and "submitting the first PR within a couple of days" is a wet dream. I will exclude cases when one is hired to find and fix bug in some simple, short piece of code.
Are you trying to say it's unreasonable to expect a freelancer to start contributing within a couple of days? Or the opposite?
Because I can't remember a single project where I wasn't expected to contribute something immediately, especially with new clients (that need to be convinced of the value).
I guess we are talking about different kind of projects. I had few very short limited scope projects (shortest one 3 days I think) but generally I design and develop products from ground zero (some I own, some made for corporate clients). It could take me a month sometime to write first line of code. And no one in their right mind would expect me to start coding big product with no design in place on a first day. As for trust - I have big portfolio and stellar references from satisfied clients and some of my products can be seen on the web. In my case this is normally what counts, not me banging on keyboard from the first hour. You do not start coding major project without without first having a clear and documented picture of what exactly is being built. Doing it other way is a recipe for major disappointment.
This person, like many, makes the error of commodity pricing for labor. They charges less, the more the client buys. That's how corn is bought. Don't sell your time like corn.
This kind of thinking/pricing has been inculcated by so much free-market idealism, and of course on some level human labor can be thought of as a commodity, but that's neo-evil.
I'm more interested from a labor perspective, but practically, you get less money for your work, and no benefit. Especially as a freelancer, paying all your own taxes, insurance, health, and company costs. That means you need an addition 20% revenue, not less.
If you work in demanding field, and have a client that needs—and can afford—your work, giving them them a discount only takes away from your stack. What possible benefit is there? Repeat business? They will repeat if they need it, not b/c it's on sale.
Assume you are literally putting money in their pocket (ROI) and get paid what you're worth.
I think the lawyer example is great! People here don’t question how a lawyer or good accountant can charge 500$/hr easily but an engineer, oh heavens no it can’t be possible. Big business pay this because as others have said it’s about returns, and they aren’t experts in the field and they know they’ll make more back. As startup owners or employees, it may be hard to fathom.
If anything more engineers need to be paid even more. Heck even consider a real estate agent that puts your house up for sale, and your house is worth 1m and they get 2.5%, let’s say they walk away with 15k how many hours do you think they spent marketing and managing the sale? In a hot market, where prices are higher and things move fast, even they are reeling in 500$/hr so a PhD level engineer pulling that shouldn’t shock you.
Really nice article. I've been an independent consultant (freelancer) for several years and there are so many parts of this that match my experience too: whether freelancing is right for you, being prepared for uneven work cycles, and what is fair game for billable hours. To me breadth of experience, time flexibility, and just being independent are the strongest perks.
Just wanted to say that even though you said you're not a native English speaker, I never would have known if you hadn't mentioned it. Very well-written and clearly organized post.
Great post!
Anybody else here who is currently employed in this field and wants to start a consulting agency or similar?
Feel free to reach out at ideavalid@icloud.com
As a practitioner in the field and in similar circumstances, the answer will probably be: it doesn't really matter. Personally I prefer PyTorch, but I can work with whatever the client already uses, if anything. For one of my clients I worked in both because there was no viable deployment option out of PyTorch to one of their platforms. There still isn't, so both models are still maintained and trained.
If they aren't 100% set in their ways, I do make them aware that things will move at about half the speed with TF, so they'll effectively be paying twice as much. If they are set in their ways, I do not mention it, since I'm not going to change their mind anyway.
That said PyTorch 1.5.0 is just broken pretty much - tensor permute (which in computer vision you end up doing for every input tensor) is 10x slower than it used to be. There's an issue in GitHub already.
I'm working with TF and Pytorch as well, but so far for the later I have found the project to be reasonably reliable (though I did find Chainer considerably more polished). Can you share more about what worries you with Pytorch?
1.5.0 is basically broken for computer vision. Input tensors are usually in NHWC memory format, but PyTorch (and CUDA) prefers NCHW (planar). So you'd normally run permute() to move things around. But https://github.com/pytorch/pytorch/issues/37142 (and possibly other bugs) kinda gets in the way of that. I had to roll back, since training got way slower than it was before, and it wasn't super fast to begin with, even on my quad-GPU workstation.
The fact that such obvious, severe bugs make it through the release process likely means that there isn't really much of a release process. And what's in place doesn't even test the release on totally bread-and-butter models like resnet50.
PyTorch maintainer here: we're looking into that and if needed will issue 1.5.1 asap. It didn't show up in release testing, which among other things does end-to-end imagenet runs with ResNet50 and a few other models (i.e. time and memory didn't regress). Will also figure out how to catch this early.
@m0zg if you could comment on the issue you quoted with any details, it would be really helpful to us. Unlike what is reported in the github issue, `permute` isn't the regression.
To anyone who is seriously considering paying $250 an hour for someone who isn't guaranteeing they will deliver anything--
I will personally quit my job and sign a contract with you that clearly defines what will be delivered by what date, if you are willing to pay flat rate of $X.
You will not pay until after you accept delivery of the system.
Just wait until you discover what the government is paying McKinsey (and the likes) for their services. Hourly rates starting at $500, growing up into the thousands.
Note that I wrote this post back in February 2020 and there are a couple of things that I would like to add:
- Due to high demand, I increased my rate to $250/hour + some fixed monthly fee in April. I didn't drop any single client :)
- I'm seeing very little impact from the coronavirus. I have a client base spanning between Japan and the US in a little-impacted industry (education). Don't put all your eggs in one basket.
- I would strongly encourage everyone who's considering making a leap to read "The Win Without Pitching Manifesto" https://www.winwithoutpitching.com/the-manifesto/
- Due to a sheer volume of my incoming emails I can't answer all of them, but do let me know if you are interested in working with me!