Tester Personas at Microsoft

Few test positions fit into one defined role and most span two or more “roles”. Below are personas that comprise many of the tasks, roles and responsibilities performed by test professionals at Microsoft. Organizations that are similar to Microsoft might have test roles that share some of the same characteristics as those described here. Organizations that are different to Microsoft may have different needs, requirements and test roles.

 
Carl - The New Guy

https://msdn.microsoft.com/en-us/bb414765.Carl_204x204(en-us,MSDN.10).jpg

General Characteristics and Responsibilities:
Carl finished his degree in computer science last year, and has been working as a Software Design Engineer in Test (SDET) at Microsoft for just over six months. Carl has learned a lot in his half year with the company; he is getting more comfortable with his job and more confident in his abilities every day. He likes writing code and spends a good chunk of his time writing automated tests and tools to help with his work and to help the rest of his team. Carl also loves analyzing problems and coming up with solutions. He is currently working on integrating a popular Microsoft internal fault injection tool into his tests. With that, he can exercise more of the error handling code in the application he is testing. Carl uses customer data to influence the design of his test cases. He has relatives who are often frustrated when using the computer; he is proud that he can have so much influence on the design of the software and hopes he can ease his relatives' frustration.

Goals and motivations:
Carl has been programming since high school and was initially a bit apprehensive over taking a testing job at Microsoft.  Now, however, he finds the work both challenging and exciting. Carl is a great coder, but he has found that his passion for problem solving and analysis make him a great tester. He loves the variety of the job and appreciates the growth paths for testers at Microsoft.

 
Alecha - Product Line Customer Advocate

https://msdn.microsoft.com/en-us/bb414765.Alecha_204x204(en-us,MSDN.10).jpg

General Characteristics and Responsibilities:
Alecha is skilled at knowing the needs and attributes of her customers.  She has a knack for seeing things from the customer point of view, but also works closely with program management and marketing to verify her assumptions and clear up ambiguity. She analyzes data from various tools that track customer data and makes sure that the testing effort focuses primarily on customer scenarios and customer pain points. She is also one of the key drivers in determining how these tools are used for her product. Alecha writes some automation, but is most effective when working with the rest of the test team to make sure that their automated tests focus on customer scenarios. She is an excellent exploratory tester, and typically spends an hour or so each day testing end to end scenarios in various areas of the product. While most of her teammates focus on specific technologies within the product, Alecha is valued for always having the big-picture view of the product and for her understanding of how all of the pieces fit together.

She designs end to end customer scenarios for entire team, and also is extremely knowledgeable in customer scenarios. She consolidates customer data and works with the test team to design test cases that reflect customer scenarios, and with program management and development teams to ensure that designs and implementations match customer usage patterns. The influence of her work spans all disciplines in her division.

Alecha contributes to product design reviews where she provides valuable input on how the customer will see and interact with the proposed feature set.  She is well versed in customer focused design techniques and works with the appropriate cross discipline owners to apply these techniques across the product. She is concerned with all aspects of the customer experience including usability, reliability, security, performance and general product effectiveness. Alecha spends a lot of time working with other team members to ensure everyone maintains that customer connection that enables her team to create a quality product that the customer wants and needs.

Primary responsibilities include:

  • Analyzes customer data from a variety of sources
  • Represents the customer in design and usability reviews
  • Mentors and educates the test team in customer based testing approaches and the needs of the customer
  • Is Active in customer discussions such as newsgroups, conferences, or special interest groups
  • Provides immediate and accurate feedback on customer impact of bugs
  • Designs end to end testing scenarios based on customer usage data.

Goals and motivations:
Alecha enjoys coming to work every day knowing that she directly shapes the product in a way that ensures the customer's needs will be met.  She enjoys being a product expert and feels valued and respected by her team members as someone that is completely knowledgeable about their product and industry.  She loves her product and the difference she directly makes in customer's lives by the work she does for them.

 
Sanjay - "The Consultant"

https://msdn.microsoft.com/en-us/bb414765.Sanjay_204x204(en-us,MSDN.10).jpg

General Characteristics and Responsibilities:
Sanjay is a technical jack-of-all-trades, able to quickly analyze problems and boil them down to their essence.  He is both deep and broad in most product related technical issues, and can quickly assimilate knowledge in areas where he is deficient.  Sanjay is known as the technical “go-to” guy to his management team—who rely on his technical analysis and honest opinion of ongoing work in their decision making process—and is frequently called upon to provide support to more junior testers. Much of Sanjay's day is spent mentoring less-experienced testers and providing design and implementation feedback to senior developers.  He is confident and honest about the level of knowledge he has and is not intimidated easily, earning him respect and acceptance with the senior developers, and leading them to seek his opinion.  Over the years he has worked deeply in the areas of reliability, functionality, security, and performance, and while his focus is on the technical excellence of the code, his experience has taught him to temper this passion with a healthy dose of business sense in analyzing problems.  While Sanjay no longer spends much of his time directly writing source code, his design, coding, and debugging skills are at least on par with the capabilities of similarly-leveled developers.

Primary responsibilities include:

  • Mentoring less-experienced testers
  • Researching technical issues surrounding the product.
  • Keeping a product-wide perspective.
  • Figuring business and customer needs into technical efforts.
  • Helping to direct product growth in an efficient and effective manner.
  • Developing relationships with and providing a creative tension to senior developers.
  • Having a thorough understanding of the product and platform.
  • Being able to rapidly provide technical data and opinions to the management team.

Goals and motivations:

  • To ship the highest quality, most functional, secure, and performant code at a minimal cost.
  • To constantly gain knowledge.
  • To solve seemingly insoluble problems
 
