The Trials and Tribulations of a Freelancer

Posted by Ryan Wachtl on 8 February 2012

Guest blogger Ryan Wachtl is an independant US-based web developer and runs the SilverStripe user group in Madison. Prior to this, Ryan wrote about SilverStripe PayPal Mini Cart Integration.

I recently celebrated my fifth year of freelancing as a web professional. This had me thinking about how I’ve grown over the years, both personally and professionally, and I’ve learned that, as a freelancer, the lines often blur between the two. Many of you may also freelance, either full-time, part-time, or on the side. You may have left a corporate or agency job in pursuit of greater control and more freedom, or maybe you’ve never freelanced, or like me, maybe you’ve always freelanced. Regardless of your current situation I hope you’ll find something useful to take away from this as I share my experience with you. At the end of this post I offer up my advice to any struggling freelancers out there.

First I should clarify what I mean by I’ve always freelanced. This has been the case ever since I found myself, somewhat unexpectedly, working in the web industry back in 2007. I had worked for a hand full of employers prior to that, but they were in unrelated areas like retail, horticulture, and even in a lab. Before I fell in love with web technologies I was studying to be a scientist, specifically in the field of plant biology. I still try to stay current in the field, and I did ultimately graduate with degrees in biology and human biology, but about a year prior I took on my first web project, one that would set me on a new path. My friends had just started a bicycle company and were in need of a web presence. I had hacked together a site or two before this in 2000/2001 (before web standards had become wide spread), but I was turned off by all the inline font tags, table-based layouts, lack of good CSS support in browsers, and the horrible abuse of JavaScript. My friend's new company website was my first paid web gig and the one that ignited a new passion inside me.

Shortly after my first paid project I left my part-time job and set out to self teach myself as much as I could about HTML and CSS over the next three months. I spent the following year taking on a few more projects, adding Javascript and PHP to my tool belt, all while finishing up my last year of college and a rather large undergrad research project. In the summer of 2008 I graduated and was sent into the world to fend for myself. Rather than continue onto graduate school or take an entry level job in biology, I set out to pursue a full-time career as a freelancer. Little did I know that I was in for some challenges.

In the beginning

Things did not come easy at first. During my first couple years I struggled with time management, work/life balance, and had my share of failed projects and client relationships. I found myself so obsessed with productivity that I was actually spending more time trying out various management tools than I was doing actual client work. I wasn’t entirely confident with my skill level so I would price out projects based on a low hourly rate and then quote a flat rate for the project. This put me in a position of working long hours for little pay and in the end I found I was not getting a great deal of satisfaction from my work. Accepting calls from clients at all hours of the day and stringing out the length of projects to offer a false sense of job security had me questioning whether or not this freelancing thing was really for me. My health started to decline due to all the stress (I had no health insurance at the time), I started to feel isolated, and I had nothing to show for it. I knew that if I was going to survive as a freelancer, I needed to figure out how turn things around.

Discovering my worth

The first step I had to take was to figure out what my time was worth, this included being realistic about how many billable hours I could actually fit into a day. I found out that freelancing is about more than just producing designs or writing code, I needed to handle accounting, marketing, and other business related housekeeping tasks, not to mention the daily emails that come in after you’ve worked with dozens of clients over the years. To get at my current hourly rate I worked backwards, first setting a revenue goal for the year and breaking that down into the number of days I wanted to work and the percentage of time I could invoice. About 60% of my work day is billable now, if you’re doing better than this congratulations you’re ahead of the curve. Getting my rates and time management sorted is something that just took time, I needed the experience to be able to estimate project scope and time more accurately, and gain the confidence to ask for what I was worth in return for my services. I’ve been able to double my revenue over the last two years and while I’m still not getting rich, everyday I feel like I’m moving more and more in the right direction. When it comes to matters of time and money I think Alan Weiss put it best in Million Dollar Consulting:

“Wealth is not money, but discretionary time. You need to make the money necessary to have maximum discretion as to how you spend your time”

Finding my niche

