从你刚入软件测试行开奘疚豫枭始,你面前基本上是有两条路可以发展。一是技术,二是管理。先说管理,很多人做了很短的时间就走向了管理,team lead,甚至manager。他们的工作已经很少用到技术了,更多的是学习和运用管理的知识。这样的人不在少数,我当时做测试3个月一转正就是team lead了,老板也非常希望我专注在管理方面。可是下一步怎么办?一般出现这种情况的都是在中小公司,而不是大而正规的外企.下一步你的发展会由于技术不够扎实而出现了瓶颈.第一,你不可能回头去搞技术了,因为你管理的地位,工资都高于技术人员,而且还有年龄的问题,这些因素造成了你只能继续管理。第二,如果你想跳槽到大的外企搞管理,可能性几乎为零,因为你没有大外企的经验又没有出众的技术。第三,如果你想在本公司或类似公司往上爬,比如做director,很可惜,这些公司往往不配备test director的职位,并且其他director的职位也很难由一个做测试的人来承担。(可能会有特例,但是应该很少)。因此,刚入行不久,没有扎实的技术沉淀,就走向了管理,很快就会发展到头了。
再说技术,我们知道测试的最高title就是SDET和SET了。实际上都是一个东西,微软叫SDET,Google叫SET。说白了,这种职位本质上就是开发,只不过不是产品的开发,而是测试的开发。需要很强的开发背景。因此,一个普通测试人员想要得到这种工作机会,开发的经验是必不可少的。另外,微软,Google这种最top的公司,基本上已经没有STE, SQAE这种职位了。而我们大多数人做的测试工作恰好正是这种职位。顶尖大公司的这种职位都外包了。因此,你想通过普通的STE, SQAE这种职位进入顶尖公司,可能性基本为零。因此,如果从技术上来讲发展,无论从title上还是公司上往往上走,开发的功夫都是必须的。
因为我说的是一直往上发展,因此到了SDET后怎么发展?基本上三条路,第一管理,第二开发,第三继续测试。先说管理,你从技术上一路走过来再走向管理跟前面讲到的那种管理是天壤之别了。首先,你已经是在顶尖公司了,其次,你已经具备了高深的技术水准了。放眼望去,整个测试行业还能有几个适合你的位子呢?还能有多少人能跟你相提并论呢?这条路可以lead->manager->director->vp->senior vp往上发展。那么发展到了最后还怎么发展呢?这个时候,我估计应该年纪很大了吧?钱很多了吧?享受生活吧。
再说转开发,因为SDET具备了比较强的开发水平(比一般公司的开发人员的水平要高),因此可以比较容易的转向开发。转向开发之后就属于开发的发展之路了,就不多说了。最后说继续测试,一直以来都有个疑惑,为什么我从来没见过senior SDET?本来SDET可以向senior, principle这条路走下去。我以前也想过自己发展成test architect。可是,为什么没见过?依我现在的感觉来说,测试的技术很快就学到头了,开发的技术由于一直是在做测试程序,而不是真正的产品,因此提高的程度也受到了很大的限制。因此,在技术上来讲,一直工作下去就会维持在一种不是很高技术水平的状态。这种状态达不到senior的要求。这也是为什么周围很多SDET不知道工作了多少年,还是SDET。目前来看,想发展的话,维持在SDET不算现实。必须走向管理,或者转向开发了。这也是为什么director在回答我的问题“我在测试方面应该怎么发展?”。回答竟然是“短期来看要学好C,长期来看还是C,转向开发”。根本就没有提到测试。