Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How I went from $100-an-hour programming to $X0,000-a-week consulting (kalzumeus.com)
1034 points by atomical on Nov 19, 2012 | hide | past | favorite | 261 comments


There seem to be a lot of comments centered on “wow, this sounds great – I wish I could charge more” or “how do I find these high paying contracts”?

Here’s one way. It may seem obvious to many, but I think it bears stating.

If you are looking for consulting contracts that pay really well, focus on providing a service that helps companies make money rather than save money. In other words, help grow revenues rather than reduce expenses – people pay much more for that.

Here’s the reasoning: When business managers, executives, etc. are given targets, they typically relate to increasing revenues much more often than reducing expenses. Not surprisingly, increasing revenues is therefore “front of mind” for those with budgets to make it happen, and they see tremendous value in someone who can help them do that. The fact that a little automation in the accounting system will save a data entry clerk a few hours a month – hmmm...maybe next month.

Case in point - I remember reading a comment somewhere from a Google employee who was complaining that at Google, those working on the revenue generation side of the business (i.e. advertising, adwords, etc.) got all the “love and attention” in terms of getting the resources required to get their job done, while others working on more obscure projects had to put up with leftovers. Now I’m not sure if that is actually true at Google, but I wouldn't be surprised as I've seen it at many other companies – the “rain makers” are the darlings with dollars to spend, and the back office ops folks are left to struggle with fewer resources. All injustices aside, find a way to provide something to the rain makers.

The type of work that Patrick does directly improves revenues. If you are a DBA selling tuning services to help companies re-write gnarly queries for example, well, unless a slow performing query/process is directly impacting revenues in some way, it likely is a secondary priority in devops/support where budgets are tight and “learn to live with it” is becoming a way of life.


I humbly disagree with your theory that making money for a company is more valuable than saving them money.

As a marketer/rainmaker, I can assure you that I get much further with clients when I can cut their advertising and marketing costs, or cost per acquisition, than when I find them more profitable traffic and revenues.

My clients never scream, bring me the rain... They demand, "Bring Me More Rain For Less Money."

I think the dynamic going on is that people hate losing money, and when you find them wasted money they can save, they view it as "their rightful money,not something you got for them." In fact, saving them money that they were wasting can really rattle their ego, and make them feel like they were taken advantage of, and who wants to be the bearer of bad news?!

Making money for companies though is just not powerful enough to be the end all solution to rake in the dough.

Being able to find cheaper traffic and revenues to generate proportionately less traffic or revenue is a much bigger win. (i.e. if you make them $1000 at a cpa of $100 a customer... you are better off generating for them $800 for a $75 cpa... even though the rain is less, the cpa is better, which makes them look really good, and is a defensible place to be...


You're still way up the pointy end of the business though. You are directly involved in acquiring customers.

I think the OP was making the contrast more with people who try and reduce the companies admin overhead slightly by automating parts of the accounting system.

That type of thing is easy for a company to put off and involves getting through cultural change and threatening people's turf to implement. A harder path.


Agreed. My point was simply being a rainmaker isn't enough. You need to give your boss or client a defensible position to take about hiring you. One that makes them look good to their bosses, boards, etc... (i.e. lowering a CPA sells a much stronger fantasy than acquiring customers at a higher but acceptable rate.)


I was going to write the same thing: it's really really difficult to get clients when your pitch is "I can increase your revenues" because the average client wonders if you can deliver on your promises. But when you talk about saving money they are all ears.

When I was 12 a friend of my dad's was complaining about problems managing his warehouses and I offered to write him a program that would solve his problems and save him money.

That's how I got my first job, writing some code for $70 an hour, not bad at all.

Right now I'm working on a project that has a long list of clients (clients, not users) signed up and hasn't even launched.

Our catch? we are not only better than the competition, we're up to 40% less expensive.


Thanks for sharing. It's interesting to note that within a profit center (marketing), cost cutting is useful.

I think it depends a lot on your audience. If you're selling an IT system to an IT director, you can emphasize the cost savings. But if you're selling the IT system to a CEO you might emphasize how it helps the company's customers and leads to more revenue in the long run.


> There seem to be a lot of comments centered on “wow, this sounds great – I wish I could charge more” or “how do I find these high paying contracts”?

Actually, I'm wondering how can I get gigs that pay $100/hour in Japan.


As someone who is currently living in Japan, but only working remotely for companies in the US/UK I'm kind of interested to know how you find work here? Is it hard to get contract work? Where do you look? What is the pay like?


Personal contacts, recruiting agencies, job boards (but not craigslist). You're probably better off working for companies in the US/UK. Freelancing is not as common as it is in the US, large and mid-sized companies much prefer to deal with other companies rather than individual freelancers.

But you seem to specialize in relatively rare skills, so you might have better luck freelancing than the average web developer. Feel free to shoot me an email (I'm out of work at the moment so probably not the best person to give this sort of advice, but on the other hand I've been in this country for a long time).


I get the impression that most of patio11's high paying clients are not in Japan (please correct me if I'm wrong Patrick).

Yes, there is freelance work in Japan, but a look at any job board will show that tech salaries are not as high as US/UK jobs. In my experience that seems to affect freelance rates.

I do a mix of US and Japanese freelance work. Personal contacts are the big one for me. Without high level Japanese you may be limited to the foreign tech community.

That community is small but it still can take some time to build up a network. Took me about two years here until I started to get a good amount of Japanese freelance work.

You may both be aware of it already, but if not, the Hacker News Tokyo Meetup is as good a place as any to start: http://hntokyo.doorkeeper.jp

For me the biggest advantages of local work are working with people in person (I got tired of remote only work), and the untapped opportunities in web and software from the US/UK being ahead in those areas.


I can't agree more. 8k as a Rails dev? Converted to USD at current rates I make about 4.9k as a C++ dev. I feel like I am doing something seriously wrong. :/


It all depends on where you live. When I lived in the Southeast US in a non-tech-center people were offering one third of that 96/yr number for an intermediate rails developer (this was considered by the community to be a low offer http://whatyoupayfor.pen.io/ ), so you probably couldn't get a full time gig for that no matter how good you were. Now I live near Boston and that number sounds perfectly reasonable.


This is a great point. I've been trying to think of as many things programmers can do that increase revenue as possible.

A/B Testing and sales funnel optimization is definitely a winner.

- Optimizing how a company utilises it's resources

- Optimizing the speed and performance of a critical business function.

- Increasing marketing reach

- Generating more sales leads

What else guys?


The obvious thing to do is to find ways to incorporate Growth Hacks into the product.

One such formula would be to browse API's on programmableweb, and other places looking for opportunities to leverage other sites audience as a platform.

Another thing you can do is profile an audience and crunch big data to help find new opportunities...


I actually think of your first two points (optimizing...) as cost cutting services, while the other two are good examples.


Yeah, should have been more specific. If they result in the company getting more sales done with the available time/resources then they add to revenue.

The company could of course treat it as "doing more with less" and therefore use it for cost cutting instead. Depends on the situation.


I guess that depends on if they could hire twice as many people in sales and double their revenue. If there are diminishing returns, then it could be a revenue generator.


It depends...

Although focusing on growing revenue is psychologically more comforting, economically saving on expenses is more beneficial.

When you save 1 dollar, your profit increases by 1 dollar.

When you sell 1 more dollar, your profit increases by 0.1-0.9 dollars (depending on your margins).

To put it differently, if a client is a mature company that is growing 3% annually and which gross margin is 10%, probably saving expenses is a better value proposition.

If a client is growing 100% annually and has gross margin of 90%, then, obviously, increasing revenue would be perceived a better value by the client.


Yes, but

Savings are naturally limited, growth is potentially unlimited

Let's say your company sells a product and it costs $10 to make it. You can go and maybe make it cost $9 to make it, but not much less. So you improved their profit by $1 (hopefully)

Instead, if you can make it sell 10x more product (which could be feasible), hence having a better effect than savings.


Let me put my finance hat on :-)

>> Savings are naturally limited, growth is potentially unlimited

That's in theory - check annual revenue growth rates of most big companies in mature [developed] markets - if you increase it from 3% to 5% you are hero.

>> Let's say your company sells a product and it costs $10 to make it. You can go and maybe make it cost $9 to make it, but not much less. So you improved their profit by $1 (hopefully)

If you reduce cost or expenses by $1, you improved profit by $1. There is no hopefully, this is how things work.

Also, most of the savings are in operating expenses, not in cost of goods sold.

>> Instead, if you can make it sell 10x more product (which could be feasible), hence having a better effect than savings.

Exactly as I said, it depends on the company. Probably, you are using a start-up as an example, which is another Google, which annual revenue is growing 150% month-on-month and which margins are 70-80%.

I highly doubt how anyone can make it sell 10x more product for a traditional multinational company - FMCG, Farma, Financial Services, etc. Let's be kind of realistic ;-)


Oh sure, sometimes in saturated markets it's easier to increase profits by cutting costs.

"There is no hopefully, this is how things work." Of course.

But with your new unit cost you may want to cut the sales price of the product, expecting to sell more, or something like that. You may also cut your costs and then it backfires. That's where the 'hopefully' part comes from


> If you are looking for consulting contracts that pay really well, focus on providing a service that helps companies make money rather than save money. In other words, help grow revenues rather than reduce expenses – people pay much more for that.

But decreasing costs by $1 is mathematically the same as increasing revenue by $1--it increases profitability by $1. Which means any process or mentality that prefers one to another is biased in a bad, purely self-destructive way.


The problem is that reducing costs doesn't typically scale. If you want to grow a businesses profit significantly, you need to increase sales. It's entirely reasonable to double your sales. It's pretty difficult to halve your costs.


In order to double the profits you need to either double the sales or eliminate all costs.

Or do a mix of both. Doubling sales multiple times is more likely than making profits on your infrastructure... Amazon AWS is probably the exception here.


How much you need to reduce costs, in order to double your profit, is dependent upon your current costs and revenue. So you don't necessarily need to eliminate all costs to double profit.

Suppose you purchase widgets from a manufacturer for 100$ and sell them for 101$. In that case, 101$(revenue per widget) - 100$(cost per widget) = 1$(profit per widget). Suppose you then change manufacturers and reduce your cost per widget to 99$. You now make 2$ profit per widget. By reducing costs by 1%, you doubled your profits. Much easier than doubling your sales.


In theory, yes, but if you have a profitable business with a 1% margin by definition it already has to be absolutely giant (e.g. Amazon) to be making money. And to reduce costs at this scale is harder than increasing sales.


It's about the psychology. One thing I've learned from consulting gigs etc is that clients are irrational and you have to learn to deal with it. If you can do the same amount of work but get more kudos for it, why waste energy on the low-rewards activities (i.e. saving money rather than "making money").

So you're right from a programmer's perspective, and about the unhealthy bias. But most people don't think like that.


Except there is a limit to how much you can reduce costs, not to how much you can increase revenue.


It depends on how you add $1 to revenue. If you do that by increasing prices, you are right. If you add $1 by extra sales, you have to take the cost of delivering the service/product to the client into account, and there is often a marginal element to that. In other words, your cost base is not totally fixed. So some of that dollar is eaten up in delivering the service


It's not the same because you will pay slightly more tax on that $1 going up, and slightly less tax on reducing your costs.


So your advice is isomorphic to the time-tested "get close to the money"?


Also, if you're pitching money savings then you're moving the client into a money saver mindset which might make them think your rates are too high.


Damn, that sounds nice. I wonder if system admin/architecture can be modeled that way. I'd love to bill even a modest $2k/week, rather than trawl craigslist, responding to posts for "unix/linux ninjas" then having shops balk at anything over $20 an hour.

I don't know how many messes I've cleaned up (likely left by people charging a hell of a lot more than me) for really low rates.

I know, I know. Craiglist and other online boards are the dregs of the job market. But I have no network (few friends, few contacts), and I only do remote work. I take what I can get, but it sucks to see half-assed admins getting the gravy.