The second step that really turned things around for me was finding my niche. I had been building websites on SilverStripe from the beginning (after a long search for a quality CMS), but I didn’t actively seek out SilverStripe related work and thus found my time spent working with other platforms like WordPress, Magento, and Drupal, at the request of clients. At the onset of 2011 I decided to focus solely on providing front-end and back-end development for SilverStripe projects. Shortly after, I organized a local SilverStripe user group and started to seek out agencies that were using SilverStripe who needed help with overflow. I still work with a few of my own clients, but making the switch to working on portions of a project, as opposed to managing an entire project, has cut down on a lot of my non-billable administrative work and allows me to focus on producing quality design and code. I now have nice working relationships with a handful of agencies across the United States and I get to pair my skills up with other great designers, developers, and strategists.

The three constraints

And finally, the other major step I took, or more so the final hurdle I overcame, was to improve my project management skills. Once I realized how the three constraints in project management (scope, time and cost) impacted the ultimate success of my projects, I was able to gain control of my schedule and prevent projects from going horribly awry due to scope creep, unrealistic deadlines, and other conflicts that can arise within the three constraints. Early on I had a few projects that either failed to come to completion or failed to perform post production because I tried to fulfill a clients wish list of features with whatever budget they had. I am now wiser, and instead of focusing solely on features, I start all new projects with a list of goals (both user and business goals) and figure out how best to accomplish those goals within a given budget, or in some cases, what budget I feel is required to make it a successful project. I’ve been able to steer clear of problem projects when I see that a given budget does not match up with the expected results. For me, a successful project is more than just shipping a product and getting paid for my work. I need to see that the small businesses, agencies, and non-profits that I work with are getting value from my work and in turn are achieving their goals. Forming quality long-term business relationships and seeing other businesses grow as a result of my work is how I found job satisfaction.


I’ve come a long way, but I’ve still room to learn and grow. I have yet to put together a decent portfolio and should stop making excuses about doing so. I can be kind of hard on myself and keep thinking; my next projects will be so much better and they will be worthy of show. I really just need to start putting myself and my work out there more. While I’m really comfortable on the front-end, I’m still working on becoming a better programmer, like getting more into test-driven development (something SilverStripe is already nicely setup for) and delving further into object-oriented programming with both Javascript and PHP. I would also like to share more. I owe much of my success to all those that I’ve learned from. Far too many to name, but from your personal blogs, to stack overflow contributors, and to all of you in the SilverStripe community, I sincerely thank you. I need to return some of that, I need to take a little extra time to write about the solutions to the problems I come across.

Lessons Learned 

My advice to struggling freelancers.

  • Raise your rates. You’re likely not charging enough. After I raised my rates I gained more respect from my clients. It also encourages me to work smarter and be held accountable for delivering something that warrants said rates. You may need to juggle several different rates as you ease existing customers into it. Be honest and upfront with them, explain why you made the change and how it servers them better. Look at other trade and professional services in your area (plumbers, electricians, computer repair, etc.), I’ve found it a good gauge for setting hourly rates for a local market.
  • Get out and socialize. Let’s face it, freelancing can get lonely. Get out to conferences, they can seem a little cost prohibitive at times but the connections you make there are more than worth it. Join groups, present at them, or form your own if there are none. I’ve found that one of the best ways to learn new skills is to try teaching them to someone else. You’ll quickly discover your core competencies, and see where you may need improvement. Also check your area for co-working spaces.
  • Specialize, but not too much. I’ve found success in directing my efforts towards all things SilverStripe, but I also maintain a generic skill set. If you find yourself deep into one particular framework or project, don’t lose sight of the underlying technologies used in the project. For example, I work with jQuery a lot, but spend time now and then making sure I understand the abstraction and write vanilla Javascript. That is, decouple your proficiencies from the context of your tools and you’ll have a lot more job security and flexibilty.
  • Build long-term relationships. Take care of your clients and they will take care of you. As a freelancer I’ve found that the majority of my work comes through direct referrals. I don’t believe in bad clients, but I do believe in bad designers and developers. Most client relation problems are the result of poor communication. It’s your job to educate the client and clearly set expectations. But yes, sometimes it just doesn’t work out, learn from your mistakes and move on.

Well, that’s my story (in short). Are you a freelancer? What has your experience been like? Leave a comment below or hit me up on Twitter. If you find yourself struggling like I was, get in touch and maybe I can offer some more advice. Despite it’s hostile nature, freelancing can be a very rewarding experience.

Post your comment

