Hacker News new | comments | show | ask | jobs | submit login
Productizing A Freelancing / Consulting Business (kalzumeus.com)
199 points by joelhooks 1608 days ago | hide | past | web | 64 comments | favorite

Feel free to ask questions if you have any.

Sidenote: This is the automatically archived version of an email which goes out to ~7,000 people who explicitly asked to get email from me. I'm trying my level best to step up the frequencies of email to my list to "every Friday" from the more typical "monthly." I intentionally do not post things to my blog that frequently, partially because I know that I have a bit of a rep here and 95% of what I write gets to the front page. If you guys submit everything I email to HN, that's going to wear out my welcome here in short order. I'd have to do something drastic like having the archive page check referrers and, if its from news.ycombinator.com, spit out Markov-chain generated drivel about how Snowden hacked the Occupy the recording industry. I don't want to do that, so please, exercise some discretion on submitting the emails. Thanks in advance.

Using your example where a client is on retainer for two floating days per month, how do you avoid clients making urgent demands for that time? I fear having a number of clients pre-paying for time each month and then the last week of the month those that, for whatever reason, didn't use their time, staking claims.

Edit: BTW, great article. Thank you.

1) Has this ever actually happened to you? If not, like most fear of success, it's probably manageable to put it off until it actually happens.

2) Clients are buying your availability, they aren't buying bump-what-you're-doing-now. (That's a separate service, and ridiculously expensive.) If they find makework for you on the 29th, you tell them "Gotcha, I'll tell you when it is done and we'll count it against this month's allocation." If they balk at that, you can tell them that happily your email address works all 30 days of the month and that they can get in their requests quicker for faster turn-around.

Of course, the ultimate protection against clients being impossible to work with is not working with them, but -- again -- I'd wait until you actually had a problem before rejecting them for that.

You're still in charge of scheduling when you'll actually get the work done.

The benefit for the client is that they don't need to review and sign a brand new Statement of Work whenever they want to change a button's color or tweak a feature.

Should your client need work that will seriously disrupt your schedule / happiness... I wrote my thoughts on that a few months back: http://planscope.io/blog/should-you-charge-more-for-a-rush-j...

Using your example where a client is on retainer for two floating days per month, how do you avoid clients making urgent demands for that time? I fear having a number of clients pre-paying for time each month and then the last week of the month those that, for whatever reason, didn't use their time, staking claims.

1) In my experience - it doesn't happen.

2) The way I set it up to alleviate that fear, before I saw that it didn't happen, was to separate the booking time from the delivery time. So $client gets N days each month when they can ask for a booking, which will then get scheduled in over the next 30 days from the point they book it (so if the client requests N days on April 15th, they get booked in any time from Apr 15-Jun 14.)

Make sure you keep in touch with the client. Use those hours so they see value. In Patrick's case, it can be as simple as creating a mailing list for clients and sending middle managers tips on industry trends, possible candidates for positions, etc.

This will also keep you from being surprised when someone wants their 10h/(month|week|whatever), and may actually prompt you to recommend how to use that time. They will pay you for leads on additional work because they see that it's a winning situation for them.

I find that many of my clients aren't eager to do retainers because they don't trust that I'll actually be around (I did only start consulting this year). Do you have any advice for overcoming that?

They only say that. What they mean is they think they can find another Ruby On Django-AWS Front end developer any time they like. Your job is to convince them there are no other developers like you out there - and the best way to do that is not sell yourself as a developer but as someone who uses software to add value to their business.

This could be turning up and running email campaigns to improve retention, or it could be the wider world of finding a niche in a nice industry that is about to get disrupted (all of them), working out what the world will be like after it is hit, and becoming an expert in that business model / software

It turns out writing software at the dynamic language web request processing end is nothing particularly strenuous. Which means some great tools get produced quickly which means the people who can sell a solution dont necessarily have to be the ones who can write it.

What I think I mean is that increasing customer conversion for SaaS companies is a lot less coding than it is getting the gig and introducing rigour into an ignored process