It's cheesy, but "build your brand" is relevant to your situation. When a customer comes to you, rather than you going to them, and they've come to you because of something specific and awesome you've done or written, you can set your price and the customer will not balk.

Many years ago, I did consulting at $125/hour, but if I was going on-site (particular in another city), I'd bill by the day, at $1000/day (often putting in 10 hours a day, so $100/hour) with some sort of minimum in place, so I wouldn't drive or fly somewhere to only be needed for one day. The reason I could charge what I did was because I did some stuff that led to me being well-known. I wrote a book; it didn't sell very well, or pay me much, but when you say, "I wrote a book about system administration, published by No Starch Press" it raises you to the tier of people that can charge $125/hour without hesitation.

Also, when you have a long-running consultancy that specializes in one niche (mine was web caching, website acceleration, etc., though I also did good business in developer infrastructure, like building systems for packaging and testing and revision control, etc.), you'll have fewer customers, but they'll be customers who will value your skills. A jack of all trades, who is actually really fucking good at all trades, is incredibly valuable, but it's difficult to market that because it's difficult to prove you're really good at everything. Proving you're good in one field is just a matter of following the mailing lists and forums in your field, and being talkative and helpful, writing a blog about your subject, and eventually turning all that writing into a book or magazine articles or something.

Of course, I never took it to the next level, as this article discusses. I was still billing by the hour, and still being thought of as a (pretty high end, and difficult to find) commodity. So, I made a decent living, but it didn't scale.


It sounds pretty good - but I wonder what you're doing now, given the post is written in the past tense?


I'm one of the founders of Virtualmin, Inc. We were a Y Combinator company in 2007. We are still in business and profitable, and growing (though slower than I'd like, of late, but I have pretty good theories on why we have slow growth and we've begun correcting the trajectory). I make less money than I did doing contract work, but I'm much happier and don't often have work-related stress anymore (being an IT contractor is being the guy who has to fix things Right Now!, because for many businesses, by the time it's bad enough to call the guy who charges $1000/day, it's pretty darned bad).


In sysadmin work it's easier to make large consulting fees. The problem you have is that no one spends the money for good sysadmin architecture/infrastructure. So you can't sell "good practices". Instead just focus your work in loss aversion, not value creation. People will spend more for a emergency room doctor/hospital than a gym membership.

The keys are two simple things:

1. Be able to quickly fix expensive problems.

2. Make sure people with expensive problems know about you.

I've routinely seen multi-million dollar projects held up for months over things a skilled sysadmin can solve in a day. You just have to be at the receiving end of that 911 call, and not afraid to quote a big flat fee for problem resolution.


>The problem you have is that no one spends the money for good sysadmin architecture/infrastructure.

I disagree with your statement. I am currently in Chicago just completing the infrastructure implementation for a large enterprise client where I specifically was brought on to do their tech infrastructure.

They pay a lot for this service.

Here is my scope of work:

Physical cable plant design

Physical network design (based on their corporate logical architecture)

Physical/Logical implementation (Procure, track, receive, rack, patch, power, config, test, coordinate, hand-off)

Turn up and test

Day-one operational support and hand-off.

Doing this for all their global offices.


I bet Team Romney / Orca would have paid handsomely for this at zero-hour, despite all the cost-cutting they did up front.


Yeah but some things aren't possible. A poorly architected system can't be fixed in an hour, or a day, in most cases.


Protip: don't ever reply to ads that ask for a "ninja" or "rockstar." Look for the more boring sounding jobs; they will have fewer people competing for the job, so you can probably make relatively better rates.

Also, why do you only do remote work? Is there no one near you who needs a sysadmin? Could you travel? People value face-to-face interaction a lot more than online; if you only do remote work, then some guy in Bangalore can undercut your rates (hence the $20 an hour offers), and you're not really offering much over him.

And as the original article says, don't charge per hour. Charge per week, or per incident. And charge rates that make sense for that kind of time frame. Read the original article; it has good advice. Once you charge per week (or per incident, based on a standard weekly rate), you can start talking about "OK, you want to spend less, which things should I not do", not "Well, I think I'm worth $50 an hour, but since I need the money, I'll take the job for $20"

Yes, for systems administration it can work that way. Here where I work we don't really have any sysadmins (or everyone's a sysadmin, which is even worse). We have developers, and we have tech support who support customer systems, and we all kind of chip in on the system administration, but we don't have anyone who's job it is to maintain our own network. It finally got so bad that we've brought someone in to straighten it out. I don't know the details of how he's being paid, but I could easily imagine it as "it will cost $5000 for me to track down your problems, reconfigure your core router, set it up in a way that will be more maintainable in the future, and write the documentation for running that."


> Protip: don't ever reply to ads that ask for a "ninja" or "rockstar."

No, please do reply. Then go in wearing leather pants, with white powder on your upper lip and reeking of Jack Daniels. Use a pawn-shop electric guitar to smash the fuck out of their interview room. Then stab somebody with a katana on your way out.

It's the only way these people will learn.


I like this solution.


I don't know about sysadmin work, but I'm pretty sure DevOps could be.

I worked at a company that ended up spending probably several man-years worth of effort over a period of three years on puppetizing their environment and still doesn't have a one-click-deploy of their infrastructure and feels the pain of that acutely every few months when a new environment needs to be brought up by hand.

If someone'd been around offering 30, 50 or even 100k no-cure-no-pay work to get their environment into a one-click-deployable state in under a month or so I'm pretty sure I could've sold that internally at several occasions.


I think this is the key - selling yourself as a 'sysadmin' is like calling yourself a 'programmer' - it's a commodity.

Instead you're a site scaling engineer, or a cloud automation specialist, whatever sounds like it'll solve the client's problems - which these days are frequently that a bunch of developers set up the production environment on the fly and it just about works but isn't reliable or convenient.

I think the future for sysadmin work is definitely 'DevOps' - and it's not really that much different from old school sysadmin. Yeah a pure Chef/Puppet-managed system is more like writing code than hacking away, but behind it all it's the same kind of work.

It is definitely possible to bill US$2k per week or more as a contract sysadmin, but trolling through Craig's List isn't the way to manage it!


Would love to know more about the remaining challenges to get closer of a one-clid-deployement after such a puppetizing effort.

Could you share some of the most important issues (technical or not) ? In advance many thanks.

I am really curious about your experience as we try to achieve the same objectives here with http://comodit.com


I found a great sysadmin on Craigslist ... I now pay a $600/mo retainer to have him on call up to 10 hours/month. I usually don't use all the hours, but sometimes I go over and pay more.

The situation works great for both of us.

I don't think Patrick's model is ideal for sysadmin work (who needs a sysadmin for an entire week?) ... but I think the retainer/on call model could be just as good ... get 10-15 companies paying $500/mo ...


Craigslist can be useful for finding some jewels, but you have to be completely willing to say "Fuck no." We had a form letter we would send to these companies basically saying "We know you don't think you can afford to work with us, but we know you can't afford not to. Let us know when you're ready."

It only worked a few times, but for those few times it was worth it.


> I don't know how many messes I've cleaned up (likely left by people charging a hell of a lot more than me) for really low rates.

Sorry to say it, but almost nobody hiring consultants gives a shit about cleaning up messes. If they did, they wouldn't need to hire consultants to clean up messes.

Don't clean up messes, or at least not the things that you perceive as messes but they don't. Just like the article says, solve problems that people with money know that they have. If somebody with a clusterfuck of a system is paying $30k/month for hosting and you can cut it in half with a month's work, then charge them $30k. They'll balk, but tell them they'll get paid back in 2 months. If they are too dumb to take that deal, fuck 'em.

I know it's painful to leave people with all the other messes they have. But if you're going to do charity work just because it makes you happy to tidy things, then do it for actual charities.


Have you considered remote classes on how to prevent the messes you have been called in to clean up?

Or even specialize in when shit hits the fan? I mean the advice to startups are always 'find a customer with their hair on fire'.



I don't know how many messes I've cleaned up (likely left by people charging a hell of a lot more than me) for really low rates.

The implication being that if a company only pays peanuts, they probably only employed monkeys before, and it'll be a head-wreck of a situtation.


as a first step, you could try patrick's advice of charging the same rate, but billing by the week (and of course speccing out the work in weekly chunks)


I ended up here on accident, but I can vouch for this system's value.

I WAS freelancing at between $75-$100/hour, but having to work very hard for every contract. On the side my partner and I were building software, selling a nice amount but nothing that was going to allow us to retire in a year.

However, suddenly people starting emailing us after purchase, asking if we could build custom versions for them. Most turned out to be duds, at first, and then something changed. Suddenly we're charging weekly retainers and working on near six-figure projects, all on business that sought us out because of our software.

Will this work for everyone? I'm not sure, but it did for us, and we didn't even see it coming.


Was this a particularly "niche-y" software that you had (perhaps unknowingly?) positioned yourselves as the leaders?

Presumably it wasn't The Next Big To-Do App but something that gave quite a bit of value.


It was our crowdfunding plugin for WordPress - http://ignitiondeck.com


I like the design but that automatic slideshow changing every 2 seconds is annoying... That close to the text it disrupts reading, and I don't even have enough time to watch the image (I can pause with mouse but by the time I learn that I'm already annoyed).

Reminds me of this thread "Don’t Use Automatic Image Sliders or Carousels": http://news.ycombinator.com/item?id=4595026


Thanks for the honest feedback. We've been wanting to update the page for some time, but just haven't found the time yet. Will keep that in mind for the next revision.


I'm working a lot on my open source projects, building a good portfolio. I'm hoping I can get to a point where I find something worth charging for, but for now I'm building tools on weekends and using a large and well-received portfolio to garnish some attention.

Great idea you've got there. I wish you only success!


Thanks! Oddly enough, we started building this to raise money for a personal project and only later did we decide to sell it. Turns out that was a smart move.

I can sympathize with your weekend pace. We worked on this for a year before it started getting any attention, and it's still not nearly as polished as we'd like it to be.


great! you actually solved a problem which others did not and you're a winner.


Two important points I learned was: 1) charge by the week, and 2) charge by the value you will be providing, rather than how much your time is worth.

Charging by the week allows you to not have to keep track of what's billable and what's not (e.g., you chatted with the customer on the phone for 34 minutes).

Charging by the value you provide avoids the conversation of "Hey, you're charging $200 per hour... that's more than I make. And that's like almost $400K per year! Can we get your rate down to like, $90?"

Instead, the conversation becomes, "We want to get at least $40K of value out of talking to you, but have only budgeted $10K for this exercise. How much value can you provide us over how many weeks?"

That was definitely an interesting writeup!


Excellent article.

1. I would be interested in learning more about what a programmer brings to the table in the consulting field. I mean, besides raw programming knowledge. The OP mentions Fog Creek as one of his first clients, a place that obviously is not short on programming insights. What does a consultant with programming chops bring that a non-programmer doesn't? Better ideas? Better tailored ideas?

2) Pedantic alert: "peek" is spelled as "peak" in the introduction.


What does a consultant with programming chops bring that a non-programmer doesn't?

The ability to write functional computer code, for one, which is a superpower.

Besides that, I speak the language, engineering folks generally like working with me over working with "icky marketing types", I have a good understanding of what is easy and what isn't in terms of implementation, I can spec projects or deliver prototypes without needing my hands held too much, etc etc. (And virtually my entire shtick is "Marketing objectives which are worth serious money to you can be achieved by writing carefully considered code.")


The ability to work with (and have the respect) of the engineers is definitely an asset that cannot be overvalued.

But in terms of writing functional computer code...how much are you actually writing? Is this code merely to wireframe/prototype something? Or is it an actually deliverable that the company will build atop?

