Web Design Is Neither a Career Path or Business

So you have a new MacBook and you know what HTML5 is. You self identify as a programmer or developer or designer or, hacker. You’re the resident “tech person” at home and at work and one day your boss asks you to build him a new website. This plants the seed of an idea that’ll grow into the poisonous plant of a thought. You’re going to be a “web designer”. You’re going to have a website and business cards and, yeah, a “real business”. Please save yourself and everyone else the trouble and don’t do that. Before we get into why you shouldn’t, I’ll be the first to admit that I have been guilty of most of the mistakes I’m about to call out. So if you feel offended or find you’re guilty of some of these, don’t worry. The point isn’t to make you feel bad, it’s to give some perspective and hopefully plant the seeds of some better ideas.

Suppose you’re good

Let’s start off with the assumption that you’re really good. If you made it this far and are thinking you know what I’m about to say and are considering not reading the rest of this then this part is for you. Suppose you’re a great font-end developer and you can design your way out of a paper bag at least and can create some pretty decent mockups in Photoshop as well. Let’s take our assumptions a step further and say you’re the Unicorn of developers. You’re an expert front-end and back-end developer. You can manage the shit out of a VPS without looking at the Linode docs. You’re also amazing in Illustrator and an acclaimed web and graphic designer. You’re a fucking web design and development savant. You’re the Rain Man of the smartphone generation. That’s all well and good but the cards are stacked against you.

Websites are a commodity

Webster’s Online Dictionary defines commodity as “a mass-produced unspecialized product”. In 2015 going into business as a “web designer” (loosely defined here as anyone who sells people custom websites) is roughly equivalent to anyone who decides they want to sell hamburgers. You need a combination of luck and some really badass business acumen to pull it off.

You’re competing against cheap, fast, do-it-yourself web creation software that lets people create websites for free or incredibly inexpensively. There used to be a time when templates were looked down on by everyone including the people who now buy them. It turns out that no one cares about design anymore. What they care about is being on the web because you don’t exist if you’re not there. So how are you going to sell not-cheap, slow, custom sites to these people?

Before we can answer that question, let’s figure out who “these people” are. They’re small to medium sized businesses in your neighborhood, city, state that have no web presence or a terrible one. They don’t have a couple thousand dollars to spend on a website and I don’t blame them. By the way, you aren’t charging under a grand for web design right? Because if you are, then you are either undercharging or, more likely, you’re not as good as you think you are.

That’s not to say there’s no market for what you’re doing. There certainly is. Unfortunately, that market is shrinking quickly.

This graph shows the interest in web design over time. Right now its flat lined and it’s forecasted to shrink in the future, albeit slowly.

Another ominous graph.

Going back to the hamburger analogy, let’s think of it another way. You love cooking. You’ve got an amazing hamburger recipe and you know you can serve your community with some amazing heart attacks. I mean, burgers, fries, and shakes. Great. But your town already has a McDonalds. They’re ubiquitous. So when your potential customers want some fast food it’s far more likely they’ll come across a McDonalds and eat there before they see or even think of your shop. McDonalds serves tasty food, but it’s not the absolute best. I know plenty of small places that serve far better tasting fast food. In my neighborhood there’s a place called Strat’s. My girlfriend and I stopped by there once and had the most amazing burger and fries of our lives. The owner makes the food himself. Everything is fresh. He’ll make recommendations and talk to you. It takes a few minutes to get your food but when you do it’s great. Strat’s is an outlier. He’s the only small hamburger joint in a town full of White Castles’, McDonalds’, Wendy’s, etc. I always wondered how he survives.

Well, it turns out that he’s carved out a special niche and staying in business isn’t easy. Although it looks like he runs a fast food joint he doesn’t. He sells burgers and fries as slow food. His customers value the quality of the food, the atmosphere, and the relationship he builds with each and every person who comes through his door or drive through. Although the price is somewhat comparable to fast food there’s still a premium to be paid for all that quality. It takes a special person with great business sense and a deep understanding of their customers to come into town and operate what is essentially a burger, fries, shakes place on the same street as two McDonalds and a White Castle. You may stop by Strats out of curiosity like I did but it’s unlikely you’ll frequent the place like many frequently return to other fast food places. The reason is that although we all may appreciate better quality food and the vibe you get from a place like Strat’s, we value convenience and price more when it comes to that type of food. He’s turned burgers into a boutique business. It’s tempting to think you could do the same for web design but it’s very unlikely. Web design as a business is a lot like the restaurant industry. Margins are low, turnover is high, and likelihood of success is astronomically small (like another restaurant in a great location in my neighborhood that’s closed and reopened 3 times in 2 years).

So, for all you talented developers out there, the basic problem is that websites are now a commodity and you need to differentiate yourself from the pack. Unfortunately, when it comes to service companies, they’re harder to support and more likely to fail than product companies. But they do it in the sneakiest way. With a product, you launch and figure out no one likes your product quickly. With a service you may be in business for quite some time before you realize that the market isn’t as big as you thought it was and you’re unable to continue operating at your current price point and service offering. That’s because while you’re busy serving customers you feel busy and that makes it seem as if business is booming and doesn’t allow you the time to focus on the parts of your business that are indicators of future failure.

There’s quite a bit more for those of us who know what we’re doing but I’ll stop here because you probably get the point. Up next are all those keyboard jockeys who think they’re hot shit but couldn’t code to save their life if they had to and… they don’t know it.