Note: Comments are moderated and won't show until they are approved


  • @Charity Kountz thank you for the kind words! You've touched on a topic that I see come up a lot, and happen to have some strong opinions about. That topic being the role of a consultant. I feel that as a consultant, it _is_ our job to educate, and we need to embrace that, but a client must also be receptive to it. The most common situation I see,that leads to a mismatch of these conditions is when a client is just looking for an extra pair of hands, and not our expertise. In that case, you will run into walls trying to get what you're worth and input and/or collaboration on the clients end will be anemic, at best. However, clients are not to blame for the situation. There are plenty of freelancers out there who are happy to be brought on as extra hands and will work for lower rates, but as a professional it is our job to both screen and educate our clients.

    One of the easiest ways to pre-screen potential clients is to write about your thoughts, process, and case studies on your own website. In the end this should save you from the boilerplate value talks you are forced into with every new client. Instead, clients will be able to pre-screen themselves by learning about what expertise you bring to the table and decide if they find value in that.

    Also, make sure to differentiate yourself from others. We each have a unique history of experience, education, and goals. Setting yourself apart from the competition will limit clients evaluating you on price alone, as it be comes clearer that only you can offer what you do.

    And finally, be careful not to dilute your services too much. Specializing in too many services leads to a specialization in nothing. Pick a couple of the core services that you both excel at and have proven to bring in the rates you want. Market yourself as a professional in that field, get comfortable turning down opportunities that don't feel right, and you should see that your business (and hopefully personal life) gets a lot easier to manage.

    Just a few of my thoughts, but I hope it provides a little more insight.

    Posted by Ryan Wachtl, 2 years ago @ryanwachtl

  • Ryan - great post. I hadn't realized the time management aspect and realize now why I'm suffering from burnout after five years - because I'm trying to do 40 hours worth of work every week and in order to do that I need to work about 80 hours a week. Talk about obvious! Geez!

    I actually was working on writing something similar but trying to find a positive way to express it and thought I'd do some research on what others are saying which is how I found your article.

    For the last two months I've been trying two things - 1) using online marketplaces to find and retain new projects and 2) Develop a range of products that offer solutions to common problems my ideal clients face which I can assist with. All while trying to maintain my sanity, be there for my family and continue moving my writing career forward.

    I've been a freelancer since 2007 - first with financial services, then with virtual assisting and have since moved into Marketing Consulting and publishing. While I love Marketing, there seems to be a rising demand for my writing and content services yet at the same time, an abysmal lack of understanding and value from clients and prospects regarding services. Do you ever feel like the education curve is simply too much to overcome? I find myself lately getting tired of educating different clients about the same topics. After five years, I'm not quite sure how to get around that frustration.

    Posted by Charity Kountz, 2 years ago @charitykountz

  • Great article.
    My experience was very similar. After studying painting and sculpting I some how ended up pursuing web development. The first few years I think I worked out I was getting below minimum wage by NZ standards. Mainly because I was trying to fulfil the clients every desire.
    Still it was a good experience which I'm giving up and now seeking a permanent role in an agency.

    My only tip would be put your portfolio together, that goes for anyone. It's incredibly useful to have a body of work together to direct people. Even if you're not completely satisfied with your work on the project. There is something in having a body of work to show, which seems to put a new found respect in clients. Even if you're wonderful at verbally communicating your work experience, when people see the collection they tend to have a little more faith and appreciation for your opinion and suggestions. Well thats what I've found.

    Posted by Alexis, 3 years ago @alexishhope

  • Very well put, Ryan. You've really nailed some good points. I am solely a freelancer, as well, and am having a very good month when I can bill for 60% of my time. I find it's often less than that...maybe hovering around 50%. Since leaving my corporate job 5 years ago, my greatest challenges are getting out and socializing with other developers, and really taking the time with each project to deconstruct the tools I'm using into their basic formats. Thanks for writing such a thoughtful and comprehensive article!

    Posted by Rebecca Connors, 3 years ago @beccablumm

  • Great post Ryan, I work as a freelancer and web consultant here in New Zealand. I think all the concepts you bring up are equally valid wherever you are located... the people side of freelancing is equally if not more important that writing the code and taking the time to really get to know your clients business is well worth the effort. As far as rates go, good to see you are working through the calculation and thinking a bit about the accounting involved... after all... freelancers are in business.
    Bang on with the project management tip :)

    Posted by Cam Findlay, 3 years ago @cameronfindlay

RSS feed for comments on this page | RSS feed for all comments

Want to know more about the company that brought you SilverStripe? Then check out

Comments on this website? Please give feedback.