This has been an amazing year for me. A year ago I was barely breaking even and struggling to pay the bills as a web developer. This year I’ve seen my income grow four-fold, have met many amazing new people, and built myself a sustainable business. Here’s specifically what I did to help grow in 2012, and how I plan to continue building on these ideas in 2013.
I Put Myself Out There
This year I made a firm commitment to put myself out there – presenting, writing more, and networking more than I ever have. In February, I volunteered to give a presentation on Custom Post Types at the Stamford WordPress Meetup Group. At the time I knew relatively little about custom post types, but I spent weeks researching, writing code, outlining my presentation, and rehearsing it in my living room. Shortly after giving the presentation, I was contacted by Jennifer Carello of TechCare LLC, asking if I’d be interested in helping her build her WordPress business. I was offered the opportunity to present again at the Hudson Valley WordPress Meetup group, and by doing so met Alex Miranda, Gina Nieves, and Laura Hartwig of MarkNet Group. We’ve since collaborated on several projects.
I volunteered again to present on WordPress site security after my website got hacked in mid-March. Again I spent weeks researching and outlining a presentation. On the day of the presentation, D.K. Smith showed up – the founder of WPSecurity.com. I knew I better give an accurate presentation or I’d look like a real idiot. Fortunately it went off without a hitch, and it was a real pleasure to have D.K. concur with much of what I presented, adding additional information from his years of experience in the WordPress security field.
As I got more comfortable presenting, I started speaking more frequently – presenting at the New Haven WordPress Meetup Group on creating an e-commerce site using WooCommerce, at Hudson Valley WordPress Meetup Group on Intro to WordPress Development, then at the Westchester County WordPress Meetup Group on WordPress Development. As a direct result of these presentations, I’m routinely contacted for help with development on projects. In June, I started working on-site several days per week at Kim Ronemus Design in Westport, CT. I met Kim through Mark Hannon, who met me at the Stamford WordPress Meetup Group.
I also stepped up my efforts writing quality content on the topics I was most interested in and knew the most about. Instead of frequently putting out short, mediocre posts, I started spending a month at a time putting out real quality content. On September 10, I published my post “Search Engine Optimization Resource Guide”, a culmination of months of research. I posted the article to Reddit.com, made it to the /r/web_design frontpage, and saw traffic to my website spike to 2000 hits that day. I got calls from several people around the country looking for help with their SEO needs. Other posts I published on Intro to WordPress Development and Creating an E-Commerce Site Using WooCommerce led to a significant, sustained increase in traffic. Traffic to my site went from averaging ~10 hits per day to now consistently ~50-60 hits per day.
I Built A Network
I Found My Niche and Optimized My Site Around It
I re-built my website 5 times between 2011 – 2012. I kept finding sites that looked better than mine and I wanted to best present my information. Working in web development, my website is typically the first impression people get of me. I wanted it to look nice, allowing me to showcase some recent projects and write more. I took Brian Casel’s advice and just settled on a nice theme (instead of spending weeks trying to build my own), customized it a bit, then filled it with content – recent work, testimonials, etc. Equally important, I followed Alex Miranda’s advice on search engine optimization, and optimized my site around what I specialize in – WordPress development. I now get 2-3 ‘walk-in’ leads per week on projects, people who find me through organic search. It has been one of the most effective forms of marketing I’ve ever done.
I Stopped Trying to Do Things I Wasn’t Great At
I stopped trying to do design work and stopped trying to manage content for clients. I suck at design. If I had it my way, all sites would be black and white with 12 pt Times New Roman font. But I didn’t realize how much time I was wasting trying to design until I stopped doing it. I found a couple solid graphic designers in my area and subcontract out all design work to them. This allows me to focus more on what I’m best at – development. Likewise, I stopped trying to write for clients. I did this for a short time during my big SEO kick – helping clients publish blog posts and manage content on their sites. It was becoming a huge time vacuum and I wasn’t great at it. It was frustrating for everyone involved. I found a couple reliable writers in my area and started sending work to them. What I found also by doing this is that these writers and graphic designers also started sending me more work – they would have people looking to build a website so they’d hire me to do the development.
I Studied, And Prioritized My Studying.
I dedicated time (read: started getting up at 5am every day of the week) to doing tutorials through Nettuts, WP Tuts, and Pippins Plugins, which have been amazing resources for seeing real-world applications of programming. I try to do one WPTuts and Pippins Plugin tutorial per week. Right now I’m working through Custom Database Tables by Stephen Harris…a really great way to apply the fundamentals of PHP/mySQL to WordPress. I also bought and read the following books:
- Professional WordPress Plugin Development
- Introducing HTML5
- Smashing WordPress: Beyond the Blog
- PHP: Object Oriented Solutions
- PHP Objects, Patterns, Practice
- JQuery Cookbook
- JQuery: Novice to Ninja
- Professional WordPress
- WordPress Bible
- WordPress Plugin Development Cookbook
- WordPress 3 Cookbook
As I went to more and more Meetup groups, I also got really interested in topics like Node.js, MongoDB, and CodeIgniter. I started doing some tutorials on these topics, then asked myself what the hell I was doing. Were these topics interesting? Absolutely. But they weren’t going to be directly contributing to the mastery of my niche (WordPress development) as much as WordPress tutorials, so I kept the WordPress tutorials as my highest priority. Sometimes it can be distracting and overwhelming with the amount of information out there — so many ways to build the exact same web application. I found it helpful to frequently ask myself not so much what I was studying, but why I was studying it. With an increasingly limited amount of study time each week, I need to make sure I’m getting the most bang for my buck.
I Made Myself Available as Much as Possible
It can be a dangerous precedent to set with some clients, but I try to be available 7 days per week, including early mornings and nights. I will always get back to you within 1 day, no exceptions so far. By making myself available, I don’t miss opportunities. A couple weeks ago I got a call at 8am on a Saturday morning while I was at the gym. I picked up and told the guy I’d call him back as soon as I got home. “Calling you at this time was actually kind of a test,” he said. Fair enough. Over the next 5 days he paid me a little over $1000 to help finish up a website another developer had walked away from. Most of that time was spent between 5-7am then again at night when I wasn’t working on-site.
I’ve found that clients really appreciate me being willing to bend over backwards for them. There may very well be a point in the future when I scale back my availability, but I really enjoy solving problems and helping people out. It gives me great satisfaction and has allowed me to grow my business steadily.
I Focused on Communicating as Clearly As Possible
This might be one of the most important skills to have as a web developer. There tends to be a pretty big language barrier between web developers and clients. My job, aside from developing, is to clearly communicate with clients what the problems are, how I intend to fix them, exactly what I’m going to do, when I’m going to do it, how much it will cost, how long it will take, etc. Communicating clearly saves everyone time. When appropriate, I share my screen with clients using Join.me to show them how I intend to make the changes – i.e. positioning of elements on a page, color of items, etc.
I also studied several other proposals and contracts from web developers. Brian Casel gave an excellent presentation on Managing A Client Web Design Project from Start to Finish at the Fairfield County Web Design and Development Meetup Group. He generously shared the format of his proposals and contracts which I adopted for future projects. Having a proposal template saves me time not only writing proposals, but also saves time on any misunderstandings once the project is underway – when I expect to be paid, what I will deliver, when I will deliver it, etc.
I Stopped Biting Off More Than I Could Chew
When I was struggling to make ends meet, I tended to dive into any web development opportunity that came my way, thinking I could program my way out of it. I made this mistake twice this year, and both times lost great amounts of sleep over it, agonizing for days over whether I would miss a deadline because I was in over my head try to develop something I didn’t know enough about. I was very fortunate to find outside help to bail me out, but I learned a very important lesson – don’t bite off more than I can chew. I realized there’s no shame in saying “this is beyond my skill level”. In fact, everyone I said that to greatly appreciated it, and some used me for other projects more suitable for my skill set. I also started putting these leads in touch with other people in my network who could better handle the project, then later asked them to show me how they did it, using it as a learning tool.
I Stopped Being Afraid to Reach (A Little)
As I studied more, learned more, and grew more confident in my abilities, I became a little less hesitant to take on bigger projects that I knew would push my skills as a developer. One of the advantages of working on-site at a design agency is having access to senior developer Richard Testani, who has helped me navigate large-scale projects. Ultimately it was a lot of practice and time spent reading and using WordPress that made me fairly confident in most projects that came my way.
I Started Charging More
I raised my hourly rate twice this year, from $50/hr to $60/hr, then from $60/hr to $75/hr. As I grew more confident in my work and learned what other people are charging for the same service, I realized I was worth it. I also took a colleague’s advice and started pricing out larger projects with a fixed rate not necessarily tied to a number of hours. I realized that as I got better at what I do, I can complete projects more quickly, and if I charge these on an hourly basis I’ll be making less money. So while a standard site might have taken me 30 hours in 2011, I can bang it out now in about 20 hours. Regardless, the fixed price stays the same.
I Practiced Saying No
As more leads started coming my way, I streamlined my process for qualifying prospects (another great portion of Brian Casel’s presentation). After a few bad experiences in 2011, I became a little more aware of some common red flags and learned to say no to these clients. They generally will require so much time and energy that you don’t have anything left to deal with your other clients – keeping you on the phone for hours, changing their minds frequently, and never being satisfied with anything you produce. Here are a few examples:
- I got a call around 6pm on a Friday evening from a web developer in Oregon who had a client in Connecticut she didn’t have time to deal with anymore. She found me online and wanted to put the client in touch with me. I said sure – feel free to send my contact info along and she can call me tomorrow afternoon. 7pm that night I got a call from the client, who I politely asked to call me back the next day (Saturday) and I could evaluate her project. The next day, I called her at 1pm and we walked through her project for 1.5 hours. I told her I would get back to her early the next week after carefully reviewing her needs. The next morning (Sunday), I had two missed calls from her by 9:30am. In speaking with her, it became apparent that she would require an enormous time commitment, and simply wasn’t worth what she was willing to pay. I gave her the names of a couple other web developers and wished her well.
- Another client had paid me a 50% deposit but we couldn’t get past the design phase. I spent several hours each week meeting with her and a designer before I finally refunded her and wished her the best. This was before I had put a stipulation of 2 rounds of design revisions in my proposal and contract.
- Another web developer tried to pull me into projects that were just too time-consuming to take on and too difficult to evaluate. Both of them were projects where I would need to go in and ‘fix’ something. Because I couldn’t guarantee that I could fix it, and had no idea how long it would take if I did fix it, I said no.
- A restaurant proprietor tried to lowball my price quote, offered cash in exchange for a reduced price, and promised that it would lead to more business down the road. Again, I realized that the entire project would have required so much time that I couldn’t possibly justify it.
I’m interested to hear how everyone made it through 2012 and what experiences you had business-wise. Feel free to drop me a line or comment on this post. Share it if you’ve learned something.