The journal of becoming senior tester (8) - suggestions for test manager

 Today, I like to write a blog about hiring testers. The main reader is our hire Manager.

This blog is not about how to interview people or decision on hiring a person or not which I think it is the What part. My main topic will be the
Why part, i.e., why we need to hire one or more testers.

I am not a test manager, and I don't know what the reason our manager said to HR is when they need more people. Maybe let me put some of the possible
reason:

  1) We start a new project or feature, and we need to setup a new dev and test team.

  2) We have a new test lead, the lead should at least manage 5~8 people.

  3) We are short of test resource when doing a project

  4) Our VP just give the openings to test manager, and if we don't fill them, they will be "wasted".

Do we really lack of test resource?

I always heard people saying about lack of test resources for their project. However, do we really lack of testers? Not really, and not at all. There is no lack of test resource issue inside Microsoft, but rather resource allocation issue. Today, our tester usually belong to a co mponent team, lead by a test leader. He/she grow his career by deep understand and testing very well for his area. People tend to believe that for each area/component we own, we need a test team. People tend to believe that testing is a professional which need deep knowledge about testing. We may think about this issue in other way. Today, the modern testing framework, such as NUnit, Xunit, MsTest and Selinum make writing automated test very easy, and do testing don't really need too much knowledge about testing, especially for white box testing (I believe white box testing has more power than black box testing in the sense it was written by dev. and run as early as possible).

 I saw a couple of cases that our senior tests have very deep of domain knowledge about their component and for such component, deep
understanding is necessary. For example, testing query optimizer is the case. However, I think the best tester should turn his/her knowledge and
the testing idea into test library, so that everyone can use it, and which making testing such component much easier. In SQL Server, TestQP
and QREL are very good example. After you transfer your knowledge into code, I think you are free to move to other team, we are not necessary to
keep in the person because he/she has the best domain knowledge.

Growing our team does not mean growing our bussiness?

Sometime, people feel proud that a team grow from 5 people to 20 people or even more. However, it does not mean that we grow our bussiness four
times. The number of people managed should not be the way to measure the success of the manager or the team. 

 

Do you think adding new testers will improve the team's productivity?

It is not really. It is true that sometime, our tester are very busy on projects and we have a feeling that adding one or more tests can help us? If it is the reason we want to hire people, what about the project finished? We keep the people forever. Here is some of my recommendation to our hire manager if he/she wants
to hire a new tester:

  1) try to explore different approach to solve the issue of need a tester, and treat hiring a new tester as the last solution.

  2) if we need more testers for a project, can we move tester from other team?

  3) if we have too many things to do, can we priorized them, and cut the lower priory tasks.

  4) thinking about growing a lead to be a technique lead instead of people management lead. We tend to grow very good IC to lead position and let
he/she managing more people. However, our lead today spend too many time on people management, and other stuff, they just have no time to
think, no time to improve their technique skill. So please consider to treat our lead as technique lead, In this way, the number of people who managing is not important, but the people who influenced do.

  5) Always spend time to improve our culture, our process and our methodology. Engineering excellent is the key for better productive. Reduce our technique debit, spending time on innovation.

  6) Consider to build up some metric to measure the efficiency of tester or our test, so that we can use better way to make decision.

How about the career of new testers?

It is a big topic, which I will not talk too much here. One way to think about is that we all want our people grow fast and have a better career in the future. We all want our
tester can easliy find a testing job in other company if they decide to pursue opportunities outside the company. However, many companies today have relative low ratio of dev: tester and they proved that their product quality is not bad because of this. I hope someone can do some research on the job market, the level of tester in other companies, so that we can use more fact to understand this issue.

That is the end of my blog, test manager, what do you think?