I guess what I'm getting at is the usual cynical trope by engineers against consulting: that consultants are hired to tell you what you already know/should've known. So given a hypothetical company of such stature as Fog Creek, what is your strategy for convincing them that you can tell them something they don't know? I'm not saying that engineers are above needing consultants, it just seems like a culture that, as you point out, can be extra-resistant to being told by a third-party what to do, in lieu of a concrete deliverable.


But in terms of writing functional computer code...how much are you actually writing? Is this code merely to wireframe/prototype something? Or is it an actually deliverable that the company will build atop?

Depends on the engagement. There is code I wrote running in production at some clients. (Might want to keep an eye on the FC blog, as I expect there will be something interesting on there eventually, but until then that isn't my story to tell.)

So given a hypothetical company... what is your strategy for convincing them that you can tell them something they don't know?

I tell them something they don't know, and continue doing so until I win the engagement.

With specific reference to Fog Creek, I was active on their forums for a few years and folks there read my blog, so I wasn't exactly starting from a position of We Totally Don't Know Anything About You on the credibility ladder.


Do you mean "functional" as in "it actually works" or "functional" functional?


Fudge, English at 5 AM is not my forte. I meant "functioning" rather than "that one that gets mental co-citations with Lisp but whose definition I cannot conveniently call to mind at present." (n.b. I suspect that there's some business problem you can solve with that, too, but personally I'm pretty pedestrian with regards to programming methodologies.)


Thanks for the fudge, much nicer to read, appreciated.


Being able to bridge the gap between understanding how people work and how it's possible to improve that work with technology is an incredibly rare and valuable skill right now.

Quite frankly, most people have no idea what's possible with programming. I once worked at a company where they spent dozens of hours each month manually updating monthly reports in Excel spreadsheets. If you watch the average person work, you'll see dozens of things that could easily be automated or simplified. Watch a little more, and you'll see the possibility to add new capabilities that simply weren't possible before.


I would be interested in learning more about what a programmer brings to the table in the consulting field.

Simple, reduced risk. Patio11 has built his personal brand very successfully. (not overnight mind you) So much so, that you know exactly what you expect to be delivered when you would engage with him. Much of the content that he produces (especially that which is consumable by you and I) gives a very good indication what you would expect if you worked with him.


Important take-away - don't ever start compromising on your hourly or weekly rate. Patio is correct - it's very difficult to recover from that. Plus, in my experience, clients who want to bargain on your compensation are already devaluing what you do. I had a client who complained about my rate, and wanted to cut it substantially, because "there were lots of kids around who would work for less." I responded by telling him that he should hire one of those kids, and I would gladly hand his project over to them. I guess he reconsidered, because that was the last I ever heard about lowering my rate. I still work for that client, and have actually raised my rate by 50% over the last few years.

Don't undersell yourself!


So what do I do if I don't have a blog or any real friends to refer me? I don't know anyone at all here in SV and no one seems to want me anyways.

On the flip side, I suppose that there are people that could use me but they don't know how to find consultants.

The only time this has happened was when a potential employer and I didn't quite work so they let me name a price for the time I worked and they paid (rare in consultancy, I bet).


Nobody wants a nobody. Have you tried manipulating the HN audience into thinking you're special? I can, annoyingly, name a dozen people from here who self-promote and pop up with frustrating frequency. After a while you start to think they're special even when they're just persistent. But few people are persistent with such follow through.

Write stuff people want. Get it distributed widely. Repeat.


No, dear god. We need less self-promoting manipulators here and more substantive, authentic posters.


It's sad that you think "writing stuff people want" is manipulative and faux.


Well writing it for the sake of promoting yourself most definitely is.


"Most definitely"? Why?


"So what do I do if I don't have a blog or any real friends to refer me? I don't know anyone at all here in SV and no one seems to want me anyways."

Change that. Go to conferences. Go to meetups. Leverage whatever professional network you currently have to expand it. Start a blog. Post to it. Establish yourself as an authority on something.

If you can't do the above yet (because you aren't an authority on something), become an authority. Contribute to a related open source project. Get involved in meetups that focus on the topic. Find conferences that relate to it and attend... later, speak at said conferences.


> Go to conferences. ... Find conferences that relate to it and attend... later, speak at said conferences.

Well, I'm screwed. I can barely speak in private or deal with people.

Perhaps someone else can use your advice, though.


Kaizen. Small improvements. Start now and don't deviate.

You grow by constantly pushing yourself just barely outside of your comfort zone. No anxiety or panic needed, just a little tiny dose of discomfort.

Start now, with the smallest improvement you could possibly make. Then continue to make one small improvement every day.

Are you a complete shut in? Make it your goal to spend just 1 minute outside in public. If 1 minute is too much, then make it 10 seconds. Do it again tomorrow, and add just a little more time. Did you feel a bit uncomfortable? Good. If not, push yourself just a little more.

Are you good with being outside? Make eye contact with one person for 1 second. Tomorrow, make eye contact with two people. Or try to hold eye contact for 2 seconds.

Good with eye contact? Let's get talking.

Go to the grocery store and use the human checkout line instead of the self-checkout. Then the next day, make it your goal to say one sentence to the checkout person beyond the usual pleasantries. A comment about the weather will be just fine. Once you're good with talking about the weather, ask the checker if they have big exciting plans for this evening/the weekend/Christmas/whatever.

Just take action every day. ACTION. EVERY. DAY.

If you feel like you're not making process fast enough, or if you slip up one day and stay firmly within your comfort zone, don't beat yourself up about it. Just get out there tomorrow and make one small improvement. Small improvements will have a huge effect on your quality of life before you even realize it.

I've been there. It's possible. Start now and don't deviate.


This is inspiring, you should write a book.


Thankfully, someone already did. It's short and sweet.

http://www.amazon.com/Small-Step-Change-Your-Life/dp/0761129...


Thanks, will to get a hold of it.


There was also a time you could barely walk.

Even if you have social anxiety, or are somewhere on the autistic spectrum, you can still improve your social skills. Because they are skills, not traits. You can improve them through practice. It will be difficult, of course, if you have a problem such as social anxiety. But consider seeking help for that, if it is a problem. It can improve your life immensely - and not just professionally.


One great way is to volunteer at the conference. Why?

1. You're forced to interact with at least some set of people regularly. Even if you find it difficult to 'cold call' a person or group of people and socialize at the event, you are guaranteed to have interacted with a minimum number of people.

2. There are set goals to accomplish, and it can be easier to work with people you don't know if you just focus on the work. It basically gives you an excuse to interact with people, because you don't have to worry about awkwardly fumbling around to find some common ground to chat about.

3. If you make yourself extremely useful (always looking to help out, asking what else you can do), people will recognize this.


>>Go to conferences. ... Find conferences that relate to it and attend... later, speak at said conferences. >Well, I'm screwed. I can barely speak in private or deal with people.

Maybe things are different in tech, but I don't know anyone who likes attending or speaking at conferences. Don't think of them as trips, think of them as work. Because they are.


Things can be very different in tech.

When your job keeps you mentally and physically isolated from your coworkers, getting together with like minded people to talk shop is nice. Even more so because for some developers talking shop is one of the few conversation topics they feel comfortable with.

When your job is slugging away at decades old enterprise code, watching a talk about game development, fancy math, or improved development environments can be a breath of fresh air.

When your job has you at the bottom of ten layers of bureaucracy, telling people about something they should do, and having them listen and agree is wonderful.

Tech conferences are a joy.


Point taken; I was saying (unclearly, maybe) that not liking conferences/speaking/whatever is a pretty weak reason for avoiding them. Lots of people don't like them, but go because it's what the job requires (and, just to preempt replies, act pleasant and engaged while there).


Are you kidding? I love going to conferences and speaking at them! Especially if you do not work in an office, they are a great way to find who is doing what, what's new, where you are behind,nowhere you are in front.

If you aren't prepared to go to, ad get involved with, conferences, then all of the advice in this article is going to pass you by. Because it's all about establishing credibility and then leveraging it.


I've taken two vacations for conferences this year... Maybe I'm crazy. Clojure/West and Strange Loop. Maybe you just need to go to better conferences.


Although it looks cheesy, this book is full of actionable suggestions on how to be able to speak to people.

http://www.mpowers.com/books/charisma.html

I definitely recommend it.


and if you aren't comfortable speaking or attending conferences, don't let that stop you from becoming an authority. find a topic you are interested in and start learning it in depth. identify common issues beginners struggle with and blog about them. move on to more advanced articles. you should gain recognition pretty readily.


Get a blog and start making new business acquaintances. (Being in the Valley should not exactly have you hurting for options on that score.)


How do you make business acquaintances? I have a hard enough time leaving the house.


If you write Ruby and go to a SFRuby Meetup, you will learn quickly that even if you are looking for work it is quite annoying to say you are looking for work, as the recruiters swarm in like vultures to fresh carrion.


