On shaping my career in test automation

No in-depth technical post from me this week, but rather something that has been on my mind for a while. It’s still very much test automation-related, though.

I’ve been in the testing and test automation field for the last ten years now, and with the exception of a couple of smaller side projects, most of that time has been spent doing work that is billed by the hour. The first eight years I’ve done this while serving an employer, the last year and a half as a freelancer. However, I’m not too sure that I want to keep doing hourly billed work for the rest of my active career, and possibly not even for another five years or so. Instead, I’d like to transition to a professional career that is built on doing short and longer term projects that are compensated based on the value that I provide, not on the amount of hours I put in.

The future of my career?

Image courtesy of RMukeshGupta.com

But why?
The desire to make this transition is fueled by a multitude of reasons:

  • I want to be able to schedule my own time, rather than being tied to my clients’ office hours. Not everybody works most effectively exactly between nine and five on weekdays, so why stick to that schedule when your output can be much higher if you’re able to set your own hours?
  • The ability to work on multiple projects in parallel. Working on a presentation for client B or a personal blog post while being in the office of client A can be much frowned upon, even if you’re still meeting or exceeding client A’s expectations. And to some extent, client A is right to expect you to work on their projects while you’re in their office, consuming their coffee.
  • Not being tied to a specific client location. Even though remote working facilities are abundant, especially when you’re part of a scrum team, you’re expected to be in the office during at least the major part of working hours. However, I have two young boys, and I would like to be there for them and pick them up from the daycare every now and then. Also, I like going for a run during the daytime. This is pretty hard to do while being forced to be in an office for the better part of the working day. And I’m not even talking about the commute to get there..

Benefits for clients
As I’m seeing it, moving away from the ‘billing by the hour’ model is beneficial for clients as well as for consultants:

  • Fixed price, fixed result. The client knows beforehand what will be delivered and what the costs will be.
  • Higher consultant motivation. When a consultant is paid for the result delivered rather than for the time spent working (or ‘working’) towards that result, a client is bound to get a consultant that is truly motivated to get to the agreed result as soon as possible, since that will yield the highest effective hourly rate for the consultant.

Some drawbacks of project-based billing
Of course, billing based on result rather than time spent on a client location isn’t perfect, otherwise wouldn’t everyone be doing it already?

  • There’s no direct presence on client location if the consultant is working remotely. While a lot of good things can come from the freedom to work whenever and wherever you want, working on site has its benefits as well. For example, it’s easier to pop round a coworker to ask a question or have a look at what he or she is doing. And don’t forget office cake!
  • Hourly billing gives consultants a steady stream of income. When you’re paid by the project, rather than by the hour, it can be hard to obtain a steady stream of income due to the ‘feast or famine’ nature of project-based work. Sometimes you’ll be fully booked, to the point of having to turn down clients, while at other times work might be stretched thin or non-existent. Saving up for these times takes discipline!

Is the test automation field suited for this type of work?
That’s the million dollar question right there, and the reason for me writing this blog post. I’ve been spending a lot of time lately wondering whether the test automation field is suited to project-based work. In my experience, a lot of clients wanting to take their test automation to the next level (which is the value proposition I use to advertise my services) just want someone working on site. I don’t know whether this is because they don’t trust consultants in general to deliver without some sort of supervision or because the work that needs to be done requires this physical presence..

Having said that, I can easily think of a list of test automation-related activities that can (and one that I think can’t) be formed into project-based work:

Types of test automation consulting / work that I think can be done on a per-project basis:

  • Developing and delivering workshops and courses on test automation-related topics
  • Doing paid public speaking (this might be hard to achieve though, unless you’re a well-established name in the field)
  • Doing fixed price test automation development or support, for instance based on a monthly retainer. It is very important to define the project boundaries though, or you might end up doing a lot of work for relatively little pay
  • Provide a subscription-based test automation service. This is an idea that is potentially very interesting, although I don’t have any concrete ideas for such a service as of yet.
  • Performing quick scans, proof of concepts, doing test tool selection, etc. In other words, doing projects with a fixed beginning and end that usually require a couple of days of work (with a maximum of a week or two).

Types of test automation consulting / work that are far less suitable to be done on a per-project basis:

  • Being ‘the test automation guy’ in an Agile team or project. The very nature of Agile projects requires frequent meetings, the ability to discuss matters quick and often and sharing tasks required to finish a sprint or story. While this can be done remotely in theory (although I believe it’s next to impossible in practice), it’s hard to define the scope and duration of the work required and therefore it’s probably not a good fit for project-based billing.

Your experiences
I’m pretty sure I want to move towards a career where I do project-based, time and location independent work within the test automation field. Do you think such a career can be created? Are you living this dream of mine already? Please share your story, either as a comment on this post or (if you don’t want it to be read by the rest of the world) via email at bas@ontestautomation.com. I’m pretty sure I’m not the only test automation consultant aspiring a truly independent lifestyle..

Oh, and I am already familiar with the Freelance Transformation Podcast (which is an excellent resource, by the way!) and books by the likes of Cal Newport and Chris Guillebeau. Check them out if you haven’t already! I am looking for stories, suggestions and examples that are specific to the test automation field, though.

I’m looking to create a follow-up to this post in a year or so, hopefully filled to the brim with success stories!