Many years ago the Director of Development, a fellow somewhat older and much wiser than most of the full-time employees at our mass-market commercial software company, invited me into his office. “I’m going to leave this job for one that’s a better fit for me,” he said. “But I’ve enjoyed working with you, and I want to give you some advice. In this business – any business – there’s one thing that you really need from a boss, and that’s sponsorship. You need someone in the organization that can mentor your career goals and believes that you are a good fit for promotion. It helps if that someone is your boss with a direct line to the CEO. At some point in your career you may take the plunge to go on your own as I did when my sponsor decided to leave the company.”

Because of his advice I found a sponsor within my company who was a Vice President. Later, when my sponsor left the company, I decided to go independent and I’ve been modestly successful and, more importantly, happy ever since. The skills and relationships that I had established at the company contributed to early success and entrepreneurial survival. Initially, I did some contract work for the sponsor that had left to work for a new company. Success also came because I worked hard on building a portfolio and profile.

You too can have the career you want by establishing your reputation systematically:

  • Build your qualifications by building your knowledge and skills through study and practice
  • Create a portfolio of work that you can show to hiring managers
  • Build a network of connections and sponsorship As you’ll see, each of these ideas is entangled with the others.

Build Your Knowledge Build knowledge relentlessly. Read critically all you can about testing. Compare and apply what you read to the testing you conduct. Take a skeptical view of any advice that isn’t adaptable or sensitive to context. Read outside the craft too. There are great testing lessons in economics, anthropology, medicine, history, philosophy, neuroscience, biology, politics and literature. Systems thinking links these disciplines and helps us to see parallels between them, so study that too.

Want to learn about something specific? Ask someone who is passionately involved with it. Seek people within your network, but extend it too. Most people are delighted to explain what they do for people who express genuine interest. Experts will often surprise and delight you by responding to an offer of coffee or dinner, centered on a chat about their discipline.

If your work obliges you to learn something that you’re not really interested in, try pretending to be interested long enough for an enthusiastic expert to tell you about it. It may become more fascinating and you may receive some helpful knowledge.

Learn to program. Brian Marick’s Everyday Scripting with Ruby is one terrific starting point, giving ideas and exercises relevant to testers. As Marick suggests, automation can be much more than simulating human behavior by pressing more keys faster. Think of automation as any use of tools to support testing – for data generation, parsing and filtering output, automating and checking setup and configuration as well as visualization.

Sharpen your skills by practice. If you’re already in a testing job, your work is obviously a service that you provide for your client and your organization. But it’s also a paid university education, complete with a lab and an extensible research program. It’s also a stage on which you perform for colleagues and senior managers. Take advantage of disposable time—that is, the unsupervised time you can risk on research and experiments—not only to benefit the company, but also to learn for yourself.

Create a Portfolio Most companies don’t like washing their dirty linen in public, and so will be disinclined to allow you to present examples of your work to others, so create your own testing portfolio. Contribute volunteer work to open-source or non-profit projects that do permit disclosure. uTest, a company based in Israel but with a world-wide reach, provides a variety of ways for testers to practice their craft independently and earn money doing it.

Join Weekend Testing, a worldwide movement with chapters in India, Europe, Australia/New Zealand, and the Americas. For an hour, testers gather online to test a web application, open source software, or an online game. In the next hour, they discuss what they’ve learned about the product and about testing itself. At the same time, they build reputation and community. Combine study and practice by taking the Association for Software Testing’s Black Box Software Testing course online. The course is structured to build testing skill on an individual and group level. Facilitated discussions and feedback add to the exercises, providing you with other people’s perspectives and helping you to refine your own. As part of the course exercises, course participants contribute to open source projects. You can refer to that work in your portfolio. The strong focus on group work and discussion helps to build your network.

Building a Network Explore your experience and thinking about testing in a blog, on Twitter, or in community forums, like the Software Testing mailing list on Yahoo groups, the Software Testing Club, Test Republic, or Linked In. People will respond to what you write with offers of advice, feedback, and alternative views. Receive all of these as gifts and as opportunities to continue the conversation. Use these forums to extend your network, and to connect it with other communities.

After you’ve developed a portfolio of writing, take your best work to testing magazines. Editors are typically eager to receive high-quality content. Even so, each magazine is different in its editorial approach; tailor your article and your approach to submitting it. Contact contributors or editors for advice on how to pitch an article. Think of your writing as a product that the editor will test and that you’ll have to fix. Just as an excellent programmer would do, review and polish your work before you submit it. Solicit comments from trusted people in your network. Approach experts to ask for feedback.

Attend meetings of local testing associations. Don’t have one? Start one informally. Many associations got their start with a few people chatting over beer or coffee. Exchange stories, experiences, techniques, and tools. Use your network and social media to publicize meetings or events. Don’t be shy about reminding people to spread the word. There may be good reasons for people to miss a meeting, but “I didn’t know about it” and “I forgot” are two reasons you don’t want to hear after the fact.

Apply to speak at your local testing associations and at conferences farther afield. Organizers and attendees alike love experience reports and practical exercises, so collect stories and testing games. If you’re shy about speaking, you can often attend conferences at a discount – or free – by volunteering as an organizer or track chair.

Looking for work? Tell your network and the rest of the world, as publicly as you can. Take advantage of “the strength of weak ties”. Go a step beyond your regular circle to people that you don’t know quite so well. As you build your reputation, you’ll be impressed at the level of support you receive from your communities and the Twittersphere. Don’t be afraid to ask for that support. Most people are happy to provide help, but it will only happen by accident unless you let them know about what you need. If you’re not looking for work now, you can build your own reputation by linking people with other people that you trust.

Notice that each one of these ideas –building skill, creating a portfolio, and nurturing a network – reinforces the other. Practicing testing gives you something to write about. Applying what you’ve learned and what you’ve written to a conference presentation helps to extend your circle of colleagues. Those colleagues will point you to new areas of interest, in which you can build expertise that you can apply to your testing. Contributing to open source not only benefits the community, but also sharpens your skills, and puts your work in front of a larger audience. Diversifying your profile helps you to find new kinds of work in which you can build your reputation… and the cycles continue.


About the Author

Michael Bolton Michael Bolton is a consulting software tester and testing teacher who helps people to solve testing problems that they didn’t realize they could solve. He has over 25 years of experience around the world, testing, developing, managing, and writing about software. He is the co-author (with James Bach) of Rapid Software Testing, a course that presents a methodology and mindset for testing software expertly in uncertain conditions and under extreme time pressure.

For the last 15 years he has led DevelopSense, a Toronto-based consultancy. Prior to that, he was with Quarterdeck Corporation for eight years, during which he managed the company’s flagship products and directed project and testing teams both in-house and around the world.

Contact Michael at michael@developsense.com, on Twitter @michaelbolton, or through his Web site, www.DevelopSense.com.