You think you’re good. You’re not.

This was me five years ago. I was a competent developer who thought he was an expert. Every few months I look back and my past self and each time I’m amazed at how awful I was at everything I did. It’s perfectly natural to feel this way about your past self if you’re a healthy person growing in your talents and abilities but what I was seeing was different. There was hardly any single piece of work that I had done that I could honestly feel proud of. The disparity between my current ability and my past work was far too large to attribute to simply growing as a developer. Everyone who masters their field goes through a phase where their work falls short of their expectations of themselves but at some point, if you’re really honest with yourself, you know deep down that you’re not really progressing in such a way that your work is going to be as good as your ambitions but instead, if you listen to your inner voice, you’ll hear it say that it might be time to give up.

Ira Glass has a great quote about this. The video is also great.

Nobody tells this to people who are beginners, I wish someone told me. All of us who do creative work, we get into it because we have good taste. But there is this gap. For the first couple years you make stuff, it’s just not that good. It’s trying to be good, it has potential, but it’s not. But your taste, the thing that got you into the game, is still killer. And your taste is why your work disappoints you. A lot of people never get past this phase, they quit. Most people I know who do interesting, creative work went through years of this. We know our work doesn’t have this special thing that we want it to have. We all go through this. And if you are just starting out or you are still in this phase, you gotta know its normal and the most important thing you can do is do a lot of work. Put yourself on a deadline so that every week you will finish one story. It is only by going through a volume of work that you will close that gap, and your work will be as good as your ambitions. And I took longer to figure out how to do this than anyone I’ve ever met. It’s gonna take awhile. It’s normal to take awhile. You’ve just gotta fight your way through.

What I’m getting at here is that those of us who believe we’re the best probably aren’t. Even well respected professionals admire the work of others and have this sense that their work isn’t as good as it can be. On the other hand, its always the people who are the worst at what they do that believe they really are the best.

The world does not value your work

I can’t tell you how many times a client passed up my services citing expenses and handed the project over to some yokel who owned a copy of Dreamweaver to complete. People will often give a project to their nephew who is “good with computers” and took a web design class once in high school. This is how real people think. They do not understand the value of having a professional web developer create their site. They see these DIY tools and kids learning about websites in school and think “hey, they have kids learning it, it couldn’t be that hard”.

Part of our jobs as professionals is to educate clients on what the value of having a professional developer really is. But of course, there’s a problem with that approach. When you’re first starting out, all the people who are willing to listen to you explain these things are way out of your league. In fact, most of them already know the reasons why. They’re the big businesses that can afford a large agency or to hire someone in-house to begin with.

You, as an aspiring web developer, are stuck it seems. The small to medium sized businesses either don’t have the budgets to hire you or don’t see the value in what you offer. The companies who would hire you won’t because you’re just not big enough. The work they need could pay your salary for six months but they’ve already hired the big agency in your local metro area to do it.

How do your break through all this?

In the end, there are still web development shops that start up and eventually make it to the big time. If everything I’m saying is true then how do you explain these companies? Well, of course there are never any absolutes in life and many of these companies are simply outliers who were in the right place at the right time and knew the right people.

If you’re still going to pursue this line of work, I have a few words of advice. These are things that if I could travel back in time, I would visit my younger self to tell myself these things.

  • You need to hustle. The grunt work is 90% of what separates successes from failures. The late nights writing ad copy, researching your local market, networking, and collecting leads. All that hard and boring stuff is where your bread and butter will come from.
  • Be honest. You need to be honest with yourself as well as your clients. There are no shortage of shady web development firms out there who undercut the competitions in an effort to gain marketshare. In the process those guys lower the standard of living for all of us. Don’t be that guy. Never ever charge less than $1,000 unless you really are and intend to stay an amateur (which is fine if that’s what you want). Be honest with your clients as well. Don’t sell them the top spot on Google when you know that SEO is mostly snake oil and guesses.
  • Specialize. One of the mistakes I made when first starting out was that I offered services that were far too broad. I didn’t set any limits or constraints. That made it really hard to market my business and differentiate myself from the millions of other jokers who offered “website design, development, and marketing services” at a cheap affordable price. What does that even mean? These days I still offer those services but I’m more specific about what I’m actually doing.
  • Iterate. I used to throw things away and start over whenever I realized there was a problem. I had this idea that everything needed to be good from the start. I was wrong. There is such a thing as iterating on something. You can have the beginnings of a good idea and polish it up with subsequent iterations. Throwing something out because it isn’t perfect is a waste of your time.
  • Network. Meeting new people and mingling is the second most important thing I did when I ran Clever Web Design. The mistake I often made during my networking was to expect everyone I met to become a client. This just won’t happen but if you’re disappointed by this then you’re missing the forest for the trees. You don’t network so you can sell yourself to someone. You do it so that you can learn from others, get referrals, and help someone else. Networking is all about giving and taking. The more you give the more you’ll get back. I made the mistake of always looking for what I could get rather than trying to figure out what it is I could give.

There’s so much more that I learned but those are the points that stick out. I really don’t recommend going into business as a freelance web developer anymore. That market just isn’t there the way it used to be. Product companies are the way to go. That said, there will always be a few people who succeed. I hope that’s you but the realist in all of us should be warning us not to hold our breath.

Business, Web design, Web development

« A better way to display the current year in your copyright notice Grunt task to guard against deploying the wrong branch »