I write ruby (though I haven't done much rails yet), and went to literally dozens of SFRuby meetups. Yes, recruiters did swarm in a few times. However, it was a massive waste of time, hopes and energy since every single one of them was looking for a senior engineer. Interestingly, the last SFRuby meetup I went to at Carbon5, where we all had to introduce ourselves and what we did, about 5-7 of the twenty some people there were unemployed.

I've actually had better success finding work through HN and through friends of people I've worked for before (once again no help to someone just starting out).


And what about those who not even in US and belong to a "3rd world country" where one wish to give work only because it's Cheap?


Do the same things. Get a blog, become well-known for being awesome. I've hired several "third world country" developers at US market rates (not Silicon Valley rates; more like midwestern rates, like $30-$50/hour) because they were good. And, I've passed on $10/hour developers because they didn't convince me they could do the job. It's about value, not price.

That's not to say you aren't at a disadvantage, if you're wanting to charge very high rates while being in a third world country, but it's not impossible. Doing the same things suggested by this post, and by other comments, is how you raise your value. You may be raising it from a lower starting point, but it can be raised, and there isn't really a firm upper bound on how high it can go.


Midwestern rates for a decent programmer should not be lower than $80/hr. If you're finding good programmers in the midwest that are less than that, they don't understand their value in the local market.

Source: I work in an office co-share with a dozen or so web developers in Minneapolis.


Chicago and Minneapolis and other big cities don't count in my estimate. I'm speaking more about folks in places with very low cost of living, and no tech industry to speak of (but there are nerds everywhere). The fact that you work in a co-share with a dozen web developers means you work in a place where developers are a known quantity and have a reasonably high value. There are developers in Idaho, too. They don't usually make $80+/hour, even on contract, unless they're famously good.


Unfortunately, I can attest to this. I am one of those developers who live in a low cost no tech industry smaller city and I would cry tears of joy if I could land a job for $80/hr. I understand my value and I understand what I can bring to the table but that doesn't mean jack when potential clients could "make a website in Word if they just had the time."


This is exactly correct. I work in a midwest city which I'd consider small/medium sized, and my entry level salary five years ago was only around $20/hr (which, as a single guy with a low cost of living, seemed like a lot). The most I've heard of a developer making here was somewhere on the order of $65/hr, and that was considered very high. If I went to Chicago, that wouldn't be high at all, but my costs of living would also probably triple.


I do second you and there are some good guys like you who value talent rather than saving a few $$$.

Patrick's post is more about consultation rather than freelance work, I wonder whether people prefer to hire remote consultants?


And what about those who not even in US and belong to a "3rd world country" where one wish to give work only because it's Cheap?

Be good at what you do; your location shouldn't affect your consulting rates.

By way of example, I routinely bill in excess of $100/hour despite being located in Poland. And trust me, I'm working on increasing the value I deliver, and charging appropriately.


I sort of agree. You can definitely bill over $100/hour in Poland (or Belgium, where I'm located) if you're an experienced consultant, but patio11 was billing that much before he changed his pricing approach.

Do you know of anyone that bills 20k$ a week in Poland?


There might be exceptions. Been working as a freelancer for parallel income for years, I see how the tone of clients get changed when they find out that I am not from 1st world. They eventually start expecting something cheap. Issue is that we Asians do spoil them by working cheap too. For instance Noah Kagan's APPSUMO was built in just $60 by a few Pakistani developers.


Are you talking about local clients, or do you have to take on international clients?


You are aware that patio11 established his reputation while living in Ogaki, Gifu, Japan? Which is a small, centrally located city in Japan, without a significant tech presence that I am aware of.

OK, it isn't a third world country. And Patrick is an American. But still, with the Internet you don't have to physically live in a well-connected place to make connections.


Price is about perceived value, not what the product costs to produce. Your living costs are irrelevant to your rate (except setting the minimum you need to get to make it worthwhile, but even that doesn't affect market rate just viability).


Perhaps not the most appropriate forum, but in paragraph three of the post, s/peak/peek/g.


Take a listen to the podcast Patrick mentions in the P.S. Eric and I have had a lot of success in offering free seminars to local business leaders (e.g., "How to find customers online"), and use the opportunity to also create a networking mixer - centered around you, where people are talking about you and what you had to say afterward.

It's one of the easiest ways to build credibility and a pool of clients (direct or sources of referrals) I've come across.


- Start a blog

- Start going to meetups and make friends (no meetups? Organize one!)


"So what if I hate people and don't want to make friends?" (You tolerate it and with civility it's easy to make acquaintances!)


And no small part of that negative sentiment, at least for some of the population, seems to stem from the same "growing pains" that accompany the early steps of any skill set.

Socializing can turn into an enjoyable activity over time, just like how a multiplayer game turns fun once you get past the newbie mistakes.


Took the words right out of my mouth. :)


2 things, Twitter and meetups. There are sooooooo many free tech events in SV you can go to. Get out and go to them!

I've found Twitter is a great way to meet new people in real life. There is little to no friction in following someone and replying to their posts. Often they'll be happy to interact with you through Twitter, even if they're internet famous. See what events they go to and go as well. Say hi if you see them. Invite them to lunch or for beers.


A friend of mine is a marketing consultant and a real genius. He got paid $x0,000 to come up with the title and general theme for the book "Rich Dad, Poor Dad".

But the author has made $x0,000,000 from it, despite the mediocre (at best) quality of the book. Really it was the positioning that made it catch on. My friend's career is full of stories like that, so it's not a one off.

If you do work as a consultant, definitely, charge what you can. But no matter how much you charge for consulting, it's never as much as its worth.

Im sure that pg could charge what sounds like a really high rate for his time. But it would be nothing compared to what he can make from equity. And I promise, it would be a lot less fun.


That author is bankrupt now, for what its worth.

http://finance.yahoo.com/news/rich-dad-poor-dad-bankrupt-163...


One of his many companies is bankrupt, as a ruse to avoid paying money he owes.


I have freelanced for almost 15 years in Europe and a bit of Middle East. I have done pretty well, charging easily 1K Euro a day, less in the last couple of years.

Last year, with a colleague and friend, we started our consulting company. The main reason for that being "let's scale!". We contacted a bunch of freelance colleagues we trusted and respected and asked them to join us as hired guns, whenever we needed more workforce.

Another reason for starting a company was that the developer profession is not rewarded as the experience increases. At least in Europe, a 3-4 years experience Java developer can make almost as much as a 10 years experience Java expert. And there are rate roofs which are hardly crossable, so even if you are really really good and have plenty of war stories, still the 1K/day roof is pretty hard to cross.

So far, it didn't go exactly as expected. We are doing ok, we have some clients (we are in the Java space, so mostly enterprise stuff) but nothing spectacular. We are having an hard time acquiring new clients and the long running European crisis doesn't help.

I'm working considerably more than in the past (weekends are a rare commodity, very long days, in short my work/life balance is critically crappy), so sometime I wonder if it's worth the hassle.

The scalability part is very tough: we hired one guy (who was a disappointment) and we use our trusted hired guns, who are often busy with their own consulting gig. Therefore, we are crazy busy.

Another problem is that the clients are really interested in our specific experience: that means they want to work with me or my partner, not with the company. This bit is hard to crack.

In short we are still figuring out how to go from here.

We will invest more in the web site and technical blog (we are also co-authoring a book) and we will hire one or two permanent devs (did I mention that hiring someone in Europe is bloody expensive, so that the 70% billable time mentioned in the article is too low?).

Working solo is easy, scaling is not. As a developer, you are faced with plenty of new challenges (finance, marketing, pr, negotiations, contracts, cashflow) - which is fascinating but damn consuming.


"Another problem is that the clients are really interested in our specific experience: that means they want to work with me or my partner, not with the company. This bit is hard to crack."

You certainly have a lot more business experience than I do - however I've been working recently on preparing a lots of tender responses. I work at a software consulting firm, with about 10 devs and 20 GIS analysts.

In our tender responses we include the resumes of the people who will be working on the project as an appendix right at the back. At the front we have a section with our 'relevant experience'. In the 'relevant experience section' we NEVER mention which person worked on a specific project. Its always termed as "XYZ corp developed an app to ... " or "XYZ corp worked with ABC inc to ..."

I guess it comes down to a metal shift in always describing things your company has achieved, instead of things you as an individual have done.


We are to small to even think of compete in one of the bids for a large company or the government. The majority of our engagements result from some kind of personal contact my partner or myself have in in our previous life as freelance consultants.

Nevertheless, I see your point. It's just difficult to apply just yet.

We also considered removing the "team" page from our site altogether and just discuss generically about the technologies and clients we have been working with.

I did my homework and went through some marketing and web-marketing books. My catch is that for professional services companies - especially at the early stage, the "who are those guys" question is the first that springs to mind to a prospect and it would be suicidal to remove a reference to the admittedly impressive experience that we have accumulated along the years.


I'm not sure whether it's helpful for your situation but the way I've seen this succeed in the past is to bring more people in while you're already there.

Big consulting firms do it, and do it badly, and get a bad reputation for it (but then keep getting hired back anyway), but if you do it well, it can work out fine.

My suggestions:

1) When you're on site somewhere keep an eye open for areas where one of your hired-guns could help solve a problem the client has.

2) Don't bring someone on just because it helps your company, only do it if you really believe it is in the client's interests.

3) Only bring in people you really trust, getting this wrong is deadly.

4) Be willing to make little or no money on it at first - this is primarily about marketing, not immediate income. But make it clear to the client that it's a special price and it may go up next time. Generally I find that the best angle is either to say "I think they can really provide value here, give them a trial and I can bring them in at 25% off their normal charge rate" or "Because you've been a great client, I can do a special deal this time, so you can see what else we have to offer".

5) Make sure you represent them as one of your people, not a freelancer. If they're good you want the client to come back to you and ask for them again, and not to think they can go direct.


Hmmmm ... I've actually been going around meeting a lot of digital marketing agencies (I've been doing a bit of Android freelancing in my spare time). They all seem really interested in the bids I have been putting together at my day job, but don't feel they are in a position to be able to tender on projects like that.

I wonder what knowledge/skils/experience they need to be able to bid at that level? It seems like something really valuable to be able to train a company in...


Lots of clients require you to say, in your contract, who will be working on a project. They will inquire after individuals.


Which is why our tender responses do include the resumes - just in an appendix at the back. The bit at the front, with screenshots and quotes from happy users just talks about what the company has done.

You absolutely have to meet the customer requirements in your response. But its up to you where you place the emphasis :-)


I feel like every post by Patrick should be printed out and taped to the wall. So many great lessons in his writing. Thanks patio!

Question of my own: if you are breaking into consultancy, how do you go about cold-calling potential clients? Say you've identified a few clients that you think you could help. What kind of email do you send them?

Go the honest route and say "Hey, I'm new but I want to help your business make more money...I'll take a cut of whatever increased revenue I derive, otherwise you dont have to pay me" ?

Or go with the "I know what I'm doing route" and just pitch that you are a professional doing this all the time?


So there's some sort of difference in the neurological makeup of developers and business owners around the phrase "you don't have to pay me." Developers think that proposition decreases risk. Business owners think exactly the opposite. It suggests that there's such significant project risk associated with employing you that the market forces you to self-indemnify for that risk upfront, which virtually no other service provider they use does. (Separate from what your client thinks of it, it also puts your paycheck at the mercy of clients' ability to e.g. follow through on your recommendations. Clients generally earn the results they get from working with outside consultants, just like they earn the results they get from working with their own employees. The ones who do everything in their power to make engagements a success tend to do better than ones who... don't. You probably still want to get paid when they... don't.)

I'm not totally opposed to some sort of variable payout mechanic to pricing, but the vast majority of my engagements are structured "I work X weeks at $Y per week." By the time I've sold you on the engagement, I should have been able to sell you on X$Y being an acceptable price to pay for the risk-discounted probability space of all possible outcomes to the engagement. (n.b. If you do variable payouts for anything, you need to figure out how to transfer a large percentage of the upside from the client to you for the math to work out.)

If I personally was selling you an engagement, and you said "What happens if this doesn't lead to an improvement in the business?", the very next words out of my mouth will be "It is entirely possible that this engagement will not lead to an improvement in the business. The vast of my engagements have been successes. Some of them, like the ones we talked about earlier, were incredible successes. Let's talk about ways we can be more likely to make this engagement successful. If you do not believe that this engagement is likely to be successful, we will not do this engagement." (I'd also independently decline an engagement where I thought it wasn't likely to be a win or would meaningfully damage the business in event of a failure. I typically work for companies with revenues in the eight figure range -- if they set fire to my entire paycheck, nobody goes home hungry.)

As to what you personally could offer for risk reducers, absent a history of doing exactly this thing before, I might suggest reaching back into your portfolio of other things you have done and showing off ones which demonstrated likelihood of success. In my first few consulting engagements, my main portfolio piece was "similar work which I did for my own business worked out well, as evidenced by a few years of blog posts; here's a few I like." After the first few engagements, well, BCC was no longer the most credible piece of evidence I could point to.


Great, thanks Patrick. I didn't even realize that I was self-indemnifying my abilities up front with a phrase like "for free"...but in retrospect it is exactly that. If I'm confident in what I can do...why the need for offering free services?

Thanks for the advice, I'll try to put this into practice. :)


Everything you mention rings true with my experience in the business world (such as the difference in mindset of engineers versus management types). In construction, variable payout can be managed by meet-versus-exceed of customer want date. Have you seen that used in your area, or have an opinion for or against? Thanks for such excellent free advice.


Thanks Patrick for this piece. Very helpful. A question. What do you suggest if I visit some online site/system, find some weakness or area of improvements and contact the owner and tell how it can be improved? Will it work?


I've been freelancing / consulting for just over a year myself and am discovering more of the process myself. Here's what I've done so far..

- Reach out to your existing network - if you have friends who have done freelancing / consulting, find out what companies they did freelancing / consulting for - chances are those companies still need it.

- Offer to meet for coffee / lunch / dinner. I'm based in the UK and was trying via e-mail to speak to a potential client. It just wasn't happening. They are based in the US. So I called them up and offered to meet for dinner there at a time convenient for them - they accepted and I had the dinner last week. It is very easy for someone to decline a phone call / conference call. It's much harder for someone to do that when they know you have made an effort to turn up in person - they also have to eat so meal times work good.

- I find being honest is the best route to go. They expect you to know what you're doing! I think it's fine to say - I've just stepped out of employment and now I'm looking to build a business myself in what I've been doing - people respect you for trying to start a business!

- Don't offer to do something for free too early on. The person you're pitching to is not working for free and they won't be expecting you to work for frre either? Yes, you may need to offer something for free to land a client initially - but do not do it with open-ended development!! Instead suggest you do an analysis of their system etc and write up a report and how you'd improve things - at least that has a fixed scope. Or ask for a dataset and show simply how you can use that data to give them some new numbers they don't yet have.


Thanks for the advice! I'll give the honesty (without self-degradation aspect) a go.