If you want to stay ahead of the game - well I am not sure, but its likely to be find a vertical niche, where specialisation wins or find new technical integrations where early wins (such as uses for UAVs) - but combinations appeal to me - I bet there is scope for GPS in waste collection lorries for example, and across europe thats a multi billion dollar industry

Work on increasing perceived professionalism: no lawyer in the history of the legal profession ever had this problem. (Slight exaggeration, but not much of one.) This is a broad topic, but in general, be more communicative, comport your affairs like you're a serious business (contracts, professional language, business mien) rather than a kid cutting lawns for beer money, etc.

As a stopgap, offer to invoice after the month, not before: "That way if I'm not there when you need me, you don't have to pay."

That strikes me as right out if the Uncle Bob Clean Coder playbook - and is one I completely underestimate

THanks for the reminder


Why do you think it's appropriate to post this to a public forum? It's off-topic and completely insensitive -- send him an email next time.

I disagree that it's off topic. Patrick's email/article gave an example of how easy and valuable it can be to automate something within a doctor's office, then added this:

"Many things are easy for software companies in a way that they just aren't for non-software companies... doctor's offices don't think of APIs for the same reason that developers think that free soda is a wonderful thing to treat your employees to."

I read that as encouraging developers to look at doctor offices as a valuable market without warning them about the importance of HIPAA/HITECH compliance. And I believe that can get folks into trouble if they aren't careful.

Perhaps I should have simply phrased it that way instead. Thanks for the feedback. I deleted my prior message and I'll email Patrick with my concern.

Your clients will tell you about their concerns. Whether it's HIPAA, PCI, PABP, SOX, ITAR, etc., they tend to be overly expressive and understanding. They're also very similar and once you've nailed it a few times, whether it's "securing privileged information," "transparency," "traceability," etc., a quick browse of the Wikipedia article can warn you of any specifics that are outside your experience.

The emails are fantastic and I recommend them heartily. Please do consider subscribing if you haven't yet.

Hello Patrick, always wanted to ask you - when you'll have a time, could you please describe some [hypothetical] case of your consulting with all the exact details of what you get paid for? I mean, while your posts on relevant subject are interesting, they are rather generic.

He has mentioned in the past that most of his consulting includes non-disclosure agreements. WPEngine is one client that he is allowed to talk about. Also, he prefers not to mention rates because a) they've gone up over time, and b) he doesn't want to have to negotiate against his past self when pricing.

Oh, my mistake. I meant:

"exact details _for_ what you get paid for"

i.e "for what", so I'm not asking exact rates, but more concrete details of the job he has done. And this could be a hypothetical case. So, basically, did he implement some code, or told to implement with very specific details (e.g. at API/types level) to the senior engineers from the client company? Did he work on copywriting or similar? Did he help to determine exact price of the targeting product; etc...

These are full of actionable advice if you are planning to do or doing consultancy/product business.

Anecdote: reading [0] in Patrick's last Friday email was a light bulb moment for me. The timing was perfect as I was about to throw pre-launch page for http://www.ASPSecurityKit.net . Though the product’s target market is primarily software developers, still the copy should address what kind of systems they can build with the product I’m proposing rather than listing the raw technical features “activity-based, resource-aware authorization … Blah blah” and expect them to think what they can build with it.

[0]: a consultant hired to build an in-house CRM wouldn't pitch "Our CRM is going to be easy to use", they'd pitch "Your sales team will close more deals in less time when using our tool."

Edit: As a consequence, made it to HN home page, and collected a lot of interested folks' emails (in 3 digits).

Sorry, I will do so. I just really enjoy the content, and it seemed relevant to this groups interests.

Yesterday I was actually looking forward to your email ahead of time ;)

Given that I immediately emailed this to many people, I'm not sure I agree with Patrick that he'll fast overstay his welcome. If you write remarkable things for our community, expect them to be shared.

If you were to promote a new web business, what steps would you take today? (assuming you could not use your celebrity)

instead of complaining about posting to hn something you have chosen to post publicly on the internet, consider not to publish it at all. if it is meant to be be seen only by email subscribers you could just, you know, put the story directly in email, not on your web site.

or is this just another way of self promotion?

