Fun, excitement, a tester craves not these things....(Originally published Feb 3rd, 2016)
You have a master and they know that framework, the code, the very moment it will break. They read the error reports like a mystic and are able to fix them with lighting speed. You become enamored with this and write your first automation test. It's powerful, it predicts the future, it gives you an early warning system that something in your universe is about to change. You have more power over your testing environment and more feedback than you had previously. You can now test with abandon. Regression testing becomes a thing you barely trifle with. Defects are weak and meaningless to your overall sense of the universe. You feel yourself fill with knowledge and how to use it. Developers are swayed by your though-provoking suggestions. The old master leaves for another position seeing that you are ready to now be the master of your domain. You start training the next apprentice from the pool of test-jedi. The circle is now complete. Or is it?
Maybe when you started testing, it wasn't this information filled universe where the light side was encouraged. Maybe you were just given test cases with little explanation. You were told to look for defects and write reports because that's what your contract calls for. When a developer tells you they fixed a bug you found in the next patch, you exclaim that it's no good to you dead. You needed that bounty for your metrics report. You return to your mission, testing for other things to report. You contract out your skills to the highest bidder. You have your own opinion, but the sith lord in charge of the place barely acknowledges it. You follow orders though you do have resources and obligations of your own. Contract testing can be exciting at times, but it's more or less work you get paid for. Often, jedi-testers consider you and where you hang out a hive of scum and villainy. But that's not true. You're trying to make a living just like everyone else. Bounty hunting was never your original plan, but it's worked out so far.
Or did you reject the hokey religion for a good blaster at your side?
You sympathize with the tester plight and even take on the role for a time, but all the while you are learning the code base, figuring out how the database works, writing little hacks for yourself so you can set up your data faster, respond quicker, and develop habits that might some day get you out of this testing environment and into the real action, though what that is you can't quite say. You smuggle short bursts of code into master, sometimes with the help of another developer, sometimes not. You apply your skills, get your credits and move onto the next job. You easily deal with bounty hunters, testers, automation-sith, other developers and data miners, with a certain amount of swagger all while making plans for your big score. You're going to write a program that will change everything for you. Someday. But for now, you work with everyone, picking up jobs and stories alike. Retelling your favorite ones to folks who ask. Your reputation proceeds you for good or bad reasons.
Then your luck changes and this royal-person shows up.
Whether you consider yourself a prince or a princess, you have the power to influence everybody. You are a political dynamo. You have some testing under your belt and you might even know a little code and have written some, either for automation or for an actual program. You have all this knowledge of the real word, how things work, and who else has influence. You help with shepherding in a new version or a new vision of the software around you. Your ideals are lofty, and your goals and aspirations are just as high-minded. You learn that the universe of products can be a dark place, and sometimes you have to make compromises to survive and build your brand, but you hope that isn't always the case.
We all have different roles we take on at different times in the world of software development. Consider how you fit into the story. How your personal story changes over time should be considered in a career path and in your current position.