I've done freelance programming in the past, but the gigs were mostly "build us a CRUD app" type jobs. Paid well, relatively easy work...but not really want I want to be doing. I'd rather be doing bigger picture work like funnel optimization, testing, metrics, etc.

Unfortunately, I also don't have as much experience with this, which is why I think my default instinct was to offer "for free!" as a risk-reducer. The analysis or quick report on their processes is a good idea, and would make me feel more comfortable in the situation I think.


"I'm based in the UK and was trying via e-mail to speak to a potential client. It just wasn't happening. They are based in the US. So I called them up and offered to meet for dinner there at a time convenient for them"

I'm probably missing something here, but tell me you didn't fly to the US to have dinner with a potential client you were cold-selling yourself to?


It was not cold-selling no. I had worked with them before in a different role so I was a known quantity. I also combined it with a meeting with another client I was cold-selling to - albeit through a recommendation from a friend and had already submitted a proposal.

In total it cost me about $2000 but am expecting work to come from it.


I am not the author, but my advice would be:

-Focus on the "Sales Process". You won't go anywhere without first identifying the need(s) of the prospect and making sure they know that you understand their need(s). Then determine who the decision-maker is, so you don't waste your time selling to the wrong person.

-Approach prospects via email AND phone, until you've figured out which method they prefer.

-Don't give up until you've received a clear rejection. Offer rebuttals to their objections.

Stick with those rules, and work to refine your pitch. Persistence is key!


This post is great advice if you want to work doing consulting for large companies run by MBAs/business people that view technology as "IT": a tool for solving business problems. I'd guess 90% of programmers earn their living this way, so I agree with it, to a first approximation.

What Patrick doesn't acknowledge is the huge role of culture/norms in business, and how these differ based on geographic region, and the backgrounds of the founders.

Revenue and profit attribution are human processes that involve a lot of bias. If a salesperson sells twice as much product, should he earn twice as much compensation? How does marketing's work on improving the company's positioning/messaging, engineering's product work, and/or the overall state of the economy factor into this calculation? Who really "created business value" here?

The other problem is bigness: as companies get bigger, it's way harder to measure whose contribution is helping the company succeed, whereas it's a lot more obvious when only a handful of people are involved.

I'm an engineer, but I work at a product company. If the product is better, it sells more, and we get compensated more, along with sales, marketing, and the whole team. People in Chicago (where I grew up) still bring this dumb 19th century management model to their companies, and it's exactly why (1) all the best innovators and engineers head to the west coat, and (2) why I personally got the hell out of there. I wanted to be a professional programmer, someone who made peoples' lives better by shipping a superior product, and get compensated accordingly, not some IT lackey selling some nebulous concept of 'business value' to some feet-on-the-desk small-business-owning ex-investment banker who wouldn't know the difference between Objective-C and HTML.


This is all well and good, but the biggest reservation I have about all of these consulting blog posts is who should do this and who shouldn't? I feel like consulting is easier to consider when you're a seasoned programmer (10+ years) because you have the accumulated knowledge to really provide value to a company when you're not an employee. I'm almost 27, is my lack of years of experience going to prohibit me from attaining consulting gigs? If I can optimize your front-end code, get you higher performance and SEO rankings, are you going to hesitate / ignore me because of my lack of years in the field?


"If I can optimize your front-end code, get you higher performance and SEO rankings, are you going to hesitate / ignore me because of my lack of years in the field?"

This is a testable hypothesis. Test it.

Seriously. Most people who fail are defeated not by external forces, but by forces from within. Stop worrying and start testing.


You mention a good point.

I think consulting requires a character. If you are 20-something I really doubt it's going to work very well.

Unless you have a history of extra-ordinary achievements which sets you apart, in which case you probably wouldn't have or want to do consulting.


To be very honest, this reads like the typical Shoemoney "how to earn $100k within x weeks" article. It's not a big secret that SEO and conversion optimisation can generate a lot of value, and I guess you consult a lot about these topics?


I was thinking the same thing, even down to the sign-up form for the newsletter. Not that there's anything wrong with that, shoemoney has done quite well and his posts are usually quite good.


ha, when i saw the headline and read the first paragraph i assumed this was a sales pitch for something.. but after scrolling down to the bottom and not finding anything i shortly realized this is the author of kalzumeus.com which is the source of some of the best advice I (as a programmer) have read on the internets.

One gotcha here is that not every programmer can be as successful doing such business consulting. I think it is a different skill (muscle?) that must be developed in order to talk with suits and create the aura of instant value. I wish i knew how to train that muscle more :)


1st lesson : stop using language like 'suits'. They are just people with budget to spend on problems they need fixed. The key here is that talking to people is a skill which can be learned. The way to learn is to start, and make some mistakes and learn quickly.


The sales pitch comes later. The good thing about it is that, if you're interested in these posts, you'll probably be interested in what's on sale.


ha, when I read it I still think it was a sales pitch ... not that there is anything wrong with that.


Am I the only one that checks the domain after reading the title?


A more appropriate title could be 'Get rich and famous quick by posting articles about quickly becoming rich and famous on Hacker News'.


Here are my lessons after 6 years running a consulting firm in a pretty specialized business (high end ARM/embedded stuff), from the top of my head:

1. Avoid billing by hours, exactly for the reasons listed here. You can only lose like this; it carries more administration overhead, more friction with the customer and at the end there's a max budget allocated on the customer's end anyway - it's not like you can bill indefinitely if things don't go as planned.

2. Always charge fixed price for projects. Remember the budget allocation from #1? Use it. Bill twice as much in the beginning but avoid charging the customer even a penny more for delivering the work you're committed to, even if that means 'losing' money (you don't really lose when consulting, only earn less).

3. Work alone. Hiring people may seems like a good idea but then you've got a financial burden in the slower periods (and these always come when you least expect them). You can make good money alone, and you can make good (and great) money when you have 8+ people working for you but between 2 and 8 employees, you're busy full time getting enough work for the team and your margin on these employees simply isn't big enough (just think of the office costs). Besides, I don't like the whole pimping thing where you sell someone else's skills; YMMV.

4. You are a business problems solver. Don't tell a customer "no", just jack up the price if needed. If you intend to have a large project with them, don't charge them for general consultancy around the project. Happily give them your time for free; make your money on the project itself, not the meetings around it.

Edited to add something quite important, IMO: Whenever first meeting a customer, I try to get a high level picture of the business they are in, the product they are looking to develop, who will use it and so on - even if they are just looking for me to develop a specific component. It's very easy to fall into "XY Problems", and understanding the project environment would make it easier to assess the work and rates.

5. Remember there are people in a corporate environment on the other side. Make them look good in their company; give them whatever help needed and be their go-to guy. It's really important for the long term (and as fellow human beings). Don't ask for money for small modifications or changes, think of the administrative process they need for each line item - it makes them look incompetent or just annoys them with bureaucracy. You'll more than make up for that in the following work.

6. Long term, your entrepreneur skills are better spent at build your own business. Consulting is good for the free spirited folks that don't want a corporate environment, or for making a quick buck on some lucrative projects, but it's hardly a way to get rich and it's quite wearing in the long run.

Nevertheless, I think that professionally, consulting has been the greatest thing I could have done. The variety of projects, technologies and corporate environment (30+ customers here, most repeating) is great for your own development.


Also, I always keep in mind that at some positions; there are people who want to spend more money if they can. Spending more this year might mean a bigger budget next year. Sometimes power at the company is somewhat stacked by who manages a larger spend each year. And sometimes perception of quality has to do with what you spend. A $60k consultant must be better than a $6k consultant right?


In fact I just a few weeks ago lined up a nice little contract on this exact basis. A customer had a budget allocation that they'd won but had been slow in lining up the work from another department in the same organisation. So now it's come to me, because they "need" to spend the money before the end of the year.


Meh. But doesn't it make you throw up a little inside? Don't get me wrong. I want to make a ridiculous amount of money. But I want to make it by creating a ridiculous amount of value. Not because I figure out how to game lame, inefficient, entrenched business model number 13 in ways X, Y, and Z.


Sure, it bugs me sometimes.

But I am actually creating value for my clients beyond helping them game a broken budgeting process. I will be saving them potentially thousands of hours of tedious labour and freeing up qualified specialists for much more productive tasks.

The good comes with the bad, sometimes.


Ah, ok. Obviously you know the details of the situation far better than I. Just something I spend a lot of time thinking about.


Charging more and being proud about it does add to your aura, in their eyes. They'll appreciate you more (given that you deliver).

About the budget allocation cooking - this behavior is usually observed - perhaps even common - at very large/government organizations. I'm more inclined to work with medium businesses and down to startups, so I've rarely encountered it myself.


I think one of the biggest reasons why people hesitate to get into consulting or freelancing work is because the hourly billing makes them nervous. Actually having to record every single hour and recording what they did seems pretty tedious. It's good to hear that weekly billing is considered to be viable because that makes things a lot easier.


Hi flyinglizard, I'd love to pick your brain about consulting on ARM/embedded stuff as it's a field I'm interested in. Do you have an email address that I can send a few specific questions to (that I promise won't take more than a few minutes to answer)? Thanks in advance.


YHM


If either of you guys are interested in chatting about ARM stuff, give me a shout ([email protected]). I've been playing with ARMs since the ARM2, and have just finished the initial version of the Safecast Geiger counter kickstarter [1] and am also looking to pickup more ARM work in the future.

[1] http://www.kickstarter.com/projects/seanbonner/safecast-x-ki...


hey flyinglizard, I'd love to pick your brains too :)

regards, manuel


Pardon my ignorance. What does a consultant do?


In broad strokes, make businesses money.

In a little more detail, I (personally) work mostly for B2B SaaS businesses and know a few things which tend to work for generating incremental growth in revenue. If you've followed my blog or HN posts they won't sound all that impressively new: write drip email campaigns, do A/B yet, redo pricing tiers, optimize conversion funnels, etc etc.

There are many other consulting specialties out there, obviously, but that seems to be a mutually happy place for my abilities and clients' businesses.


Just to be clear:

This is different than "freelancing" or "contract development". This is more traditional business consulting. You're going in and changing processes and structures more than anything else.

It might be around a specific goal like "make our signups more effective", but you're not just writing some code. You are going in an helping them to change their mindset by incorporating feedback (A/B testing) and new methodologies to run their business better. You get paid so much because the results don't just result in better signups, but in a transformed company at the end.

To do this type of consulting you need extreme credibility. Either a big business win, an ivy league education, or something equally as impressive.


This meme about there being "contractors/freelancers" and then "consultants" is toxic.

In the markets that Patrick and Jason Cohen and Brennan Dunn are talking about, almost the entire difference between "freelancer" and "consultant" is "how you price engagements".

It is true that consultants value-price engagements, so that they collect a percentage of the revenue or cost-savings derived from their code instead of a scaled hourly rate. And it's true that to do this, consultants have to think about the actual business context of their code, and be able to confidently propose the value of that code to a real business.

But that's where the differences end! Patrick is writing code on his engagements. He's using the same problem-solving methods you're using. On a day-to-day basis actually delivering for clients, he's writing code to generic metrics and then optimize them. The only thing he does differently from you is that he chooses to work on metrics where he knows he can make a case for revenue directly attributable to the metric.

It does not take a "big business win" or an Ivy education (WAT?) to "consult" for clients as opposed to "contracting" for them. You don't even have to be particularly attentive to your clients businesses, because so many people have built and written up methodologies for using code to make money for businesses; you can literally start by reading up on those, and offering them to clients who don't already do them. How many of your freelance gigs were for clients with sophisticated email marketing systems? How hard do you think it is to send triggered email updates to clients? Start there.


>>many people have built and written up methodologies for using code to make money for businesses

Would you mind pointing out some examples, or naming the field of literature? When I googled "optimizing business processes with software" I got a bunch of ads for software. I'm not entirely sure what I'm looking for.