Jodi -Expert Feature Tester

https://msdn.microsoft.com/en-us/bb414765.Jodi_204x204(en-us,MSDN.10).jpg

General Characteristics and Responsibilities:
Jodi deeply understands her entire feature area.  She quickly grows this depth of knowledge when she picks up new features.  Jodi is often seen as having “tenure” with a feature.  Her developer/pm counter parts understand and utilize her deep product area knowledge.  She takes pride in and can often predict exactly which portions of the feature will have the most issues during development, and which will be the most problematic when combined with neighboring feature areas.  Jodi is considered an expert in testing her type of features.

Jodi is very effective with a debugger and can identify the root cause of even the most difficult issue.  She is often involved in very productive peer programming type relationships with her feature devs.  Jodi is such the feature area expert she’s written the book.  Literally.  It was natural for her to write the bulk of the MSDN articles about this feature area, and to write the primary MSPress book describing its operation, and how to optimize its use.

Primary responsibilities include:

  • Owns all aspects of testing a complex feature area
  • Pro-actively works with peers in closely related feature areas (inside and outside of her own product unit) to help deliver a product line of fantastic quality.
  • Designs and implements elegant and simple testing solutions that provide predictable and consistently high quality product feedback.
  • Understands and utilizes relevant testing practices found elsewhere at Microsoft and in the industry.
  • Engages with the users of her feature area to resolve their issues and bring their feedback back to her feature team.
  • Is an expert on the competition and business value of her feature area.
  • Participates in incubation projects in line with her area of expertise.
  • Provides a foundation of experiences to other testers in similar areas.
  • Drove the creation of supportability/testability components in her feature area.

Goals and motivations:

  • She is driven by customer satisfaction. Jodi smiles every time she sees her features being used out in the real world
  • She is proud that her features have the lowest number of issues across the product line. Other feature area owners rely on her to help them achieve this same level of performance.
  • Jodi is excited to arrive at work each day to make things just a little bit better. She see herself growing to larger and larger feature areas in the coming years. She aspires to mentor other testers in large feature areas.
 
Kazutoshi - Process and Infrastructure Specialist

https://msdn.microsoft.com/en-us/bb414765.Kazutoshi_204x204(en-us,MSDN.10).jpg

General Characteristics and Responsibilities:
"Kaz" joined Microsoft nearly ten years ago, and his ability to recognize important emerging technologies has been an important part of his career growth. Early in his career, for example, he recognized the potential of XML and leveraged it in reinventing the test management process for the team.

Kaz has a passion for helping other testers do better at their jobs, and a lot of what he does focuses on helping his entire test organization reach their full potential. He also reaches out to developers and program managers, providing tools and processes that detect and minimize bugs early on, and streamline cross-discipline collaboration. Kaz is also an entrepreneur: never satisfied to leave well-enough alone; he is constantly trolling the company for innovations and best practices.

Kaz often wears all three traditional product hats. Near the end of each product cycle, he plays PM making the rounds with his team’s managers, leads, developers, testers, and program managers, discussing the strengths and limitations of the current infrastructure. He updates the user persona documents (he wrote during the last infrastructure design phase) as the product changes and users adapt to the evolving infrastructure. He collects and prioritizes the user requests, updates the infrastructure road-map as necessary, and builds a project plan for the next cycle. He obtains feedback and buy-off from his users and stakeholders, and secures the necessary time and resource funding for the infrastructure investments.

“The best developers are users,” he is often heard saying, so Kaz writes a large percentage of the code used in his infrastructure designs. The infrastructure is huge, however, so he manages the development process by coordinating and consulting with other SDETs on the team who own various parts of the infrastructure. Where each of the separate developers focuses on their own feature, Kaz works like a dev lead ensuring the whole system is well-conceived and implemented. Acting as project manager, he shepherds the work to completion, ensuring a robust, highly-usable, and timely release to users.

Kaz is also responsible for testing the infrastructure. Like his fellow SDETs, Kaz must test his own component, but he is also responsible for the end-to-end test of infrastructure. The interesting thing for Kaz is that he uses the infrastructure to test the infrastructure. Also, he uses the same test tools testers use to test the team’s product, so he can see for himself how well the tools serve the users.

Finally, Kaz is the go to guy for process. Whether its Agile methods or Test Design Patterns, he is always evaluating current methods and their application by testers (Kaz attends virtually all test code reviews), and he stays current with the state of the art through networking with other Senior SDETs and Test Architects across the company. Kaz has three patents pending, and has written or co-authored three books on technology.He frequently gives talks at developer and tester conferences around the world. Kaz absolutely loves his job.

Primary responsibilities include:

  • Architecture ownership and implementation leadership for his team's testing infrastructure
  • Coordinating test methodology and infrastructure investments across four teams within his division (100 testers)
  • Collaborating with other infrastructure specialists inside and outside his division to help a broader user-base
  • Working across disciplines to prevent bugs and facilitate collaboration through better processes and technologies
  • Gap analysis and related recommendations on his team's engineering and testing processes
  • Technical growth of testers on his team

Goals and motivations:

  • Helping test management reach their full potential.
  • Helping every tester reach their full potential.
  • Enabling developers, program managers, and testers to detect and fix bugs during specification and design.
  • The vision of unifying the test processes and technology of four teams into one system.
 
    </div>
  </div>
</td>
<td valign="top" style="width:300px;">
  <div class="RightAdRail">
    <ContentInclude Identifier="dd799193" runat="server" />
  </div>
</td>