How I went from $100-an-hour programming to $X0,000-a-week consulting
training.kalzumeus.com
training.kalzumeus.com
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.
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 company could of course treat it as "doing more with less" and therefore use it for cost cutting instead. Depends on the situation.
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...
Actually, I'm wondering how can I get gigs that pay $100/hour in Japan.
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).
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.
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...
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.
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.
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.
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.
So you're right from a programmer's perspective, and about the unhealthy bias. But most people don't think like that.
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.
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.
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.
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.
>> 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 ;-)
"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
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 only worked a few times, but for those few times it was worth it.
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.
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!
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
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'.
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.
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 ...
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.
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.
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.
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."
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.
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.
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.
Presumably it wasn't The Next Big To-Do App but something that gave quite a bit of value.
Great idea you've got there. I wish you only success!
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.
Reminds me of this thread "Don’t Use Automatic Image Sliders or Carousels": http://news.ycombinator.com/item?id=4595026
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!
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.
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.")
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.
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.
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.
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.
Don't undersell yourself!
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).
- Start going to meetups and make friends (no meetups? Organize one!)
Socializing can turn into an enjoyable activity over time, just like how a multiplayer game turns fun once you get past the newbie mistakes.
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.
Well, I'm screwed. I can barely speak in private or deal with people.
Perhaps someone else can use your advice, though.
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.
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.
http://www.amazon.com/Small-Step-Change-Your-Life/dp/0761129...
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.
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.
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.
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.
http://www.mpowers.com/books/charisma.html
I definitely recommend it.
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).
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.
Source: I work in an office co-share with a dozen or so web developers in Minneapolis.
Patrick's post is more about consultation rather than freelance work, I wonder whether people prefer to hire remote consultants?
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.
Do you know of anyone that bills 20k$ a week in Poland?
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.
Write stuff people want. Get it distributed widely. Repeat.
It's one of the easiest ways to build credibility and a pool of clients (direct or sources of referrals) I've come across.
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.
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.
http://finance.yahoo.com/news/rich-dad-poor-dad-bankrupt-163...
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.
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.
You absolutely have to meet the customer requirements in your response. But its up to you where you place the emphasis :-)
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 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...
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.
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?
-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!
- 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.
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 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?
In total it cost me about $2000 but am expecting work to come from it.
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.
Thanks for the advice, I'll try to put this into practice. :)
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.
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.
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.
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 :)
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.
[1] http://www.kickstarter.com/projects/seanbonner/safecast-x-ki...
regards, manuel
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.
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.
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.
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.
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.
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.
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.
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.
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.
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!
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?
I also recommend Patrick's recent podcasts/interviews on the subject.
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?
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.
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.)
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.
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.
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.
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.
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.
- 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.
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.
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.
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.
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?
Alternately, you could raise your rates a bunch, save the difference and try to retire early.
I could be very wrong about that, though.
"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.
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.
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.
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.
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)
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.
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'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.
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
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.
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.
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'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.
* 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.
http://www.cwjobs.co.uk/JobSearch/Results.aspx?Keywords=core...
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).
- 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).
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.
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?
Web Site Developer => Marketing/SEO => Consultant => $XX,XXX OR Programmer => ISV => Product => $XX,XXX
Answers by you guys may help many freelancers who might prefer to follow Patrick.
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.
You do have a business accountant, right?
We do work for retailers such as True Religion Brand Jeans, Joie Clothing, Tart Collections.. (all Magento based).
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.)
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.