Umm... well... for fear of stating the obvious, Patrick's blog (see TFA) would probably be a really good place to start. You should also watch every video at http://businessofsoftware.org/category/video-2 -- they are presented in the context of helping software companies become better but a lot of the ideas presented could be flipped around (I'm especially thinking of applying various forms of business analytics to more traditional companies).


Obvious or not, it hadn't occurred to me. I'll check out those videos, too. Thanks.


As someone who has both been and hired a lot of freelancers/contractors, I would say that there is a genuine difference in game level between freelancers and consultants. It's a matter of professionalism and willingness (and ability) to steer the project/engagement. Consultants are experts who come in and figure out how to achieve a goal, who investigate the clients' needs, who tell the client "these are the steps we will need to take to figure this out, and then to make it happen." At an advanced level, they will even help figure out the right goal to begin with.

Freelancers typically have to be told these steps by the client (and managed).

If you can come in and steer a project, and let the person hiring you relax his/her no doubt overworked brain for just a few hours, you can charge practically whatever you want. That's how we were doing $500+/hr (each) before we quit consulting, because I led the processes for our clients. They didn't mind paying $2k simply for meeting with us both for 2 hours because they got to be the subject of conversation, instead of the leader, and they'd get a valuable report out of it at the end (for an additional price, of course).

Never once had to worry about price shopping, because if that's the service you want, there is zero competition!

Foolishly, I thought this was just Normal Professional Behavior until I started hiring people for my business.

Sadly, it seems most people out there prefer the unprofessional and haphazard approach where they take on too much work/too many clients, wait for the client to tell them what to do, then jump between clients like a scalded cat to whichever project causes the most screaming at the moment.


I admire people who can execute this consultative approach (and, it should go without saying, I admire Amy Hoy's work in particular). If you can make $500/hr/person for talking sessions, I think you should do that.

But I want to take yet another opportunity to stab wildly at the idea that only people who can execute at this level are "consultants", and the rest "freelancers". Though I find the terminology a little silly, let's stipulate that those are the two words. Then: a consultant is simply someone who pitches projects with value-based pricing, and a freelancer is someone who pitches market- or cost- based pricing.

Start pitching value-based deals now. Don't wait until you feel like you're at Amy Hoy's caliber of delivery. That is literally the only thing you probably need to change in your practice to start transitioning towards being a high-value "consultant".

The only thing it takes to move from market- to value- driven pricing is a positioning change. You're stuck with market-pricing when you're doing something lots of other people do. So pick specialty practices or practice focus areas; it doesn't hurt if you pick focus areas that are "closer to the money" (conversion optimization is an obvious example), but even that's not necessary if you can drive your practice towards a desirable and underserved niche.

It's fine to deliver Rails or iOS contract software projects for market-based rates (they're pretty high right now), but that doesn't have to be all you do.


I don't think we're disagreeing here about pricing at all!

Lots of very good freelancers are undercharging and everybody should price on value delivered. (Especially those freelancers who disappear and only get work done when yelled at. If only!)

That's why a lot of the educational content I've used to promote Freckle is about delivering, understanding & capturing value… for freelancers. (Which includes understanding & identifying your ideal clients because if you use a hammer to break a window and steal $1 million in diamonds, it's worth a lot more to you than if you use it to hang your kindergartener's fingerpaintings.)

Any freelancer can become a consultant, though, by changing the way they work. Read a few books, take personal responsibility, experiment with being more than a tool for executing the client's vision. If you ask your client questions and debate features, that's already a good start.

This kind of consulting — consulting, as in the dictionary definition -- is a huge value and therefore hourly rate multiplier. Anyone who improves their management skills can vastly increase their rates.

If you only provide execution, and not the other stuff I described, you will hit a ceiling a lot sooner… and suffer more price comparisons. Not as many problems as a person who just says "I code in Ruby" rather than "I help your biz make more money," but more problems than somebody who approaches the biz like I did!

BTW - I rarely did just-talk engagements. All the stuff I described above was as part of design-dev projects. The process I came up with is as follows: We would meet the client, give them a fixed price quote ($5-10K) for these meetings and guidance and the report. They would pay 100% up front. The report, then, was a deliverable they could take to use with any other (cheaper) service provider to implement. Which, naturally, never happened, because as soon as the client saw how we ran our projects, they would never dream of hiring anyone else.

That's the power of being a consultant!


> If you ask your client questions and debate features, that's already a good start.

I've always been doing that, and felt uncomfortable to call this activity ‘programming’. Local clients (small businesses) hire a web developer to build a site, but it usually requires at least some education and research, as they rarely have good understanding of their needs. Still I'm shy to call it consulting except to myself. Your comment helped me understand better that it's almost exactly that consulting everyone talks about—thank you.

You mentioned books—can you recommend some titles, authors, or maybe subjects?


One book I found very valuable (and discovered on another HN thread) was Gerald Weinberg's "Secrets of Consulting." That book generated lots of good ideas. If you pause at the publication date, don't. You'd be shocked how little this stuff changes, until you realize (as Weinberg explains) it's always a people problem, and people haven't changed.

I also recommend Patrick's recent podcasts/interviews on the subject.


Thanks a lot for recommendations, the book looks very interesting. I have Patrick's podcasts in queue, and just realized that ahoyhere is Amy Hoy who was a guest on one of the episodes. =)


I'm interested in the fact that your clients never sought someone cheaper to execute the plans in your report. If one of the (or THE) difference between consultants like yourselves and freelancers is the research and strategy work, then wouldn't it matter less who executes that plan?

In other words, once you've come up with the strategy is there still extra value in it being executed at your rates, compared to a freelancer executing the same plan at a much lower cost?


You're assuming that the most important thing to clients is cost. For a decent client, it never is.

It's a huge amount of work and risk to hire somebody else after a service provider has already shown themselves to be self-managing, self-directed, professional, timely, responsible, and knowledgeable/skilled.


If I might humbly disagree: The only thing you need to do to sell consulting engagements is to sell consulting engagements. There is no licensing department, no exam, and no Client Cabal which requires that you be blessed by a gatekeeper prior to doing this. I spent years coming up with reasons why I could not sell consulting engagements. In retrospect, that was sort of silly.

You know what I did when I was a Systems Engineer and had business cards saying it? I read stuff, talked to people, went to meetings, produced computer code which compiled, and wrote stuff. You know what I do for clients? I read stuff, talk to people, go to meetings, produce computer code which gets interpreted, and write stuff. I'm just really, really picky about what I'm working on. (See sibling comment by Thomas.)


I've received MANY reader success stories from people who have simply adjusted their messaging from "I will write code for you" to "I will help you be more profitable (...as a result of writing the right code)." As far as I know, none of these successes pitched prior success with big businesses or their diploma.

This change in messaging lowers the risk factor between you and a potential client (throwing money at a coder doesn't always equate to business success), which in turn allows you to drive up your rates.


Full-time programmers can be had for $50 to $100 per hour, but they can create millions of dollars of value, far in excess of what they're paid. Consultants are one of several groups of people who take a share of the difference.


This is why I work for myself, am building my own company(ies). I knew I would never get paid the value I can bring to the table, and I would never be motivated to do my best in that scenario.


You think you could never get paid the value you bring to the table because you are imagining delivering services to the kinds of companies who would think to look at freelance markets to find the going rate for building code in the platforms you work in.

But the world is full of businesses with absolutely no technical competence at all, and so much operational competence in their own field (health services, benefits consulting, reinsurance, whole animal butchering, whatever) that they could take over the world if someone anywhere would just notice the opportunity to scale their processes (lead gen, customer retention, supply chain, market expansion, franchising, customer service) with basic technology.

To many, maybe most of those businesses, just being able to throw together a Bootstrap/Rails app makes you some kind of terrifying Wizard. If you can get over the urge to talk like a Wizard, and apply the customer service aptitude taught to every new employee at Nordstroms, you would probably find it's nowhere nearly as hard to capture the value of your work as you think it is.

I'd also note: if you're incapable of convincing a tech-impaired local business to consider a value-priced engagement that will make or save them millions of dollars, you may have a hard time building your own company(ies). Maybe not, though! Totally possible to skip that step.


I agree with all that you say. Not sure about something though. I'm not sure you'd have access to the information that would allow you to discover/see the possibility of changes that could allow millions of dollars in positive changes. Also, I'm thinking in ranges of $10-$100 million+ per year ranges; Larger ecosystems, etc.. and to have such an influence in an existing company, where they'd be willing to pay you out anything other than bonus or work you're way up to a million-dollar salary, would require many many years working at said time, with lots of risk that you wouldn't be rewarded adequately.


If you do it right, you are never getting paid the value you provide. The model is always: generate value, get a slice of that, repeat. Think of a very rich person; if this person is so rich, it is because s/he provided much more value to others than the value it captured for him or herself. (Except for conmen)


Or banks


Apart from "be awesome", "know your abilities well", and "manage project scope carefully", do you have any advice on not choking? Have you ever had to scale back on delivering what was initially agreed upon?


Sigh... I'd settle for someone giving me $100 per hour.


If you don't have a large variety of jobs to pick and choose from, you're not doing it right.

I'm going to rant here a moment...

The secret to getting more work than you can handle (and charging $100/hr, which is not difficult)... DONT SUCK.

I swear to god, 95% of people out there suck, your competition.

Send emails to your phone, and answer them right away when you're out and about, even on weekends or when you're out having a drink. If you're busy, just say you got their email and will get back to them when youre in the office. Try to answer < 15 minutes.

The amount of replies I hear that say "wow you are so responsive and get back so fast, I love it" is a lot more than you would expect. These are my repeat clients. These are your people and you should take care of them.

It's SO easy too, and so many people wait days to reply. That doesn't mean you need to always be working either, or that you need to suddenly be at the mercy of your email, it just means be responsive to inquiries. VERY responsive.

As far as working, dont leave loose ends. This usually means fixing up those little nagging issues that they probably won't notice. Leave them with something stellar, and go the extra mile even if it means only 5 minutes of work extra fixing something they never asked you to fix or paid you for. It takes 5 minutes, and makes a tremendous impression on them.

I'm making this statistic up, but based on what I see it's gotta be over 90% of people don't do just a few simple things. They take a while to reply, deliver sub-par product, don't communicate well... it has nothing to do with their actual site or product they're delivering, just how they handle themselves, then they whine about not having work. (flurpitude, I'm not referring to you as whining, just people in general).

PS: it seems counter intuitive (I'm going to get a lot MORE bs work and bs replies), but it actually seems to eliminate them entirely. People respect your time and your skill, and they dont' waste your time with stupid questions or emails. They're also willing to pay top dollar for your services without giving you a hard time or anything.


Have a phone number and an email address on your website.

I'm surprised by how many people complain to me about "I can't find work", but

A) don't know how many people are looking at their site

B) don't even have their own website (outside of, maybe, a github repo)

C) don't have a phone number on their website

D) force me to jump through some sort of BS "contact form with captcha" crap to contact them

I get "well, I'll get flooded with spam!!!"

1. not my problem 2. i don't care 3. so what?

"I'll get too many phone calls!"

Really? That's your biggest concern? You can't find work but are concerned about getting "too many" calls?


You might be right about that. I'd like to offer another perspective, though: if you get into the habit of quickly replying to all emails, I think your clients will develop an expectation that you'll always quickly reply to emails, which it's not always possible or desirable to do, at least for me.

Also, if you immediately attend to every email that hits your inbox, that means you probably won't have contiguous chunks of real productivity in your workdays.

I usually wait a good couple hours to reply to any email, even if I'm not particularly busy when I receive the message. This a) sets an expectation for responsiveness that I can live up to, b) allows me to have contiguous chunks of productivity (I often close email entirely, which my clients know), and c) demonstrates to my clients that a certain level of discipline: I'm not jumping on every email, tweet, etc. that comes my way right when I see it (not that I think that's what TallboyOne is suggesting - he's talking about work-related emails).

