多新人进群之后第一个问题一般都是:“配置管理是做什么的?我是新人啊,刚入职,公司让我做配置管理。一脸懵逼啊,我怎么知道配置管理是作什么的?求大神帮帮忙啊,冰天雪地后空翻旋转360度跪求...”
  上贼船
  其实我一开始工作的时候也不知道配置管理是作什么的,早知道配置管理这个词还是大学里的软件工程课的课本《软件工程实践者的研究方法》,我觉得 EE,CS,SWE 专业的学生肯定都上过类似的课程,这本书更是人手一册的经典。
  我大学毕业之后去了南京一家外企。那个时候去外企还是相当洋气的,不像现在国内互联网公司异军崛起,到处开疆拓土,称王称霸,外企颓的不行。入职培训过后,经理找我谈话说:“咱们部门缺少一个配置管理,要不要尝试下?” “啊?配置管理?好,我愿意尝试”,于是一位美女成为了我的导师(mentor),我跟她一起学习、一起工作,所以那时候很多人都看到我跟在她屁股后面转。我是导师的小跟班的,很多人不解我为啥整天老跟着导师转,其实现在想想可能是因为自己心虚、心慌。因为一起加入公司的同学,有的做嵌入式去了,有的去做 CRM 开发,有的去做测试,而我一人做了配置管理,看着周边的同学飞一样的进步,自己却连配置管理的道道还没摸清,我自己也着急啊。
  近水楼台
  对于配置管理,那时我是一脑袋的问题,好在我坐在我导师的正对面,虽然很多问题 low 得不能再 low ,但导师还是很耐心的帮我解答了。很多时候她的一句话,抵的上你胡思乱想半天。新人嘛想法多,优势是有些不一样的思维,问题在于方向多了,不容易把握。这个时候有导师(一个的领域专家)的优势出来了,可以第一时间为你释疑解惑,给你指点方向和训练做事的方式方法。在这一点上,我觉得还是很幸福和幸运的。这里有一点要说一下是:对于新人,不断的提问、思考、总结是一条快速成长的途径,尤其是问。类似的经历可以参考小 w(至于何方神圣后面有交代)。
  大师传道
  入职三个月左右,公司总部来了一位白胡子老大爷。其实是公司软件工程方面的专家,在嵌入式、系统软件和企业软件方面都有涉及,做了20来年的开发,后来专门做公司的软件开发流程方面的培训了。为期一周的软件方法论的培训,那个时候真的觉得是有种醍醐灌顶的感觉。虽然也学过软件工程的课程,但是书中的很多想法虽然自己知道结论,但是其实未必知道所以然。所以自己经常的提问,不是觉得自己很牛掰,其实是想问倒他(现在想想多么幼稚)。期间自己真的学到了很多,纠正了很多和自己原先想的不一样的地方。
  对于新人,没事去听听过来人的讲座、行业分享有好处,哪怕是听他们去吹牛,那吹的也是有奶的牛。各个都有货,不是干吹。
  汪洋大海
  培训结束后,每个人也都成为了公司的正式员工,而我也正式开始带项目。培训完的人都可以访问公司的软件开发流程 wiki。那真是汪洋大海的地方。里面包含了软件开发过程中涉及到的方方面面。有专业术语解释,比如啥叫配置项,什么是配置审计等;什么是过程裁剪,哪些过程必不可少,哪些针对不同项目可以不做重点;软件开发不同阶段不同角色都要做些什么,输出是什么,要达到什么标准;关键的是有各种各样的模板(此处应该有一个大大的笑脸)。对于新人的我,模板可是好东西啊,可以照猫画虎,照葫芦画瓢啊。
  那个时候自己反正也是新人,工作之余回家也没事,除了忙正常的工作之外,自己喜欢翻这个 wiki。虽然有些东西未必真的工作中遇到,但是凭着新人应该多学习的热情,自己真的耐心地能看下去。当时,这些系统化的知识给了我莫大的帮助。
  系统的总结、梳理、文档化本公司的做事方法、行为准则,对于提高公司工作效率必不可少。这对于好的实践的传承是好的方法,而且成本低,见效快。
  配置菜鸟
  之前虽然有的项目说是自己带,其实还是帮导师打杂(说的跟后来不是似的,呵呵)。经过几个月的孵化,配置菜鸟终于破壳而出自己开始带项目了。现在想想走的的确是中规中矩的配置管理路子。老任(任正非)的三化方法(先僵化、后优化、再固化)是对的。对于一个新人来说,啥也不知道的时候,去挑战别人工作多年经验总结出来的方法是不明智的,即便我很欣赏这样的精神。下面开始讲传统的配置管理是怎么做的。
  缩写解释:
  · EE : Electrical Engineering,电子工程 俗称EE或Double E
  · CS : Computer Science, 计算机科学
  · SWE : Software Engineering, 软件工程