How I Found My Niche
On running your own business, an interesting piece of advice that I read was to market to a niche audience. Considering myself a jack of all trades, I decided to ignore that advice.
In the beginning
When I first went freelance, I tried to market myself as a man of many talents. "Everything you need in one package," as the tagline on my site said. I've developed projects in a bunch of server-side languages like ColdFusion, Java, and .NET; and can get around in Photoshop, Illustrator, and Fireworks. Naturally, I'm stronger at some things and weaker at others. My ability to pick things up quickly and research solutions has been quite effective at keeping me in the game.
I always had a tough time settling on one technology. It's the classic "putting your eggs all in one basket" argument. If I invest too heavily in one, ignoring the rest, I could risk obsolescence due to a shifting marketplace.
When it comes to server-side development, each language has a certain style of development. Learning them gives you new perspectives on how to approach existing problems. For example, I never tried OOP in ASP until I learned Java. It's always good to expand your knowledge.
Specializing
For dealing with clients, however, specializing can be very beneficial. With each project, you develop shortcuts and a greater base of code from which to work from. In design, you've got stock photography, fonts, and unchosen designs that you can re-use. You get faster (and if you do it right) more profitable by specializing.
Imagine a path from your house to the park. The first day you follow the path as you know it'll get you there. After time, though, you begin to cut across the grass in some spots, saving yourself a few moments of time. Every now and then, you discover by cutting through the bushes or jumping a fence, you get to the park even faster. Sure, in the beginning you got to where you needed to go but it wasn't very efficient. Efficiency comes from doing the same thing repeatedly.
Being faster, of course, makes you look good to your clients. I haven't met a client who didn't like it when you met deadlines (or better yet, delivered ahead of schedule). Being faster let's you take on more clients (if you wanted). And if you charge based on value, not time, you have the potential to walk away with higher profitability on each project.
You also get known within the industry for your skills, which also offers you the opportunity to charge more for the work you do.
Bringing on help
The need to specialize in my own freelance career became evident when I needed to bring on help. Finding someone with the same varied skill set who didn't charge as much as I did — since, I still need to make a profit — and who wasn't busy became darn near impossible.
To hire someone to do only a small portion of a project meant that I still had all my other projects to work on plus the time to manage the outsourced work. In the end, I wasn't saving any time.
By focusing on just one or two core competencies, I'll be able to have contractors take on a larger percentage of my workload. This allows me to focus on what I need to do and gives me greater potential for growth.
Focus
My site has a small line in the footer that says, "I can do that." Maybe it's time to add to it, "but I won't do that."
Conversation
We're developers. We do the coding. We decided that LAMP (CakePHP & Flash/remoting) would be our domain. This is good. We get to focus on our core competencies and people can get their heads around what it is we do.
When we go out to hire, it allows us to hire....say someone who we can pay less per hour than we're charging the client, because we have tread that path in the portfolio site sector and have a nice custom back-end with API (which we'll be open-sourcing shortly, btw: http://vimag.es - not there yet. ).
So we just have that new employee take those pieces that we've gotten tuned and they throw them together then check with us to make sure it's right.
re tagline: ala meatloaf ?
"I would do aaaanything for work... but I won't do that"
When I started freelancing, I knew I wanted to specialize in Ajax or JavaScript development, but I also had this typical fear of not finding enough work. So at first, I took anything I could find, and after nearly a year, I finally have enough Ajax work coming my way that I can turn down the other jobs (but not all of them - I find a little variety is a very nice thing sometimes).
Good read Jonathan! That's the kind of background I was trying to get out of everyone I met at Southby. My story is quite the opposite. I started out knowing I wanted to do design, but my focus has expanded out rather than narrowing in. I find myself thinking: "Oh, in order to do X, I've got to learn to do Y." ...and if you add that last bit to your footer I'll hear Meatloaf singing in my head every time I visit your site. Please don't do that to me. :)
Oops. Gavin beat me to the Meatloaf line That's what I get for not reading the comments.
Well if you weren't so damn good at what you do, then you wouldn't be so busy :)
@Gavin/Jason: my choice of words were indeed inspired by the one and only Meatloaf. :)
@Nate K: you're too kind!
Interesting read. I am purely a front-end designer/coder but sometimes I wish I knew more backend programming so that I didn't have to outsource as much work.
I never really focused on learning much about it because I started off as purely a designer/illustrator.
Now that my job offers to pay for me to take any class I'd like I may try to dip my feet into some backend programming. I hear AJAX is the way to go. But I also hear PHP is easier to learn. Pfft, what do I know? : )
ps- I love your blog. It's on my top 5 web development rss feeds. I recommend it to my friends all the time.
I really like this commenting feature and I also like your article. Thanks for taking time to compile these thoughts
Snook, my story sounds almost exactly the same as yours. I wonder if you could comment more on finding help (perhaps the topic of another post)? I really need help but have the same concerns you did.
"Every now and then, you discover by cutting through the bushes or jumping a fence, you get to the park even faster."
...and eventually you start building gates in the fences and relocating bushes to make life easier and more pleasant. Because as fun as jumping fences and dodging bushes is in the beginning, it gets annoying really fast.
Jonathan you are truly a super hero among most of developers. You are doing a nice job in this field, and that is why i check your website sometimes to catch up with new things. ( and also to get some ideas for my new works! )
Focus! People much more intelligent than I have said that to me all my life. It is only recently that I have decided how profound that really is.
I agree with you. Focusing on core competencies allows you to get economies of scale and to systemetize thus allowing you to employ the lowest skilled workers necessary (which is the advice of Michael Gerber in "The E-myth Revisited" too)!
Thanks for this article, Jonathan. I've been thinking about going freelance, and I think of myself as "one-stop shopping" for web stuff -- but I know I'm a much stronger programmer than I am designer. And I know prefer open-source technologies to proprietary ones. Maybe I do need to stick with my core competencies... thanks for giving me more to think about!
Hi Jonathan,
This stuff is really useful. I was wondering whether i am doing the right thing, but now I know I am doing the right thing. Jonathan, u r a cool guy.