None of this is meant to be a criticism of anything TallboyOne has said. What works for him might work better for some people than what works for me.


That is indeed true, but the part I left out for brevity is the part about client expectations, which must also be handled. I disagree however that it makes you appear needy. If you ARE needy, you're going to seem needy no matter what you do. I can assure you though the client would rather have you reply sooner than later... just set the expectation that you can drop them at any time (subtly obviously, you wouldn't say that to their face).

Consider the following scenario:

A) Email exchange which takes 2 days, for a fix to a site... you quote $800 and they hesitate

B) An email exchange where you take no more than 2 minutes to reply, even at 11pm. They are happy that you got back to them so quickly, and you quote $2000. They agree.

This happens quite a lot in my experience. To the point where it's extremely noticeable and can't be chalked up to coincidence.

I just mentioned what works. If your goal is to get a huge amount of work for $100-200 an hour, then replying right away will get you significantly there (skill aside). Everyone waits hours to respond, so it's the norm. If you want to stand out, you need to be outside the norm.

As far as being at the mercy of your email, in practice this genuinely doesn't really mean any difference than if I wait. You're still going to write the email, it's just a matter of when. My productivity remains the same. If I'm very deep in a project, chances are I need a break anyway (I'm bad with taking breaks when I need them). If I'm really busy with some other task common sense would be required, obviously there are exceptions.

Sidenote: I don't necessarily do this with well-established clients who I've worked with for years. They already know the scoop. I'm more talking about new people, new leads, new projects where they don't recognize your value yet.


If you mean in general, a consistent job at 100 $ /hour is completely different from being paid 100 $ / hour for consulting. The former is rather hard, the latter is indeed rather low. The end of Patrick's article gives one of the main reason why (scaling consulting is hard).

I consistently meet people who earn > 200 $ / hour, without much programming experience (but know an open source project of interest very well).


I consistently meet people who earn > 200 $ / hour, without much programming experience (but know an open source project of interest very well).

I see this quite a bit as well. People can "luck into" something that gets hot and ride that wave into decent money in the short term. But a decent programming background is what keeps that ship floating because you always have to stay on top of the next thing if you want to keep that up, and it's hard to keep up with everything and even evaluate new stuff without some fundamentals.


On the other hand, if you can pull in $200/hr consistently (i.e. your yearly income isn't far from $400k before taxes) for at least half a decade, you can save up enough to retire early with a modest standard of living. But as has been said, consistency is harder for these things.

What open source projects have you seen people make good chunks of change from just knowing how to work them? http://www.pentaho.com/ is one I've seen. Also people who know the AWS stack can make a good chunk of change migrating someone's software to the Cloud.


Well, I would take some issue with the idea that a typical $200/hour consultant is billing $200/hour for 40 hours a week and taking that much home (taxes not withstanding). A lot of time gets eaten up in client relations, contract negotiations, skill development, etc... none of which is typically billed for. I've seen agency types bill $200 or higher an hour and log 2000+ hours in a year, but the agency is taking a huge chunk of that money.

For me, Magento (e-commerce) is the open source system that I lucked into. I got involved with it about 4 yeas ago which gives me a significant jump on the majority of devs I encounter. Besides being slightly ahead of the game, Magento has a reasonable learning curve that scares off a lot of the wordpress-eque devs and lots of more competent devs seem to thumb their nose at e-commerce, so the market isn't flooding.


Just out of curiosity, are you offering to set up online stores using Magento or to convert a businesses established online store to Magento? Or are you doing something completely different? Basically, I guess what I am trying to ask is how do you market your Magento skills to make a profit?


Freelance stuff comes my way through a few different channels:

- I do some agency consulting; basically helping them define scope and capability during the contract phase. They're strong on general dev know-how, but don't do enough Magento work to have consistent deep knowledge. These are basically just agency contacts I've built over time and they know to call me.

- I have a number of clients come to me looking to "fix" existing Magento installs that were started by a dev who mostly had WordPress brochure site experience. Lots of people get in over their heads with Magento. This stuff mostly comes to me by word of mouth anymore.

- When I get real bored I'll sometimes do a blanket post to Criagslist saying that I'm excepting new work. You have to put a high hourly rate though because Craigslist is such a bottom-feeder breeding ground that you want to scare off idiots.

It also helps (in some ways) that I have a full time job as a Magento dev for a decent size network of sites. It pretty much keeps me sharp on a daily basis, which gives me an advantage over general dev shops who might only do a handful of Magento projects per year.

EDIT: Contacts at a hosting company are another good source. LOTS of people need their Magento sites upgraded and due to heavy customization and general compatibility issues, lot's of these managed hosting solutions don't really want to do it from their end, so they can send clients who need upgrades your way.


It's not that hard. What do you know how to do? How do you currently market yourself? Who do you market yourself to? What are you really good at?

100 an hour seems like a lot to most of the contractors I talk to, but it's actually probably less than the average for a contract programmer.


Good luck finding someone to 'give' you even $1 an hour.


What if you're already a consultant, but are tired of Internet marketing (and its related accoutrements)? Is there a pivot for that?


You can help businesses create or optimize internal tools that make current positions unnecessary (cut costs) or make tasks that take 5 hours a day take 5 minutes (increase efficiency.) This won't involve conversion rates, lifecycle mailing, customer-facing split testing, or other marketing standards.


SAAS? PAAS? I think it's fairly well known that Patrick consults to help fund his other projects, with the ultimate goal of becoming independent of consulting in favor of passive income. (Apologies if I'm mischaracterizing Patio's intent -- that's at least how it always seemed to me.)

Alternately, you could raise your rates a bunch, save the difference and try to retire early.


Patrick's other projects are the self-education, credibility-development, and marketing for his consulting business. He is not going to retire a millionaire on bingo cards and appointment reminders.


Have you looked at the appointment reminder pricing? A single mid-tier customer brings in $1000 to $2400 per year. Scale that to a few hundred accounts, and you won't have to wait for retirement age to be a millionaire.


It might just be me, but I don't see a market for consulting based on writing RESTful APIs.

I could be very wrong about that, though.


Many businesses doing annual volumes of sales in the millions don't understand what a RESTful API is. For example, me. I have a small manufacturing business and I enjoy reading hacker news but I could not program anything with and API today because I can't code.

So do I concentrate on new product development (welded steel items that we sell) or customer development (some of our customers spend in the hundred of thousands per year on our product) or do I hire someone who can program so that I don't have to learn it? Time I spend learning a RESTful API is time I don't spend making the new widget that will buy my wife a new vehicle. Time I spend learning to code is time I can't spend converting our customer who spends a million a year with my competition and only a 100K with us.

Patio11 email is really about time. How to use your skills to help out companies that have a shortage of time. If we had all the time in the world we could all learn programming. But I don't have any where near enough time to do the things I want to do. I have four kids and all the time sucks that go along with that (school, soccer, art class, etc) and a couple of businesses and a dozen employees. I have to travel for work 8 weeks a year, plus manage a dozen employees and two dozen machines, an outside salesforce and over a 1000 resellers. I have hired computer consultants with underwhelming results several times in the past. I have spent thousands and thousands of dollars on crappy results.

What Patio11 is selling is his competency. He has proof from previously satisfied customers. He clearly can provide leadership on a project and deliver results. He doesn't sell what he can't do, and has said multiple times that he doesn't take on projects that he can't deliver on (thus protecting his reputation). Leadership is way undervalued on projects. It is the result that matters not the price.


Generally speaking, there's always a market for expertise. If that's your area of expertise and are markedly better at it than the next guy, there's a market for it. The key is in figuring out the niche

"I can train your people to build better APIs than you have now, and hence enable much better engagement from the customers of your API" -- that's a value proposition, and people are willing to pay for it.

"I can build your company's RESTful APIs to better engage your developer community" -- that's a totally different one in both feel and purpose, but one that you'd likely find customers for.

The only thing you need to do is be able to back up those claims, be personable, and ideally, be able to demonstrate how much value you can add to your customers, in dollar terms, how they would benefit from your services.

If you don't believe there to be value, then you just need to think about what your company is paying you for now (assuming employment), and how they're able to justify said employment and still make a profit.


Maybe I'm just not used to that kind of consulting. eCommerce is much closer to the real dollars than web services.


After reading the article and the comments, I'm having a bit of a "a-ha!" moment with the billing question (by week, why didn't I think of that).

I have been an independent technology consultant for 12 years now, with a variety clients (big and small) and I'd say "successful" over all. I generally follow all of the good advice principals mentioned in these comments (mostly think long term with a client, don't charge for the small stuff, make the client feel important, etc).

The one item that keeps coming up over and over is that I'm "independent". It's just me. I get hit by a bus and my clients are out of luck. Now I agree that generally speaking they don't want anyone else working on their projects, but at the same time they would really like some backup. This seems like a nearly impossible problem. I'm not interested in hiring anyone for the reasons mentioned here. Plus, acting alone doesn't appear to give me the ability to get the really big projects ($1M+). Clients aren't going to give "just me" a project of this scale, it wouldn't be good business sense.

So, I've been stuck with letting "IT consultancy firms" find me work on several occasions. They get to mark up my rate, often mix me with other techies, and basically get to sit back and collect money for something that I'm delivering. I'm the one at the client, building the relationship, looking for more work, etc. It's always bothered me that because I'm not a "firm", I don't appear to bill higher rates or win bigger projects. Honestly, it's just me delivering the work anyway. Hopefully this makes sense.

The only way I've come up with to reverse this course is to create a firm where I partner with follow IT consultants and we own the firm. Ownership, I think, is the key. If I work for an existing IT firm, I make a nice hourly rate but I have nothing to show for it at the end. Meanwhile, the firm's ownership, who often are not techies and do not have technology skills, gain everything at the end of the day. If the technology staff owns the firm, then that builds in all sorts of interesting incentives. Now the owners actually have a reason to refer other technology people to the firm, builds firm value. Clients see the combined value of the firm, thus hopefully opening the doors to bigger projects and better value. Plus, the "backup" problem is solved since clients understand that there is a team.

I haven't quite figured out how to get this off the ground (really just started thinking about it over the last couple of months), but it's interesting to me that other independent IT consultants haven't done this already. Or, maybe they have and there's some obvious reason why it doesn't work.


Reading this ... man, I'm not even at $100/hour programming yet.


I started freelancing out of college. Took a job, raised my prices, took a job, raised prices, etc. until I felt friction in the market.

Then, I got hired by one of my clients and asked to find someone to fill my former shoes as a freelancer.

I was charging $90 an hour. They were relying on firms like the Creative Group who have the ability to charge 100% markup on the people they hire out. As a result, I realized the people I was competing with at that rate could barely tie their own shoes.

I decided in that moment that I was pricing myself into the wrong league and need to raise my prices considerably if I ever get back into freelancing. Thanks to this post, I'll be billing by the week. =)

On a related note, there's room for massive disruption in the contract labor space. It's not hard to come up with a service that provides a lot more value within the current economics of that market. I'm not sure contract labor is a business I'm passionate enough about to start, but if anyone wants that have a chat about it, let me know.


Well I'm out of college since 2 months ago. Going from there :)

I'm at the point where I'm feeling the first friction in the market; still figuring out what type of lube it needs.

