You can have it done right, cheap, or quick. Pick two.
You’ve probably heard the saying before and laughed about how it’s especially been true of some rush project you worked on, or an old code base you’ve had to revive. As a software developer, I’ve found that the statement, while true about projects, is also indicative of the type of developer I am.
This is where I started - 3 years ago I quit my job and started freelancing. Low hourly rate, but I’d work whenever I could and managed to (barely) make ends meet. My clients got results quickly and everyone was happy except for me. Working this way taught me two important things:
If your client is worried about money, they either don’t value the work that you’re doing, or don’t understand the value that you’re providing them. Yes, there are budgetary concerns that should be accounted for, but the work you’ll be doing should be perceived as valuable. When you find yourself haggling over dollars, take a step back. Ask yourself, “Will the outcome of my work be worth whatever I am being paid to do?”
If the answer is no: There’s no way that the arrangement will benefit either you or your client. Walk away as gracefully as you can. If you aren’t providing good value with the work you are doing, then you are doing a bad job as a consultant.
If the answer is yes: Illustrate the value you’re creating to your client. Make sure you use ‘you’ language and write about the benefits that the project will bring. If this doesn’t work, you just need to end the relationship. Try not to burn any bridges in the process.
‘You’ language is a concept I first heard about in Dale Carnegie’s classic, How to Win Friends and Influence People. Though this book is almost 80 years old right now, it contains timeless advice. If you’ve ever had trouble communicating your point of view, reading this book is your first step to fixing that problem.
‘You’ language describe your clients pains and how they’ll magically disappear, instead of talking about how you’ll use Rails and JSONs to make a robust, clean solution.
You will start to see conversations from a new perspective and be able to find ways to communicate more effectively. Specific to this situation, you’ll be illustrating the value that you’re delivering and making your clients wonder how they can pay you more!
I am extremely pragmatic about my code. I like to do things as simply as possible, but make sure that they are done right. Churning out poorly implemented features that have been cobbled together in a stackoverflow copy-and-paste frenzy will never result in a quality product. The next time you go to look at that section of an application, you won’t have any understanding of how it works or why it was done that way.
Striving for quality will make you a better developer. Being a better developer means that you’re saving any future developers (including yourself.) Be kind do your colleagues and do what you can to reduce the WTF moments they might have.
This is no-mans land for a freelancer. It’s a bad place to be in, because if you’re a good developer, you should be communicating how that is a benefit to your clients and charging them accordingly. Not charging enough will lead to burn out and since you still need to pay your bills so you’ll be working a lot more than necessary. Setting a sane rate is just a matter of determining what kind of value you are bringing to your client and charging accordingly.
Another benefit to charging more is that your opinions will hold more weight. Think about this: if you charge $300 to make a website, you will be considered to be providing the same skill level as someone’s ‘kid brother’ or nephew, or that guy down the street that’s really good with technology stuff. That’s not you. You’re not just some guy that can build a website. You’re an expert in web development and an expert demands a wage equal to their level of expertise.
All of a sudden, you’re playing a different game altogether. So, what is it that allows a freelancer to move into the Good and Fast category (notice that we’re no longer cheap?!?) Perceived value.
If you are doing any software development or consulting professionally, this is the category you should fall into. There is no alternative. If your skills and expertise are not providing value for your clients, you are doing a bad job as a consultant. You’ve been hired to make your client money by increasing their profits, decreasing their costs, or handling a specific problem that would be expensive for them to deal with otherwise. You should be able to clearly state the way that you’re improving their business and how much that is worth to them.
The more accurately you can express this value, the happier your clients will be with the work you are doing for them, and the more you can charge them for it.
Here are the three reasons that your clients will pay premium rates for someone that is good and fast:
Whether you accomplish this by increasing revenues or decreasing costs, the main reason that any business will engage your services is that they have a problem they believe you can fix. You’re providing them with a solution, not a technological marvel. They won’t care if it’s a great codebase, unless you tell them why that is of benefit to them. In this case, TDD/best practices/maintainable code base == ‘lower total cost of ownership.’
Another reason that clients will pay premium rates is that you’ve got expertise that can’t be found elsewhere; this is different than a value-based engagement and more akin to the laws of supply and demand.
I’ve had good success engaging larger clients who need specialty work done at premium rates. Generally these commitments pay much higher because: _ you have a proven track record _ there is low risk that the project will fail to be delivered within the time and budgetary restraints that they have.
These are the reasons that consulting firms can bill upwards of $800/hr to large clients. The extra cost is insurance that the job will get done.
If you are freelancing right now, do yourself a favour and move into this category. It’s not a huge stretch to get here. You’ll be working with better clients that value your work and you’ll have more time to focus on other areas of your life.
All you need to do is take the time to learn how to practice value based pricing and begin writing all your proposals this way. This will give you a huge competative advantage when you pitch potential clients on using you for their next project.