It's obvious, what is going on here. He's got two groups he's trying to reach and "the front page of HN" isn't one of the groups. The first group is his mailing list. People who have expressed a general interest in what Patrick has to say. Patrick is investing hours (probably) into each mailing and knows there are people who have a specific interest in each one of these mailings. Through the Magic of the Interwebs it's possible that this second group of people with a specific interest could possibly find this mailing if only he would put it on the internet publicly. And for various reasons putting it on his blog probably isn't the most advantageous way of putting it out there publicly.

I hope your day improves, because it looks like it isn't going so well by the tone of your comment!

The emails are gold, and go out to 7000 people. I won't do it again put of respect for his request, but I guarantee every Friday will feature the web version of his email on the front page.

Personally, this is the stuff I want to see on HN. Educational content that helps me towards my own goals as a developer and content producer.

I think he was being sarcastic.

It's because of HN front-page I learned about and subscribed to your mailing list.

This may apply to many people here so I hope you don't mind answering a question specific to my situation. Huge thanks in advance if you can!

I've recently discovered a skill I never knew I had - and one I'm way better at than being a developer. I'm really good at working with non-technical people who want to build things. I can explain technical things to them in a way they understand (because I was in their shoes for many years). And most importantly - I can quickly grok what business problem they are trying to solve and think of way better ways to solve them than whatever strategy they came up with ("I want a site that has like dropdowns and a calendar and logins and maps and a place where..." when a two page lander+them doing everything manually, would be a better and cheaper way to test their idea).

Ok so my question is, how do I market that service (not where to find clients but how to pitch them)? What do I call myself? Should I just charge them hourly/per project (and offer the 2-day a month retainer) or is there a better model I could sell them on that could be more lucrative for me and a better solution for them?

This is the difference between a consultant and a contractor.

A contractor is an order taker. A consultant is a trusted advisor.

You'll pitch to a different level (middle managers and above) but you'll also double your billing rate. It works very well with companies that don't have a CIO/CTO/VP of IT and are struggling but don't really know why.

The epipheo guys are pretty good at putting business pain into a short message. You may not want to have cartoons, but watching their videos can give you quick insights on marketing your solutions.

As for what to call yourself, incorporate and go with "principal consultant", "founder", "CEO", whatever. If you specialize, use that in the company name or as a subtitle on your letterhead/email sigs/cards/etc.

"Product Management" or "Product Management Consulting" is probably the term you're looking for.

There are complete consulting firms built on doing Product Management alone.


The kind of non-technical people I work best with don't even usually know what product management means and I'm also doing the development, but that's a good lead. I'll check into it.

Given that description, I could see you working quite effectively in a technical sales role (e.g. sales engineer).

So let's say that there exists a service which does encrypted offsite backups. And let's say that it is technically impressive but far, far outside the ken of mere mortals to set up. And let's further stipulate that the founder is stark-raving mad about his pricing strategy and has decided that to ensure Appointment Reminder against $X00,000 losses should cost me, not a typo, $0.60 per month.

Thanks for the advertising. This is worth far more than the $100/month you said you wanted to pay me. ;-)

>This is worth far more than the $100/month you said you wanted to pay me. ;-)

I'm quite sure Patrick and a host of others would willingly pay you the $100, and shout the name 'Tarsnap' from the roofs. Seriously, you're a world-class mathematician; do the math and raise your prices.

Take. The. Money.


Someone who wishes he could dream about winning the Putnam ;)

Quite agree. Take my money too.

PUt it this way, I stopped backing up to tarsnap after a reinstall, but were I paying 100 a month it would be top of my todo list. Do me a favour, charge me more so I value it more


Just to add to the advertising (and to his point about how little you charge):

I've had a tarsnap account for about 3 years. Today I logged in and found that a server I thought I shut down last year is still backing up to tarsnap.

Tarsnap is so cheap that I never noticed.

Over 3 years and gigabytes of physical backups and terabytes-equivalent of logical snapshots, Tarsnap has so far cost me a grand total of about $48.

Interesting article, but perhaps rather optimistic about retainer arrangements?