(big part of the problem might be the market itself, I'm focusing on working with startups)


It really is just a matter of charging more. Don't take more work for less than $n an hour. Grandfather older clients in if you want, or don't if they're not the type of client you'd want to work with long term.

As Patrick said in the article, there's no secret to charging more, except charging more.

I have a full time job and have intentionally priced myself so that I only have one or two side jobs at any one time ($125/hr for PHP). I am also not actively seeking any work, the last couple jobs have been from existing clients or new ones that have former clients working there now. Given my experience with intentionally raising prices 30%+ across the board and taking 50 hours/week off the table, I have little doubt there's practically a line out Patrick's door with CEOs holding $10-50k checks in their hands.


I live in a country where very senior developers often get confused and charge as little as 20 euro per hour. In comparison, my higher rate seems ludicrous and I have trouble with people.

Yes, I am working on moving and yes I do work mostly with remote clients. But you know how it is, clients feel much better when you can take them out to coffee.


> I live in a country where very senior developers often get confused and charge as little as 20 euro per hour

I've seen this in the US too. Talented devs charging 20-30/hr, while talentless hacks making $100/hr.

Your salary is not a function of your skills. It's a function of your negotiation skills, timing, and luck.


Ah yes, but it is influenced by everybody else's salary.

When a business can pay a well established[1] local web agency 5 euro more than me, a single developer, who do you think they are going to pick?

[1] well established meaning they are considered one of the best 3, if not the best web agency around here


I'm in a similar position. I graduated last May, took a full-time job that has ended up being completely different than what was advertised and I'm about to quit.

During college I worked part-time for a small company doing ASP.NET and I'm close to starting up for them as a freelancer/consultant while I work on some product ideas I have. My hope is that I can leverage my experience with that company into other consulting gigs in the future.

My problem right now is that when I was working for them during college I was getting $20/hour. Before reading Patrick's post I was hoping to get up to $30, now I feel like that's inadequate! Just not sure how to ask them for more.


This is a great article, but one thing it doesn't really address: how does one get started doing this while still keeping a day job? I would love to start charging for value by the week, but if I can only spend 10 hours a week on a particular contract, how do I sell that?


I think the point isn't really that he's charging by the week, it's that he's selling the value he provides to the company, rather than strictly selling his time.


Charge per 0.25-week increments? As long as you hold up your end of the bargain by providing enough value, they'll be happy to recommend you to a friend, or request your services again. Later on, you can charge for larger increments while retaining your billing rate.


Your value will be 1/4 of what the full week of work would be, so price accordingly?


When I hear "consulting," I think about escaping the grunt work that is actual programming. How much of your time as a "consultant" do you spend actually programming? What other tasks do you do on a day-to-day basis?


Talking to clients, getting buy-in for things I want to make, looking at metrics, thinking, learning about the product / space / company / etc, assorted engineering stuff that isn't programming (wireframes / specs / tests / demos / docs / etc), writing copy, etc etc.

Time allocation varies greatly depending on the client and what we're working on. I've had engagements where I spent 100% of my time talking and I've had engagements where I spent as-close-to-100%-of-time-as-practical in heads-down going-to-ship-this-project mode. Most engagements fall somewhere between the two extremes, clustered away from heads-down-programming.


Do you have engineers on payroll to whom you can outsource the bulk of the actual programming, or do you have a network of independent contractors that you keep going back to?


I know people who do both, but I do neither. If a code is written for an engagement I'm brought in for, either I write it or a client gets it written by the engineering team. (I work for software companies.)


How early can I start doing this? I'm young but confident and I do feel like I have something to offer people already. I guess it's getting the first client which will be tricky...


"How early can I start doing this?"

Read the book Million Dollar Consulting. It pretty much gives a step-by-step guide, from lead gen to writing proposals to how to bill by value:

http://www.amazon.com/s/ref=nb_sb_ss_c_0_19?url=search-alias...

It repeats itself a lot and is generally poorly written, but there's still a reason why it's been the top consulting book for decades.


I have absolutely no idea how people start consulting. How old are they? Did they work something else before? Did they major in anything? Are they all independent or work at consulting companies?


Yes.


OK, the point is any of these things could be the case, or not. Some people start consulting immediately. Some don't start until they have been working "regular jobs" for 20 years. Some start young, some start old, etc. There is no one way to start. Just start.


There's only one consistent answer to any questions WRT consulting and that is "it depends."

I've been in your shoes before, trying to figure out exactly what consultants do and how to start doing it. Once I gave up on finding a simple answer and just did it I started to understand the game.


There are lots of ways to find a first client:

* Craiglist/eLance/oDesk ad * Tell people you want to do consulting work. People know other people. * Walk into a relevant business, after having found something could contribute, and ask them if they'd be interested in you helping them make money.

I've used all three. A local Kijiji ad has been surprisingly lucrative. Probably 10K over the past couple of years.

Referrals work great, as you're already proven.

The third one may sound iffy, but if you ACTUALLY can help, and you sound like you can, people will JUMP at the opportunity to have you help them. Happened to me multiple times.


It's totally doable. You'll probably start off with a lower hourly at first, but you can quickly establish a higher rate and then eventually a consistent weekly as patio11 described. Early in college, I found the best way to find my true hourly rate was through project-based pricing with well defined scopes. The scope needs to be clear and you have to prevent any scope creep, as that will negatively affect your rate. Once you've gone through a project or two this way, you will have established a pretty good reputation with your clients, which would let you bill out at the real rate. After that you would be free to continue billing at an hourly or make the jump into weekly rates.


This is the best article I've read on HN in a long time.


You just go and be a contractor. There are tons of contracting positions open in London that will pay £500 - £600 per day. It's easy to make over £100k (pounds) if you're a good contractor.

http://www.cwjobs.co.uk/JobSearch/Results.aspx?Keywords=core...


A contractor (contract based, usually 3-6 month intervals, low paid) is a totally different thing to a freelancer (higher bill rate, hourly ad hoc projects usually) and a consultant (much higher bill rate, but project based instead fixed interval based).


Thank you for writing this. It's too often that I feel alone in the world of dev consultancy! I've been running my company for 3 1/2 years, I started it straight out of college in 2008 when I realized job opportunities were slim to none and I'd have to figure out how to pay my rent regardless.

The most important lesson I learned all these years: find a reputable client, do good by them and watch word of mouth spread. Our biggest asset is the great referrals we get from our clients.

It's all too often that we end up taking over a project that was done by some previous consultant/freelancer where they obviously didn't care about the client relationship and let the work get sloppy. It's a shame! (Also, I'm not talking about tiny projects for no name brands, I'm talking about major retailers, musicians and sometimes fortune 500's).


To be a consultant, rather than an hourly-rate freelancer, you need two things:

- insight

- reputation

The reputation (from prior work) gets you in the door, and the insight (from your wealth of experience in the field, which you have, right?) is what gives you the right to call it a "practice", and the right to get you the 5- and 6-figure paychecks for each engagement.

Insight is more than just experience; you'll have to offer something unique and valuable for each customer that they can't just get from their local recruitment agency for commodity rates.

You have to be able to communicate at senior management level, in big picture terms, but also operate at the ground floor and all the way up. You must be able to advise at each level of the organisation, while understanding the nuts and bolts of the guy doing the programming (and quite probably doing it yourself).


Patrick, while being such a web marketing guru, how come you named your page title (and article path) "consulting" instead of using the title? I realized this after bookmarking you in pinboard and later realizing there is a mystery "Consulting" entry in my links feed.


I couldn't help but post, I run a very similar business model to the one that is described in the article and i can confirm that it is a very successful model. We are slowly at the stage of try to scale out.

The "terrifying cashflow" problems are very real, we take the model of taking a modest wage as to not cripple it the cash flow. We also have put on our first staff member which we are pretty excited about.

Its interesting to hear that others are using the residual cashflow to create a product. We have tried to generate a couple of differente products but it hasn't out performed the consulting arm.


At the end of your article you said to hit reply if you want to hear more, but I didn't see a reply button so maybe you meant post it here?

I'd like an article about the transition from being an employee of a company to being a consultant. I've never been a consultant before and it's extremely intimidating to think about quitting my job. Did you/do others usually do this all at once, or is there a way to do it gradually? As gradual as possible, ideally.

Does it make sense to have a weekly rate if you only work 2 hours a day after your day job?


Great Point about asking what they can cut to get to their budget... This is the reason why when negotiating media buys with commissioned salesmen, you should always give them a budget first and stick to it, and than negotiate for more exposure...This way, the salesmen's commission remains in tact, and he fights to get you what you want, because he wants the sale... Instead of being in a situation where every penny you try to cut in your media spend, he views as a cut to his commission. Great Post.


The title is also a little confusing. It's not about making $XX,XXX per week programming. Rather, it's about marketing. I'm not sure the same rates would apply to developers becoming "consultants". I think it's something like this (two different tracks):

Web Site Developer => Marketing/SEO => Consultant => $XX,XXX OR Programmer => ISV => Product => $XX,XXX


What are some good resources for learning how to handle corp to corp paperwork (contracts, billing, insurance, etc)? It's very easy to land contracts through agencies, who handle all of that stuff for you, but billing these kind of rates through them is not possible, since they are going to take a large cut for themselves.


Form a working relationship with an accountant. This is exactly the sort of advice they are good at.


I'm just a beginning Ruby on Rails programmer right now, and I would love to start consulting on the side. Not just for the money, but just to gain business savvy. Negotiating and delivering goods is an essential skill I believe a business owner should have.


A question comes across my mind; being a developer how one can make a difference between working as a freelance or given consultancy? At the end of the day you're going to write code, No?

Answers by you guys may help many freelancers who might prefer to follow Patrick.


I imagine you must know a lot about programming to make this work? Ho often do you tun down jobs because the work is too over your head? Or you don't know the language the work is required to be written in?


On a related note, does anyone have some informed opinions on the best type of business entity (e.g. LLC vs S-Corp vs C-Corp, etc.) to set up for a consulting business such as this?


You mean LLC vs Corp? I'd go with an LLC. Corps have more formalities like required meetings, minutes, etc. And they're set up to be invested in. LLC should protect your assets without having to jump through too many hoops. The taxes differ, consult a tax pro. You can always convert an LLC to a corp down the road.

That being said, I consult on the side and am trying to grow my business and haven't set up any company yet. It's a little risky but then again I'm not doing the kind of work where I'm likely to get sued, and I don't have many assets.


Talk to your accountant.

You do have a business accountant, right?


Not sure but kind of relevant post in Inc:

http://www.inc.com/marla-tabaka/charge-customers-more.html


The choice of varying fonts makes me suspect he is trying to sell something? It looks like a get rich quick spam page, what do yall think?


Has anyone had success with ecommerce consulting?


Yes, do you have any specific questions? We do a lot of Magento builds for medium sized retailers.


What does medium sized mean? My friend has an online store that grossed 5 million USD in the last year, he is looking for help him next-gen'ing his Magento store as well as SEO. Is that something you'd be good at? He wants one solution provider for both re-doing his store and SEO.


Can you send me a quick email so we can take this off the board? I'd be happy to either help or point you in the right direction. [email protected]

We do work for retailers such as True Religion Brand Jeans, Joie Clothing, Tart Collections.. (all Magento based).


"Finding a bigger fool" method because I'm, air quotes, "Internet famous."?

Oh I get it, it's very clever.

Placing narcissistic postings on HN in an a proper time (Monday, morning) with a catchy headline and provocative wording, including digits is a nice work, of absolutely nothing special.)


No idea why this would be downvoted except for the fact that Patrick Can Do No Wrong. He's wildly opinionated, questionably successful before his sudden consultancy (he wrote a mildly successful Bingo card program in Java), and self-satisfied beyond measure.


Because it's mean spirited and adds nothing of value to the conversation. Your comment is similar; your dislike of Patrick is based entirely on who he is and doesn't bother to engage with the content of the essay at all.


I'm not sure I agree that the post above has no relevance. Every time I encounter (an extremely highly voted) patio11 post, my used salesman alert starts blinking. The guy is obviously a master at garnering karma and links, SEO, what have you, while seemingly providing some value. And he makes his money from this combination. So it is useful to realize where the OP is coming from (self-promotion) when considering the validity of his posts, since they are largely anecdotal.


Everyone is talking about something different when they say "consulting."

I get the feeling some people are talking about freelance marketing with revenue-sharing, freelance development work, freelance sys admin work, and then business advice.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: