2、技能深度。在性能测试工具方面有自己独特的理解;同时也应该在操作系统、数据库、应用程序等方向的配置管理与调优方向上非常的熟悉。
3、敏感。这个一方面是天赋,一方面是经验积累吧, 很多隐蔽的性能问题确实是需要丰富的经验才能发现,极容易漏掉:)
4、兴趣。其实这条才是最重要的^-^
如果说具体些通俗些,我眼里主站真正的性能工程师是这样的:
1、熟悉Java(包括JVM内在机理)/c/c++。理由很简单,主站大部分的外围应用和中间件都是JAVA写的,底层核心系统是c/c++写的。
2、精通linux管理和shell编程。理由更简单,我一直觉得,shell熟练与否非常大程度决定了一个工程师的工作效率。
3、对数据库管理和性能优化有自己的实践和心得(数据库永远是个性能要点)
4、精通某一个性能测试工具。不止是使用,更包括原理,如何改造扩展。
5、熟悉linux kernel的实现(比如内存管理、文件系统、系统调用… )。这条感触在最近两个月特别深,可能是受到褚霸、子团等大侠们的影响吧,如果不熟悉kernel,确实很难在底层系统的性能测试上有所真正建树。其实这块也算是整个质量保证部的技术短板吧,现在淘宝的linux内核组都是自测+他人review的形式,如果。。。^-^
6、了解常见硬件,特别是存储相关。这块主要是受国外Percona公司的Peter和Vadim影响,他们能成为世界公认的mysql性能专家,他们熟悉mysql源码当然很重要,但也与他们那非常渊博的底层硬件知识是分不开的。
当然以上都是我个人意见,从我自己的角度出发看的问题。其实性能测试还有很多领域,比如前端性能测试这块,我是小白,就不发表任何相关意见了^-^ 但说到底,做性能这块关键一是经验积累二是掌握相关底层技术
至今还记得百淘65期让我最为难忘的细节,达人青云在分享他的牛P经历时总结到的:
● 结合优势,做别人做不了的
● 发现问题,做别人没做过的
● 主动出击,做别人不爱做的
希望自己能一直铭记这三句话,有天能成为一个真正的性能工程师