For example, is keeping up with patches/security on a client's systems really compatible with the idea of a lightweight retainer, if a standard retainer is already something that you're scheduling yourself and charging out below your normal rate? Security monitoring is a premium service, because if someone with a system holding sensitive data is paying you to maintain the security of that system by installing patches, your response time had better be measured in hours at most, every day of the year, even assuming there isn't some stricter SLA built into the contract. It simply isn't possible for any consultancy consisting of fewer than three individuals to provide such a service unless at least one of them isn't human. And in the nature of such a service, if you under-provide for any reason and your client takes a hit as a result, the consequences could easily be fatal to your business (and very unpleasant to its principal(s) personally, if the failure was due to negligence in arranging adequate cover).

I also question the idea that retainer agreements are ideal for implementation by juniors but chargeable at senior rates. At least here in the UK, paying recent grads employed by consultancies £200+/hour to stand around with a clipboard and look important died out a decade or more ago. If you tried that kind of bait-and-switch on a time-based retainer today, at best it would probably be an explicit violation of any contract that many clients would accept, and worse, it would probably sour the client relationship and potentially your consultancy's reputation for offering value for money, which is probably its most important asset.

I've nothing against the principle of retainers, but I do think this particular article fails to distinguish the kind of commitment and fees that go with a basic maintenance agreement from the entirely different scale of commitment and fees that go with premium/emergency services.

So many ideas :)

I have found that e-book writing is a nice way to get a product out of consulting engagement:

1- get a mission on an exotic platform or technology

2- read a lot about the subject, write your own documentation, format it nicely

3- you can sell it, but there's an even better side effect: you're now the guy who has written a book on the subject, which will get you more engagements...

I've been a salaried employee my whole career. All these patio11 articles are inspiring, but the main thing that intimidates me is I have no idea how to get started. How do you transition from an employee to a consultant?

You may want to refer to this thread: Ask HN: Becoming a Freelancer in 6 months? https://news.ycombinator.com/item?id=5945865 Lots of great advice there.

As for how to "get started," find something you're good at, find someone who has a related problem, offer to solve it for them at a discount because you are learning how to do this "solve problems for money" thing. Then, lather, rinse, raise your rate, repeat.

I'm Jevin, the guy referenced at the end of Patrick's email. In my ebook coming out in two weeks, I have a lot of actionable stuff for employees interested in transitioning to freelancing.

Also, for most of the 10 people I interviewed, I asked them for specific advice for people interested in starting to freelance. I hope it will help you!


Many do the transition by having the former employer become the first consultancy client.

There's also agencies that can help you, though this will typically get you into the role of a contractor, basically a hired temp, than of a consultant. But it's a common path to go from contractor for a client through an agency -> consultant for own clients.

Yeah I tried oDesk before, but I never got a job from that. It's demotivating to be competing with people from foreign countries that are willing to work for $3/hour. I get the sense that the employers on that site are looking for the cheapest hire, not the best hire. Maybe oDesk is completely different from typical agencies though.

I sought out people on oDesk who charged much higher rates. Most anyone under $30/hour on there is really unlikely to be any good.

oDesk is really tough. You need to find ways to differentiate yourself from all-those-other-guys.

For starters, things like: - Having a higher rate ($100+) gives perceived value. - Calling yourself a software consulting vs. developer I've found to be a big deal. - Being able to nail down the expertise you have (or want to have) and articulating it in a sentence. For example: I specialize in rapid development of web and mobile apps with the first iteration delivered within two weeks.

Yeah? Like what agencies? The only one I have heard of is 10X Management

Look locally. In Ottawa there are literally dozens. Might have to ask around.

I just got my first customer doing consulting for a proprietary software product. $90/hour, not bad!

