As someone that has been on the hiring side, I always prefer to build a full time team, even if that means paying for someone in my team to learn something new.
The part that consultants don’t talk about is that you have to pay them to learn your code / company too. Nobody can just jump in and add value immediately. So you’re paying for onboarding hours, you’re paying for other employees to educate the consultant, and so on.
Likewise as an engineer, I think the most interesting projects and companies err towards primarily full time people. So if my goal is to work on the most interesting projects, I’d want to work full time.
A lot of consultants, for example someone helping with SOC2 compliance, is mostly copy pasting a large document with recommendations and moving some paragraphs around based on interviews with the team.
Not different from your average lawyer helping with an estate plan or will. The reality is that for many things you do want the cheapest lawyer, because the project is simple and repetitive. It’s the uneducated that pay more. So yes for a murder trial I want to pay a lot for a lawyer, but for small things I don’t, and you shouldn’t either. I simply don’t buy the analogy.
Finally, while consulting might be good for cash flow to hours-worked efficiency, it’s not clear it will make a person wealthier than other forms of income. I’ve met rich employees, founders, but not so much independent consultants.
I've been on both sides of the table for both full-time and consultants. The first rule of humans is that they vary widely within categories (even if there are statistically significant differences in population average), so I urge people to take all of the anecdotes on this page with many grains of salt.
That said, here are some of my own, condensed across experiences:
- An executive wanted to use ML, couldn't get enough political capital to build a full-time team (and didn't have the knowledge to interview candidates anyway). A very small consulting firm, sourced from high personal trust networks, got an MVP going. That led to a FT team getting built. Code was a mess but started the flywheel and after several years everyone agrees it was a great ROI
- A large company had a tiny team using a technology that would be standard for FAANG but they had no support or training. Zero progress for about a year. Not important enough to throw huge money at but that link in the chain was becoming a bottleneck for the core product. A consultant came in explicitly as a multi-week trainer, and but the team just never got up to speed. Consultant's code examples grew until they were just direct bugfixes, and though nobody was happy, at least the crisis was resolved.
- A product finally reaches product market fit. Executives decide to hire only after the team is drowning in tech debt. But it has to be full time, and it has to be junior. It takes months, then requires training. Tech debt is twice as bad as the original crisis level when the new hire becomes value positive. For some bizarre reason he leaves after exactly 2 years.
Many consultants have a branding problem: Their biggest victories are fixing a disaster that their clients would rather not talk about publicly. Hard to put on a billboard, if you ever want work from that client again!
I nearly always got a job offer at the end of my contracts. I never accepted them because the terms were always poor, they couldn't match my rates. Not only that but being a contractor offers some distance from the internal politics.
Usually the internal staff knew the business well but were weak on the technology they were using. No amount of training seemed to fix that.
The only downside for me was the travel which was why I used the downtime between jobs to pivot to developing my own product.
Regarding the last point: maybe you're based in the US and you know some rich employees there, but I don't know a single one where I live. Consulting is very hard - for the reasons you mention, and others - but in some places it has a much higher ceiling than being an employee.
For those who don't know - aerhardt lives in Spain.
The US seems pretty distinct in that you can be a laborer and have quite high incomes. It's not unheard of to see people in major cities within the US having 7-figure incomes and still being an individual contributor in their field. Most of the "consultants" I've heard of outside of the US are only "rich" in that their incomes are high for their region (charging HCOL US rates while living in a place that is LCOL) or they're not doing labor anymore because they own a consultancy firm. In the US, I think consulting isn't worth it unless you are extremely lucky. You're more likely to see high income by trying to join FAANG.
I've been one of these people with the 7-fig incomes in the US. Unsurprisingly, you'll see a lot of data points like mine here because HN is primarily focused on the US audience since YC is a US (primarily silicon valley) company.
> Nobody can just jump in and add value immediately.
That depends on the project and how much domain knowledge the consultant/contractor has. I've certainly been able to contribute on day 1 on several of my gigs.
> I’ve met rich employees, founders, but not so much independent consultants.
May depend on the market, and what you mean by 'rich'. Consultants rarely get stock, but they often make out far better than employees. I've met very few employees that got anywhere near 'rich' but consultants in London (for example) can certainly become quite wealthy.
> As someone that has been on the hiring side, I always prefer to build a full time team, even if that means paying for someone in my team to learn something new.
> The part that consultants don’t talk about is that you have to pay them to learn your code / company too. Nobody can just jump in and add value immediately. So you’re paying for onboarding hours, you’re paying for other employees to educate the consultant, and so on.
as somebody who's been on the team, i agree on this. in my previous job my skip-level management insisted on handing off some crucial infrastructure work to external consultants.
results:
1. we on the (internal) devops/sre team did not know how parts of our infrastructure worked
2. when changes were needed, the first lenghty step was to figure out what was built by the consultant, and how (the manager did not like to pay the extra hours, of course)
3. when help was needed to troubleshoot something along with developers, we (devops/sre) ended up playing the role of messenger, and stuff that could have take anything from 2 hours to two days ended up taking up to two weeks
It was a frustrating job, so of course some people (me included) ended up leaving the company.
I still see the value of consultants as people that can bring the knowledge you need when you need it. However if they're going to work on something long lived, the manager must be enforcing some proper knowledge transfer during the consultant employment and at the end of it.
> The part that consultants don’t talk about is that you have to pay them to learn your code / company too.
Why should they? That's a given. Of course they don't know your code. But it's likely they've seen more code than a typical employee and therefore have more experience to contribute. A consultant is a serior employee sans the commitment.
To your point about time, consultants don't need 1 v 1s, quarterly / annual reviews, etc.
I understand why your cynical. I've seen some half-ass'ed consultants as well. But I've seen just as many stale, complacent, and complicit employees.
> So you’re paying for onboarding hours, you’re paying for other employees to educate the consultant, and so on.
You also pay for the psychological friction and pressure that the consultant has to suffer from the fact that customer expects them to be geniuses with magical powers and the project managers planning the time line according to that.
If you're lucky and the consultant is experienced and has narrow scope, they can provide a lot of structure. They will also push back where applicable. If they have a wide scope and/or they don't have much experience, you are 100% correct that they have to figure it out like anyone else.
> Nobody can just jump in and add value immediately.
Hmmm, I do this all the time. I've taken a bunch of bad data analytics, ML code from my clients and quickly given them insights that more than paid for my work.
A true expert can often come in and "fix" things quickly.
The problem is that in today’s climate, FTE is not really what it means. A FTE can also vanish at anytime, except it actually will ask you to pay more. And when a core tech leader left, there are also very few people can actually do any nontrivial code change to the repo.
You know the truism about how the best leads are often reluctant ones?
Feels like there's a parallel in consulting. The best ones will coach you to replace them with full-time hires. That being said, there are a lot of occasions where reality means that contractor may be the better option and a win.
I was a consultant for nearly a decade and far preferred fixed-price contracts, on the rare occasion we could get them.
When you are paid hourly, you work at the customer’s whim, and are often treated like an employee, or worse. You are essentially just a body for rent.
When you have a fixed price, you retain full autonomy. It’s up to you to decide the schedule, as long as you deliver on-time and within budget. The customer can’t change scope without your agreement. You feel like an actual human being.
This was the exact opposite, in my experience. Clients that want fixed-price contracts always have ridiculous deadlines and expected me to work 24/7. When I charge hourly, clients think very carefully before I work on something.
The 12 hour days to meet some crazy deadline also disappears pretty quickly when you are paying for all the hours. I won't even accept fixed-price contracts anymore.
Also my experience after 15 years of contracting. The fixed-bid contracts were the worst because they attempting to squeeze as much as they could for that cost. After a few of them I stopped even discussing them as an option.
If someone loses their autonomy as a contractor that's all on them, not the contract. I was always very clear that it was a B2B relationship with my clients.
Hourly rates also meant that if projects went long, or other work became avail, I would usually just continue to work on it, which can become quite lucrative. Fixed-bid contracts always gave the client a reason not to sign another contract. Time and Materials contracts meant a 3 month contract could easily turn into a 9 month contract, no new contract necessary.
I only do fix priced contracts with a lock solid list of tasks. Usually it's smaller in scope and clearly defined. I spell out that any deviations are costs outside of the original pricing.
As another poster mentioned, you very much have to be selective. A lot of time our first contract will be a fixed price with a client to show our ability to deliver, so in that instance we lose a little to gain a client. It's a balance and it's not an easy life for anyone.
Consultants can be beaten and battered on behalf of an internal team and those that are good realize that in many instances that's what you're hired for.
I worked at a company where they'd switched from hourly billing to fixed costs not long before I'd joined. The incentive for the client was that there was no reason for the company to inflate job hours. The incentive for the company was to encourage longterm contracts for ongoing work. Seemed like a win for that particular environment. A bit different from an individual consultant, but an interesting case of comparing two models.
I've found multiple times companies switch back from fixed price as soon as managers realize it is a very easy way to extract a lot of money from their employer via their cronies.
Fixed price sounds like a great idea, but if you can't trust management, even middle management, it will rapidly turn into a disaster.
I'm not a consultant/contractor, I have a fixed salary and have been an employee here for over 20 years.
But wouldn't it better for both consultant and customer to agree regular "gates". Agree on $100k of work for 10 units of work or whatever, but agree that it's paid in instalments of $10k every time each milestone is passed, ensuring that any misunderstandings are understood sooner.
The customer would benefit in that they don't have to wait 3 months to get a waterfall delivery which perhaps meets the spec, but not their requirement
The consultant benefits in that they don't do 3 months of work and don't get a penny until the customer is happy
A smart consultant will include milestones like this in the contract: not just milestones for what they are expected to deliver, but milestones for when the client is expected to pay them, as well as milestones for when third parties (and/or the client) are expected to provide additional input/data/opinions.
The contract should also describe what happens when those milestones are not met, e.g. for every day that milestone X is not met, then milestone Y will be pushed back accordingly, or the cost for Z will go up by some amount.
A well written contract should make it almost irrelevant whether you're getting paid hourly or for a fixed cost, because you (and the client) are covered either way.
I was always extremely wary of clients that wanted a fixed price contract. It seemed the more they pushed for it the more hidden issues there were waiting to bite you.
Having said that sometimes it can work in your favour. I did one project for a pharmaceutical company where I just happened to have several pieces of knowledge that they needed and they were losing a lot of money waiting for a solution. The first thing they said to me when I walked in the door was "we are so glad you are here, we have been looking for a solution for ages and are losing a lot of money every day". Eight days work kept me going for the whole year.
My experience is different. I have full autonomy whether I am paid hourly or a fixed rate for the job. Often I'll prefer hourly if it's hard for me to get an idea how long it will take.
Can also do both (kinda). Hourly and specify budget range. "I think it can get done with this many hours", then charge 30% up front of budget estimate and the rest of the hours on completion.
My experience is funnily enough the opposite. When on fixed-price, it was always an argument about if something was a bug (thus I had to fix for free), ambiguously specified or a change from original requirements (they would have to pay to change for the last two). I felt we always were adversary to each other.
With an hourly contract, we're on the same team and try to use me for the most valuable stuff as long as you have me.
>The more they spend, the greater the kudos they’ll get from upstairs, and the bigger their budget will be next year. After all, the division with the most expensive problems must be the most important one in the company.
I heard this is true in government, and it was presented as an example of why government has the wrong incentives, and private companies are much better: in a private company you get a bonus for being efficient and saving the company money, whereas in a government you get punished and they shrink your department. So I was surprised to see it presented here as a thing that happens in big companies too (but I've only worked with very small companies).
> Like much common wisdom, the idea that companies are efficient (and specifically more efficient than government) is a myth.
The claim as I've understood it is more that a private company puts control over efficiency more directly into the hands of the people whose money is being wasted.
A government entity is typically nominally accountable to the taxpayer, but that accountability is through so many layers of indirection that it doesn't actually do anything. A privately owned company with a small number of owners will in theory be more responsive to monetary pressures. I think where this breaks down is with ridiculously large publicly traded companies where stock price has more to do with shareholders betting on the irrational behavior of other shareholders than it does with the actual performance of the company.
When the owners of the company make money when the company makes money, it will typically straighten out its inefficiencies. When the owners of the company make money by buying and selling abstract financial instruments, not so much.
Companies can be just as inefficient as the government, sure. But unless they have a monopoly, either natural or government-enforced, inefficient companies will go out of business while inefficient government agencies can linger on for a long, long time
This is a claim without evidence and simply not true. There is no argument that private organizations are perfectly efficient. Rather, that there are built in feed back loops that drive towards efficiency. This includes bankruptcy as ultimate conclusion in some cases.
Government on the other hand, has no such feedback loops and misaligned incentives which produce enormous fraud, waste, and abuse. There is no example of government being more efficient at any activity. Pick one, and there is a counter example in private industry doing it better for less.
> Like much common wisdom, the idea that companies are efficient (and specifically more efficient than government) is a myth.
There is a book - Recoding America - that gives a behind-the-scenes look into government IT and the more recent changes that improve efficiencies and outcomes. It was published in the last 2 or 3 years and your local library almost certainly has a copy.
FYI - the first chapter or two seem to imply developers are to blame for things that are truly the fault of leadership; power through that section and the rest of the book shows developers in a different light: perhaps she was setting up a strawman to make the change look even better.
I believe the argument for privatization of services is that you can switch providers in a marketplace, that should provide efficient options. So you can switch payroll and billing systems from ado to new without laying off a whole division and software rewrites. However in practice it leads to vendor capture and more interface layers of project and program managers and auditors.
My dad worked for at&t and he got a budget for treating clients to lunch and such during meetings. He only got as much as he spent, so if he had $1000 left over, he would get $1000 less the next year. Each year, he would send someone out on his team to just buy a ton of gift certificates for the most common restaurants they take clients to and blow their budget in one day
The logic here is: If a budget wasn't spent in its entirety (or they didn't go overbudget), they didn't need the money and thus less money can be allocated next time around. If they keep requesting more money than they ultimately spend, less weight (if any) should be placed upon their beancounters in subsequent allocations.
It certainly makes sense, but the behaviour that logic incentivizes leaves much to be desired.
It does not make sense. It never made sense. It is patently stupid and it should only take five minutes to realize why.
If I go to the store today and buy groceries, it’ll cost X. If I go tomorrow as well, it’ll cost Y. The two numbers are barely related to each other. And only because I don’t need the things I bought yesterday.
And yes, that’s day to day. What about year to year?
Last year, I did not need any repairs to my house. This year I do. A few years ago, I needed a new roof. Three different year, three radically different home repair budgets.
The entire exercise is a refusal to due diligence of any sort. If you say $X/yr, then you don’t have to ask why. You don’t have to scrutinize reasons. Then everything becomes about adjusting this number without ever asking what it is being used for.
Another aspect that critics miss is that the company wants the money spent. If you only spend 50% of the budget, then you aren't "investing" the allocated capital in the project. Maybe you could have added another feature, etc.
Yes, I agree that incentives can get strange, but that's the mindset to understand from executives.
If you want to convert someone into a cut-all-government right winger or libertarian, send them to work in government for a few years.
If you want to convert someone into a communist, send them to Wall Street for a few years.
Any sane person exposed to any human institution will typically walk away thinking "burn it all to the f'ing ground."
All human institutions tend to be loaded with self dealing, perverse incentives, and incompetence. We are not good at this.
The only thing that checks it is companies going out of business or the government analog, which is struggle between agencies for funding and accolades. But as others have said large companies can muddle on for a long time and large anything can amass a lot of political and cultural cache and become too big to fail.
Democratic government has an incentive to serve its constituents, while a company has an incentive to make profits for its owners. Even if companies are more efficient than government, they are more efficient at the things that only benefit a few people (the owners), and sometimes at the harm of everybody else. At best, a company is indifferent about public good.
For management in companies, the key resume drivers are team sizes and budgets to show how “experienced” they are. There are definitely adverse incentives. A lot of empire building goes on as managers try and grow how much they oversee to move up.
One of the reasons expensive consulting agreements, especially those backed by strong brands, are so prized in large companies is because they offer career insurance paid for by the employer that covers the employee. If you are an employee who has decision rights you have far less to gain from 20% less cost than you do 10% more certainty and a strong name to hide behind.
In most large companies, they often talk about entrepreneurial spirit, efficiency, ruthlessness innovation, and all of the other behaviors that made the company great, but the reality is that the incentives are much different once the founders have left and career managers have moved in.
What’s left is a lot of people who make enough to not be hungry but are not rich enough that they will be okay if things blow up.
If you want to grow in middle management your best bet is lots of headcount, a large operating budget, and lots of promises that will take years to be validated.
This is human behavior. It doesn’t matter if it’s private or public, when people get together in groups to do business there tends to be similar behavioral patterns and outcomes. This is why almost none of the stories of differences between governments and corporations are true; people are people. Also there are plenty of government cases of being rewarded for efficiency, and cases of corporate employees being punished for saving money. I’ve heard bunches of stories here on HN of programmers complaining about being demoted or fired or flatly ignored when economizing business processes.
> In a private company you get a bonus for being efficient and saving the company money
Private companies get bonuses for wasting money and besides the money wasters don't care because it is not their money.
The unspeakable money burning that goes on in my workplace is insane. Infact, I have seen first hand that, people who wasted most money(despite no useful outcome) get promoted quickly by several ranks, which means anyone wishing for a promotion now finds elaborate ways to waste more money.
At some size a corporate and government have a lot of similarities. Much more then small vs big companies. Only difference I've seen is that companies do a big clean up every now and then, which helps although doesn't solve everything. Governments just keep pestering on.
> in a private company you get a bonus for being efficient and saving the company money
You're more likely to get not much more than a pat on the back, and then be expected to work with the lower budget for eternity, even if your savings were a one-time overhead hack.
Government contracts are a snake pit. It's the first thing that disillusioned completely from government efficiency. It has an insane degree of collusion and overbilling.
At least with cost plus the producers have an incentive to dedicate enormous assets to build the thing.
Government contracting is murderously complex, and factorially moreso when it involves the military.
Being off a few percentage points of the initial cost estimate can mean the difference between a profit or an 8 figure loss or more. If the profit insurance wasn’t in place, fewer contractors would take the risk.
As someone who used to work in the industry, whole reason for Cost Plus is with more traditional contracts, there was a ton of paperwork showing the government wasn't getting ripped off which is obviously crazy expensive as well. So whole point of this fix rate system is government puts out "We are going to pay X for Y with profit of Z, take it or leave it"
> It really is. You have to actually be good at what you’re doing too, of course, or the whole scheme falls apart. What the client’s money really buys, though, is that delightful feeling of making the thing somebody else’s problem. You know, we’ve turned it all over to a top-tier expert, and now we just don’t have to think about it anymore. The more that person charges, the more reassured the client feels.
Do you keep a gardener on staff? Or hire one every couple of weeks? Or do you do it yourself? It all depends on the size and frequency of the job, your skill set, how much your time is worth, how old you are etc.
The same applies to nearly every economic transaction on the planet. It’s always more expensive to have someone else do it. IT contracting shouldn’t be any different. Sometimes there’s a job that it makes no sense to try and do yourself, or have permanent staff do.
My understanding is this preference is a little known schism in Britishisms and American English.
In American English, a scheme is an unscrupulous, nefarious plan villains make. Often accompanied with riotous laughter.
In British English, it's more general. Like a plan, but with superficial consensus and often spreadsheets. Trees die, but people don't. You see this neutral usage in government discussion regularly.
It also reminds me: Europeans speaking English often use 'simple' before they start demonstrating things. Often painfully non-obvious things. Really boxes my ears. If it was simple I wouldn't be asking for an explanation and now you're insulting me.
I agree. Scheme sounds like its some kind of evil plot, but truly it’s just a matter of mutual respect between the consultant and client, and – crucially – the consultant’s self respect.
Poor word choice aside, the advice really is solid. I’ve been a consultant for nearly 20 years, the last 10 as an independent, and it took many years of screwing this up before coming to mostly the same conclusions.
I felt the same. I took that as a bit of the author’s impostor syndrome showing through (perhaps feeling, even after all this time, that charging what he’s worth feels dishonest somehow).
Fixed pricing put lot of risk on the creator, but hourly pricing there is no risk. I prefer a proper balance of partially fixed, with a limit and out clauses, and then maintenance and further development on an hourly basis.
Could you give some examples of out clauses and limits? This sounds very appealing to me as someone who has gotten bit by the “one more thing” loop but has had a hard time selling hourly.
The missing piece is retainers. They are IMO the cheat code of consultants because you can stack them and they are more stable. Being "available" has a price that way too many consultants don't charge for.
it's an interesting point, could you please go into a bit more detail on how you structure the retainer (certain amount of hours per month)? How many you can stack and so on?
i managed to change a multi year engagement that was billed hourly or by day into a fixed retainer. not knowing what to charge i simply asked the client to tell me what it was worth to him. he chose the amount that i earned with him in the past year. i accepted that, figuring that i would renegotiate if the work got more, or simply not be available for more work than what the retainer was worth to me. what happened in practice was that the work got less. this is circumstantial of course. it happened mainly because we both moved cities and were no longer able to work face-to-face. arguably that made my work more efficient as i no longer had to spend time to travel to the office and i could parallelize multiple things that i was working on. my effective hourly rate ended up being somewhere around $300-500. you can't charge that when billing hourly. i happily would have worked two or three times as much without asking for more.
I've had concurrent retainers, but I'd avoid over-stacking them. Retainers are a liability, you could have multiple clients ask for hours simultaneously, and you'll suddenly be very busy. Weekly retainers are better than monthly because they smooth out the hours.
Personally, I divide my availability into contracts and the more concurrent contracts I have, the more I pad for overhead. So one 40 hr/wk contract vs three 10 hr/wk contracts.
It's possible to stack more, as often retainers aren't fully used, but I think it risks the relationship with clients, which is worth more than over scheduling yourself.
> What the client’s money really buys, though, is that delightful feeling of making the thing somebody else’s problem. You know, we’ve turned it all over to a top-tier expert, and now we just don’t have to think about it anymore. The more that person charges, the more reassured the client feels.
The way it was phrased to me was "they're paying for your confidence". Confidence that you can just come in and get the job done without too much trouble for them. That was pretty much the best advice I got as a consultant. His advice about doubling what you think your rate should be is also good, and when my company started doing that, we didn't lose clients, instead we moved up-market and actually ended up working with better clients on much more interesting projects. I think both nuggets of wisdom are of a piece: act like you're an expert that is paid commensurate with your success rate. Of course, you have to back it up, but isn't that an implementation detail?
This all sounds very appealing on the consultant side but I am not very convinced on the buyer side. The argument that with hourly you can get rid of consultants faster might work on people with medium to large budgets but fixed pricing has the guarantee that at least at the end I have X or I don’t have to pay. People with small budgets often don’t even have the money to burn testing out a consultant with nothing to show for it.
I don’t know how it’s typically done but if I’m taking a fixed cost project as a consultant I’d ask for some portion up front. If you can’t even put up a portion or pay for the first few hours then how are you gonna pay for the actual project? If (not when) it starts making money? Might as well look for a “cofounder engineer” willing to work for equity.
The part that consultants don’t talk about is that you have to pay them to learn your code / company too. Nobody can just jump in and add value immediately. So you’re paying for onboarding hours, you’re paying for other employees to educate the consultant, and so on.
Likewise as an engineer, I think the most interesting projects and companies err towards primarily full time people. So if my goal is to work on the most interesting projects, I’d want to work full time.
A lot of consultants, for example someone helping with SOC2 compliance, is mostly copy pasting a large document with recommendations and moving some paragraphs around based on interviews with the team.
Not different from your average lawyer helping with an estate plan or will. The reality is that for many things you do want the cheapest lawyer, because the project is simple and repetitive. It’s the uneducated that pay more. So yes for a murder trial I want to pay a lot for a lawyer, but for small things I don’t, and you shouldn’t either. I simply don’t buy the analogy.
Finally, while consulting might be good for cash flow to hours-worked efficiency, it’s not clear it will make a person wealthier than other forms of income. I’ve met rich employees, founders, but not so much independent consultants.
That said, here are some of my own, condensed across experiences:
- An executive wanted to use ML, couldn't get enough political capital to build a full-time team (and didn't have the knowledge to interview candidates anyway). A very small consulting firm, sourced from high personal trust networks, got an MVP going. That led to a FT team getting built. Code was a mess but started the flywheel and after several years everyone agrees it was a great ROI
- A large company had a tiny team using a technology that would be standard for FAANG but they had no support or training. Zero progress for about a year. Not important enough to throw huge money at but that link in the chain was becoming a bottleneck for the core product. A consultant came in explicitly as a multi-week trainer, and but the team just never got up to speed. Consultant's code examples grew until they were just direct bugfixes, and though nobody was happy, at least the crisis was resolved.
- A product finally reaches product market fit. Executives decide to hire only after the team is drowning in tech debt. But it has to be full time, and it has to be junior. It takes months, then requires training. Tech debt is twice as bad as the original crisis level when the new hire becomes value positive. For some bizarre reason he leaves after exactly 2 years.
Many consultants have a branding problem: Their biggest victories are fixing a disaster that their clients would rather not talk about publicly. Hard to put on a billboard, if you ever want work from that client again!
Usually the internal staff knew the business well but were weak on the technology they were using. No amount of training seemed to fix that.
The only downside for me was the travel which was why I used the downtime between jobs to pivot to developing my own product.
This is the best advantage. Being an "outsider" in the sense of having a special role (age, status, etc) can be a huge aid in avoiding bullshit.
The US seems pretty distinct in that you can be a laborer and have quite high incomes. It's not unheard of to see people in major cities within the US having 7-figure incomes and still being an individual contributor in their field. Most of the "consultants" I've heard of outside of the US are only "rich" in that their incomes are high for their region (charging HCOL US rates while living in a place that is LCOL) or they're not doing labor anymore because they own a consultancy firm. In the US, I think consulting isn't worth it unless you are extremely lucky. You're more likely to see high income by trying to join FAANG.
I've been one of these people with the 7-fig incomes in the US. Unsurprisingly, you'll see a lot of data points like mine here because HN is primarily focused on the US audience since YC is a US (primarily silicon valley) company.
That depends on the project and how much domain knowledge the consultant/contractor has. I've certainly been able to contribute on day 1 on several of my gigs.
> I’ve met rich employees, founders, but not so much independent consultants.
May depend on the market, and what you mean by 'rich'. Consultants rarely get stock, but they often make out far better than employees. I've met very few employees that got anywhere near 'rich' but consultants in London (for example) can certainly become quite wealthy.
> The part that consultants don’t talk about is that you have to pay them to learn your code / company too. Nobody can just jump in and add value immediately. So you’re paying for onboarding hours, you’re paying for other employees to educate the consultant, and so on.
as somebody who's been on the team, i agree on this. in my previous job my skip-level management insisted on handing off some crucial infrastructure work to external consultants.
results:
1. we on the (internal) devops/sre team did not know how parts of our infrastructure worked
2. when changes were needed, the first lenghty step was to figure out what was built by the consultant, and how (the manager did not like to pay the extra hours, of course)
3. when help was needed to troubleshoot something along with developers, we (devops/sre) ended up playing the role of messenger, and stuff that could have take anything from 2 hours to two days ended up taking up to two weeks
It was a frustrating job, so of course some people (me included) ended up leaving the company.
I still see the value of consultants as people that can bring the knowledge you need when you need it. However if they're going to work on something long lived, the manager must be enforcing some proper knowledge transfer during the consultant employment and at the end of it.
Why should they? That's a given. Of course they don't know your code. But it's likely they've seen more code than a typical employee and therefore have more experience to contribute. A consultant is a serior employee sans the commitment.
To your point about time, consultants don't need 1 v 1s, quarterly / annual reviews, etc.
I understand why your cynical. I've seen some half-ass'ed consultants as well. But I've seen just as many stale, complacent, and complicit employees.
You also pay for the psychological friction and pressure that the consultant has to suffer from the fact that customer expects them to be geniuses with magical powers and the project managers planning the time line according to that.
Hmmm, I do this all the time. I've taken a bunch of bad data analytics, ML code from my clients and quickly given them insights that more than paid for my work.
A true expert can often come in and "fix" things quickly.
Deleted Comment
Feels like there's a parallel in consulting. The best ones will coach you to replace them with full-time hires. That being said, there are a lot of occasions where reality means that contractor may be the better option and a win.
(I've been on all sides of this)
When you are paid hourly, you work at the customer’s whim, and are often treated like an employee, or worse. You are essentially just a body for rent.
When you have a fixed price, you retain full autonomy. It’s up to you to decide the schedule, as long as you deliver on-time and within budget. The customer can’t change scope without your agreement. You feel like an actual human being.
When the scope is clear and I have a feeling that the client won't be the demanding type with frequent, unplanned changes I often prefer fixed price.
If the scope isn't clear though, or if I get a feeling there will be a lot of incoming change requests, I'll go hourly.
Why not a new fixed price for each change?
The 12 hour days to meet some crazy deadline also disappears pretty quickly when you are paying for all the hours. I won't even accept fixed-price contracts anymore.
If someone loses their autonomy as a contractor that's all on them, not the contract. I was always very clear that it was a B2B relationship with my clients.
Hourly rates also meant that if projects went long, or other work became avail, I would usually just continue to work on it, which can become quite lucrative. Fixed-bid contracts always gave the client a reason not to sign another contract. Time and Materials contracts meant a 3 month contract could easily turn into a 9 month contract, no new contract necessary.
As another poster mentioned, you very much have to be selective. A lot of time our first contract will be a fixed price with a client to show our ability to deliver, so in that instance we lose a little to gain a client. It's a balance and it's not an easy life for anyone.
Consultants can be beaten and battered on behalf of an internal team and those that are good realize that in many instances that's what you're hired for.
Fixed price sounds like a great idea, but if you can't trust management, even middle management, it will rapidly turn into a disaster.
But wouldn't it better for both consultant and customer to agree regular "gates". Agree on $100k of work for 10 units of work or whatever, but agree that it's paid in instalments of $10k every time each milestone is passed, ensuring that any misunderstandings are understood sooner.
The customer would benefit in that they don't have to wait 3 months to get a waterfall delivery which perhaps meets the spec, but not their requirement
The consultant benefits in that they don't do 3 months of work and don't get a penny until the customer is happy
The contract should also describe what happens when those milestones are not met, e.g. for every day that milestone X is not met, then milestone Y will be pushed back accordingly, or the cost for Z will go up by some amount.
A well written contract should make it almost irrelevant whether you're getting paid hourly or for a fixed cost, because you (and the client) are covered either way.
Having said that sometimes it can work in your favour. I did one project for a pharmaceutical company where I just happened to have several pieces of knowledge that they needed and they were losing a lot of money waiting for a solution. The first thing they said to me when I walked in the door was "we are so glad you are here, we have been looking for a solution for ages and are losing a lot of money every day". Eight days work kept me going for the whole year.
With an hourly contract, we're on the same team and try to use me for the most valuable stuff as long as you have me.
I heard this is true in government, and it was presented as an example of why government has the wrong incentives, and private companies are much better: in a private company you get a bonus for being efficient and saving the company money, whereas in a government you get punished and they shrink your department. So I was surprised to see it presented here as a thing that happens in big companies too (but I've only worked with very small companies).
It happens at small companies and medium sized companies too. I've seen it as both a contractor and an employee.
Like much common wisdom, the idea that companies are efficient (and specifically more efficient than government) is a myth.
The claim as I've understood it is more that a private company puts control over efficiency more directly into the hands of the people whose money is being wasted.
A government entity is typically nominally accountable to the taxpayer, but that accountability is through so many layers of indirection that it doesn't actually do anything. A privately owned company with a small number of owners will in theory be more responsive to monetary pressures. I think where this breaks down is with ridiculously large publicly traded companies where stock price has more to do with shareholders betting on the irrational behavior of other shareholders than it does with the actual performance of the company.
When the owners of the company make money when the company makes money, it will typically straighten out its inefficiencies. When the owners of the company make money by buying and selling abstract financial instruments, not so much.
Government on the other hand, has no such feedback loops and misaligned incentives which produce enormous fraud, waste, and abuse. There is no example of government being more efficient at any activity. Pick one, and there is a counter example in private industry doing it better for less.
There is a book - Recoding America - that gives a behind-the-scenes look into government IT and the more recent changes that improve efficiencies and outcomes. It was published in the last 2 or 3 years and your local library almost certainly has a copy.
FYI - the first chapter or two seem to imply developers are to blame for things that are truly the fault of leadership; power through that section and the rest of the book shows developers in a different light: perhaps she was setting up a strawman to make the change look even better.
So Many times it's due to having never dealt with the problem themselves, but not always.
Ah ah ah, good joke. A manager in a company get promoted because more peoples work under them, not because they managed to keep the numbers low.
In a company, the bonus you get for being efficient is "thank you" (if you're lucky) and the CEO buying a new lamborghini.
haha, good joke
every time I've saved company money and made them more efficient my reward was: more work for the same salary.
It certainly makes sense, but the behaviour that logic incentivizes leaves much to be desired.
If I go to the store today and buy groceries, it’ll cost X. If I go tomorrow as well, it’ll cost Y. The two numbers are barely related to each other. And only because I don’t need the things I bought yesterday.
And yes, that’s day to day. What about year to year?
Last year, I did not need any repairs to my house. This year I do. A few years ago, I needed a new roof. Three different year, three radically different home repair budgets.
The entire exercise is a refusal to due diligence of any sort. If you say $X/yr, then you don’t have to ask why. You don’t have to scrutinize reasons. Then everything becomes about adjusting this number without ever asking what it is being used for.
Yes, I agree that incentives can get strange, but that's the mindset to understand from executives.
If you want to convert someone into a cut-all-government right winger or libertarian, send them to work in government for a few years.
If you want to convert someone into a communist, send them to Wall Street for a few years.
Any sane person exposed to any human institution will typically walk away thinking "burn it all to the f'ing ground."
All human institutions tend to be loaded with self dealing, perverse incentives, and incompetence. We are not good at this.
The only thing that checks it is companies going out of business or the government analog, which is struggle between agencies for funding and accolades. But as others have said large companies can muddle on for a long time and large anything can amass a lot of political and cultural cache and become too big to fail.
In most large companies, they often talk about entrepreneurial spirit, efficiency, ruthlessness innovation, and all of the other behaviors that made the company great, but the reality is that the incentives are much different once the founders have left and career managers have moved in.
What’s left is a lot of people who make enough to not be hungry but are not rich enough that they will be okay if things blow up.
If you want to grow in middle management your best bet is lots of headcount, a large operating budget, and lots of promises that will take years to be validated.
Private companies get bonuses for wasting money and besides the money wasters don't care because it is not their money.
The unspeakable money burning that goes on in my workplace is insane. Infact, I have seen first hand that, people who wasted most money(despite no useful outcome) get promoted quickly by several ranks, which means anyone wishing for a promotion now finds elaborate ways to waste more money.
You're more likely to get not much more than a pat on the back, and then be expected to work with the lower budget for eternity, even if your savings were a one-time overhead hack.
For professional work there is often a rate table.
Many companies are internally every bit as centralized and dysfunctional as the Soviet Union.
https://www.smalltofeds.com/2014/09/fixed-price-versus-cost-...
No matter how bad you are, you end up making profit. Combines worst of socialism and capitalism.
Government contracting is murderously complex, and factorially moreso when it involves the military.
Being off a few percentage points of the initial cost estimate can mean the difference between a profit or an 8 figure loss or more. If the profit insurance wasn’t in place, fewer contractors would take the risk.
> It really is. You have to actually be good at what you’re doing too, of course, or the whole scheme falls apart. What the client’s money really buys, though, is that delightful feeling of making the thing somebody else’s problem. You know, we’ve turned it all over to a top-tier expert, and now we just don’t have to think about it anymore. The more that person charges, the more reassured the client feels.
Great advice.
Do you keep a gardener on staff? Or hire one every couple of weeks? Or do you do it yourself? It all depends on the size and frequency of the job, your skill set, how much your time is worth, how old you are etc.
The same applies to nearly every economic transaction on the planet. It’s always more expensive to have someone else do it. IT contracting shouldn’t be any different. Sometimes there’s a job that it makes no sense to try and do yourself, or have permanent staff do.
Edit: to be clear, it’s a fine word choice. It just jumped out at me.
In American English, a scheme is an unscrupulous, nefarious plan villains make. Often accompanied with riotous laughter.
In British English, it's more general. Like a plan, but with superficial consensus and often spreadsheets. Trees die, but people don't. You see this neutral usage in government discussion regularly.
It also reminds me: Europeans speaking English often use 'simple' before they start demonstrating things. Often painfully non-obvious things. Really boxes my ears. If it was simple I wouldn't be asking for an explanation and now you're insulting me.
Poor word choice aside, the advice really is solid. I’ve been a consultant for nearly 20 years, the last 10 as an independent, and it took many years of screwing this up before coming to mostly the same conclusions.
Personally, I divide my availability into contracts and the more concurrent contracts I have, the more I pad for overhead. So one 40 hr/wk contract vs three 10 hr/wk contracts.
It's possible to stack more, as often retainers aren't fully used, but I think it risks the relationship with clients, which is worth more than over scheduling yourself.
The way it was phrased to me was "they're paying for your confidence". Confidence that you can just come in and get the job done without too much trouble for them. That was pretty much the best advice I got as a consultant. His advice about doubling what you think your rate should be is also good, and when my company started doing that, we didn't lose clients, instead we moved up-market and actually ended up working with better clients on much more interesting projects. I think both nuggets of wisdom are of a piece: act like you're an expert that is paid commensurate with your success rate. Of course, you have to back it up, but isn't that an implementation detail?