The Software Testing Prestige Issue at Microsoft

The topic of the low prestige of software testing (compared to software development and management) at Microsoft comes up in my conversations here in Redmond, WA all the time. It is an important topic because Microsoft has great difficulty attracting and then keeping top talent in software testing roles. The issue is relatively complex and can’t be fairly addressed in the short space of a blog entry but here are brief sketches of 12 opinions that are part of the software testing perception issue. These opinions are all tightly related and in many cases different views of the same idea. Furthermore, I don’t agree with all of these issues — but they’re all issues I hear repeatedly, and each idea has a strong counterargument which I’ll address in some future blog entry.
1. Lower pay. Software testers at Microsoft do in fact receive on average lower pay than software developers with similar experience.
2. Self-fulfilling prophecy. Because testing is perceived as lower prestige, it does not appeal to top talent, which in turn lowers the field’s prestige.
3. Weak testers can hide. Software testers have fewer directly measureable work outputs than developers so weak or even incompetent testers can hide within a work environment for quite some time.
4. Weaker technical skills. At Microsoft, prestige is most closely related to ability to code. Most testers have weaker coding skills than developers. Testers, as a whole, are sometimes seen as failed developers.
5. Degree of separation from product. Compared to software development, testing is at least one degree of separation removed from Microsoft’s core activity — which is software development.
6. Explicit career path. Software testers have fewer direct career path options than developers.
7. Implicit career path. Senior technical management (VP and above) at Microsoft almost always come from Development; almost none (I can’t think of any) come from a Test background.
8. No stars. Software testing has not produced a single star similar to Kernighan, Richie, Thompson, Knuth, Hamming, Dijkstra, Newell, Simon, Backus, Naur, Hoare, Codd, Wirth, and so on.
9. No breakthrough technologies. Software testing has not produced any revolutionary new technologies, research, or paradigms.
10. Body of knowledge. There is no core body of software testing knowledge and existing certifications are essentially simple vocabulary tests.
11. University curriculum. Few if any major universities offer software testing classes, much less testing programs.
12. Declining influence. Dedicated software testing has become less important over the past few years as developers use more test driven development techniques.
Each of these issues requires a lot of explanation but the list above should give you a feel for many of the common arguments about why most software engineers would claim that software testing is a second class activity compared to software development. As I mentioned all of these 12 issues have strong counterarguments, which I’ve not listed. However, my point in this blog entry at least is that there is a serious perception issue at Microsoft that software testing is definitely inferior to software development in many ways. Now don’t take this entry as software testing bashing — quite the contrary. I am passionate about software testing and believe testing is critically important to the overall software development life cycle.
This entry was posted in Software Test Automation. Bookmark the permalink.

3 Responses to The Software Testing Prestige Issue at Microsoft

  1. Phil says:

    #8: No stars?  Tsk, tsk.  Dr. McCaffrey, you are far too modest.  You are definitely a star in the software testing field.

  2. owsi says:

    James, we actually have some very good trending data to demonstrate that a lot of the arguments you offer are changing.
    1. For example, testers and developers at the same level are paid similarly. While one can say that 2 – 3 years ago the average level of a tester was about 2 levels lower than that of the average developer over the past 3 years we have seen the level of testers increase and the disparity in levels between developers and testers decrease.
    2. We are starting to see the \’self-fulfilling prophecy\’ of testing having lower prestige disappear. In many groups now testers are required to debug to line of code. In some groups testers are actually checking in bug fixes. In other groups testers are shipping automated tests on SDKs to customers.
    3. I think in the past weaker testers could hide, and in some cases even get promoted by playing politics. I must admit the politics still happen, but the number of technically weak testers at Microsoft is rapidly dwindling.
    4. Some of the coolest tools being developed today are developed by testers (PICT immediately comes to mind).
    5. I would say that Microsofts core actiivity is innovation.
    6. Tester\’s at Microsoft now have just as many direct career path options as developers or any other engineering discipline. In fact, not only are we starting to see great talent coming in, we see a lot of folks staying in test and reaching senior levels in various product groups.
    7. S.Somasegar just got promoted to senior VP…he started in test, there is also Grant George who is VP of test, and I know more than a handful of testers who are now GM or PUM level.
    8. No stars…Beizer, Myers, etc.
    9. What…when I look at all the really cool innovations in software processes a large majority of tools are test focused. Again, PICT for combinatorial analysis, work with Spec Explorer for model based testing, PEX, etc. These are all test tools.
    10, 11. Ok…you got me here…I absolutely agree. But, I also think we are starting to see some traction here.
    12. Actually, testing is just getting harder, not easier; thus the need for increased skills. In fact, I argue that as we advance developing languages that development will soon be as easy as simply linking multiple modules together. The hard part will be proving they do what you think once they are hooked up and don\’t wreak havoc. Testing, my friend, offers much more challenging opportunities in the future.

  3. Conan says:

    I second Phills comment 🙂
    Just like anything else, testing has its challenges.
     I\’ve been both a dev and tester. Testing provides a unique & interesting set of problems which require a very creative thinking style. A tester needs to be especially careful not to cloud snake oil (like the 12 points above) with reality. And being passionate about testing helps too!!! 🙂

Comments are closed.