Looking forward to reading this when I get home, (work firewall) :(

Congratulations !

Please remember to put some of that nice money aside for the month without income that will inevitably occur sfter contract ends (and tax!)

How will you raise your profile amoungst the users of that proprietary package (perhaps a technical blog focused on things you innovate or fix at work, useful mini script's, spending time being helpful on forums or LinkedIn groups)

Trust me, if you have just landed that first gig, now is the time to start laying the groundwork for the next one - take each lunch hour to a llocal park or cafe and write thise scriots or blog posts. One hour of your time a day will add up in 6 months (I guess thats the cconract length)

Ps new android phone horribke to type on

My one and only contract (this one) ends in a year. I got her to sign until 6/25/2014.

Some good suggestions on how to raise my profile, this vertical market software is on the rise, and hopefully have several more improvements to come (and an API which I am trying to get in on the ground floor of)

I just want to throw in there, that I just recently found patio11's newsletter, site, etc. And it is awesome. I emailed him last week, and he replied that day, with some great suggestions that I am implementing for makerops.com.

Now I'm questioning my ability to do mysql backups ...

What are you finding difficult? How did it lose you x00,000? (just curious)

Long story short: I thought I had two types of backups, MySQL dumps and snapshots of the VPS the MySQL server ran on. It turned out that those were both stored on the same hardware. (D'oh.) Which then had problems. (D'oh.) And my only accessible backups were a day old. I was either forced with "Lose a day of data" or "Reconstruct current state of SQL database from a machine will now not boot."

Long story short: After some don't-try-this-at-home-kids craziness I was able to bring up a second copy of the production environment from the bare metal, initialized it with an empty database, and then copied out the contents of MySQL from the barely functioning hard drive on a machine booted into rescue mode.

How did it almost lose me $X00,000? Well, clearly losing the database is Very Bad and losing the last day of data is Quite Bad, right? $X00,000 = somewhere between Very Bad and Quite Bad times the value of being the sole shareholder in Appointment Reminder.

"I thought I had two types of backups, MySQL dumps and snapshots of the VPS the MySQL server ran on. It turned out that those were both stored on the same hardware."

Can I advise anyone reading that who can't immediately say "I'm 100% sure that's not a problem for me." to go and check ASAP.

Just a few weeks ago, a bunch of my clients on a not-to-be-named hosting provider all got notice of brief scheduled downtime while new server hardware was to be installed in the racks. Long story short: They chose to use the downtime to power down and move both Dell SAN boxes across the aisle ("to make the wiring neater")- neither of them successfully powered back up (with ~72hr of fingerpointing before Dell admitted no data was going to be recovered). Turns out hosting company had been storing all VPS snapshots _and_ daily filesystem/database backups on those two SANs. ~150 websites ended up being restored from weekly backups (which, of course, were 6 days old - or almost 8 days by the time the "waiting round on Dell to recover the SAN data" plug was pulled).

It's hard to tell if we were lied to, mis-lead, or just allowed to make untrue assumptions, but we were certainly not expecting both the dailies and the VPS snapshots to all vanish with the same hardware failure... (It's unclear so far whether just one of the two SANs failing would have been quite so spectacularly bad... Fortunately these were almost all sub $30/month hosting accounts, so nobody was _too_ precious about their downtime or weeks worth of missing updates)

I'll second the call to double check that your database backups are OK. You do not want to discover that your backups are broken when you go to recover (this happened to me once).

You just changed the way I think about selling hosting and support.

Amazing! GitHub folks should hear you!

I had an early mentor on the business side of the software industry. He said there are three ways to make money, then he qualified it to 2.5.

1. sell your time 2. (the .5) sell other people's time 3. sell things

I never discount retainers. I've found that clients are more than willing to pay for them and are often happy to do so at a premium. In addition, I charge them the same for strategic consulting as I do for grunt work that their team is unable to perform, such as drawing visio docs for their IT team or teaching them about puppet and auditing their work.

I also retain ownership of work done, generally granting the client an exclusive license in their specific industry, which I spell out in the contract. This enables both of us to establish a competitive advantage. I brand it as a platform, service, or product and offer it to other clients. As I have improvements, it's a good opportunity to reach out to former clients. This type of thing is usually referred to as 'consultant ware' and can have a negative connotation, so I work to make it clean, fast, and pluggable.

The biggest leverage for me is to build my team as soon as I identify opportunities to help the client. I only bring in people who could legitimately be referred to as some of the best in their field. If it's an ecommerce engagement, I bring in people who built much of the product platform. If it's orchestration, I reach out to the inventor and see if he or favored consultants are available.

Here's the twist among other consultancies, however. I do not take a cut of my team's rate. They come through my paper and I adjust my GC, E&O, and other insurance to cover them, but the money I make from them is on admin (for which I bill the standard rate) and through access to other opportunities once I've established my team as a best-of-breed force capable of creating opportunities for the client without distracting their in-house team.

After a year or so, I like to offer the client the opportunity to split my consultants off onto their own paper. We all have great attorneys and accountants, and this can be a risk management technique that demonstrates you're not trying to milk the client through non-value-add services. This is also an opportunity for the consultant to increase their rate, as they will have additional expenses.

As a result, I have never had a consultant turn me down to work on a project. We are fiercely loyal to each other. Do not screw people over when it comes to money. It is never worth it.

Focus on the quality of all deliverables. If you don't have consulting experience with a big 5 agency, work on getting a look at their exhibits. Spend some time creating your brand. Pick (and license if necessary) a group of fonts, create document/email styles and templates, and use them without exception. If you deliver something on paper, use the best paper and printing for the job.

Don't generate invoices by hand. Don't do anything financial on your own. Throw Quickbooks on a virtual machine (their are even hosting services for this) so you can carry it around on an encrypted thunderbolt SSD and update it from anywhere or access it on your private server via RDP. Your accountant will be happy and it will save you thousands of dollars a year. Quickbooks Online and Quickbooks for the Mac are horrible. Don't touch them.

This is what it comes down to: you need to establish a positive reputation as an unflappable authority and you need to guard that reputation jealously. It's what will take you from worrying about having to be concerned about receivables and your next engagement to being confident and able to focus on the client, which will keep money flowing in.

These are some of the things that you'll need to resolve to cross from the ~$300k/year level to the $1-10m/year level. There are additional things to take it further, but they tend to involve less fun stuff than selling, building, delivering, and getting paid.

How do you build a team of the "best in their field" on demand? Recruiting a team takes time...

There's so little money to be made on billing the time running a team as opposed to taking a slice of the team's time. Is your team just a loose collection of other consultants? How do you guarantee they have time available? How do you deal with the huge amounts of funds you have coming in and out of your books without any sort of net on that?

I live in the Bay Area, so there are enough people with a strong skill set that are happy to shift hours to work on fun projects. I'm also a big fan of "you have 90% of this nailed and the other 10% will get you another service you can offer." Plus, I like these people, and I like working with them.

I've found that telling someone "I don't take a slice of your time" is another one of those things that demonstrates that I'm going the extra mile for them. I don't like agencies that take 20% for no value-add, especially when I'm actually bringing someone in to help me out.

I do pass through the $x/week, which has a nominal cost in time (15m/p if I'm slow), but I also make sure both sides of the relationship (engineer, client) are happy, on track, and continuing to make progress, and I handle almost all client visits. This is billable time. Generally, an hour or two of overhead with each person is more than enough time to make it worthwhile. Sometimes they spike and need help, which of course involves more time.

I pull from a number of people that I've met, been impressed by, and dragged with me like a plague from place to place over the past 15-20 years. They're all consultants (or companies of consultants) and if one person isn't available, they've always been willing to put in 5-10h/week to advise someone else who wants to master a skill set or solution domain. In addition, I've brought people into a place where they can continue to contribute after I lose interest and move on.

I'm probably the least mercenary of the group. I have enough stuff going on that I don't like to put in the insane hours. However, a lot of these guys will slam through 80+h/w to build the FU account.

I see this getting posted here pretty often, but that said, great post. This is a good one to go back and read from time to time.

You might be confusing this with "Productizing Twilio Applications", which was about the engineering challenges of moving from Twilio code samples to reliable ways to test, architecture, and deploy Twilio applications. This is rather unlike the current email, which was written today and is (to the extent I'm capable of talking about new things after eight years of writing a metric effton about this industry) all new, and focused on how to get consulting companies to turn their buy-our-time-in-discrete-chunks model into a productized buy-our-value-without-necessarily-our-time model.

Not possible. This article was emailed out about an hour ago.

Also, there is this: https://vimeo.com/32877616

Perhaps I've just seen this in different formats? Good advice nonetheless.

I have an archived version in Pocket from a while back, but whatever.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact