In August of 2007, I quit my job as a product manager at CNET Networks and started freelancing full-time. I do mostly web development and social media consulting, and I’m really enjoying it. I thought I’d share a few of the lessons that I’ve learned along the way.
1. Working at home sucks
Maybe it would work if I was always working at home by myself, had a separate room that was just for work, and had everything setup just so. Maybe. But I find that being at home has too many distractions, from TV, to my wife, to our new puppies. I get 2x – 4x as much done at my office as I do at home. What that means in practical terms is that paying a few hundred bucks a month for a small office or co-working space is well worth the price. Even a coffee shop is usually an improvement for me over being at home.
2. Working from anywhere you want rocks
On the other hand, having the freedom to work from home, or a coffee shop, or the beach on a tropical island, is one of the best things about working for yourself, especially in the line of work that I do. My wife and I have travelled a lot over the last year, something we never could have done if we were holding down jobs.
3. Everything takes longer than expected
From finding new clients to signing contracts to finishing projects to getting paid, everything seems to take longer than you expect. I guess this is because I’m an optimist by nature, but it’s something I’ve definitely had to adjust to. My advice: make sure you always have a decent reserve of time, money, and goodwill. You’ll probably need them.
4. Process is important
I guess this isn’t limited to freelancers, but I’ve just realized how important it is. When you do development work, you find yourself doing the same types of things over and over. I find it hard to force myself to take longer the first or second or third time around to setup shortcuts and process enhancements that will enable me to do it faster in the future, but it’s definitely worth it. If you find yourself cutting and pasting the same piece of code, then making a bunch of adjustments to change minor details, consider making it a class or a library that’s more flexible. Organize, optimize, and review your processes regularly. It takes more time now, but it saves a lot of time in the long run.
5. Small gigs > large gigs
All else being equal, smaller jobs are far better than large ones, in my opinion. It’s the same reason that small entrepreneurial projects are better than large ones: they tend to get finished on time and under budget much more often. Large projects have more room for error, ambiguity, scope creep, and miscommunication. Additionally, I find that I get fatigued when working on projects that stretch on for weeks or months. It becomes more of a struggle to get excited about working on the same thing yet again, whereas for a small project, you can maintain your interest and excitement through most or all of the project. The best project is one that you can knock out in a day or two.
I’d say that the one thing I have learned is that if you’re doing a large project, break it into phases and try to think of them as discrete mini-projects in themselves. But small projects are still better.
6. This is a stepping stone for me
I never intended to stick with contract work long-term, and the last year has just reinforced that in my mind. The hard part about freelance work for me, a born entrepreneur, is that it vacillates between two extremes: either I’m working on projects that I’m not particularly passionate about or interested in, usually because they’re not going to go anywhere and I know it (and I tell the client), or I’m working on really interesting projects that I know in my heart will succeed or continue to be a success. That sounds awesome, I know, and I’m fortunate to work on more projects like that than those in the first category, but the problem I have is that I’m helping another entrepreneur achieve his or her dream, rather than achieving my own. I love helping people, and I especially love helping people accomplish their goals and dreams, but I hate the feeling of being a hired hand when I should be whipping up my own success. Does that make sense?
As a result, I’ve started aggressively pursuing more entrepreneurial projects of my own, some of which you’ll be hearing about in the coming days and weeks. I’m enjoying freelance work and I’m very grateful to all my clients for the opportunity to work with them, but I’ll be really glad to eventually be done with freelance work. It’s just not as free as I’d like 🙂
If you’re a freelancer, let me know how this lines up with your experiences. I would love to hear from anyone considering making the plunge who has questions or comments.