还是继上文Bob大叔所谈到的,他说 Scrum Master变成了‘Project Manager’,笔者更愿意叫成是Scrum Manager,至少跟Scrum还沾点儿边儿。Scrum Master到底和Project Manager有什么差别的呢,谈起这个,其实笔者也是前阵子一次有趣面试经历才有所感悟。
笔者前些日子荣幸的被叫去参加一个Scrum Master角色的面试,炮灰那是不敢做啦,不过还是抱着好奇,想看看现在行业中的专职Scrum Master到底是什么要求,会在团队中具体扮演什么角色。不想面试一不小心就进行了4、5个小时,最后几个小时都是关于Scrum的各种问题,有些问题是小有challenge,比如多个团队开发,你带领团队的前三个sprint都对framework团队有严重依赖,因为大部分组件尚未开发,但是你每个sprint又需要有story完成,问你怎么办?nnd,这项目也太BT了吧,人家都是有个framework独立的sprint,而且一般会在功能sprint开始之前。所幸,在最终逼问下,也还算是变通的应对了问题。
这还不是最bt的,终场前(最bt状况往往会出现在这个时候,就好像乌拉桂最后几分钟靠点球胜加纳一样),他问我,你觉得Scrum Master的工作职责应该是什么。大脑急速旋转,心想:嗯,你是这里开发经理,要是如实回答你肯定觉得我来了会抢你饭碗,然后给个理由说我Scrum知识不够,让我挂掉。不过想到反正也不想真来,干咳了几声,一伍一拾的把Scrum Master可能的职责一一交待。说到Scrum Master也负责给成员分配任务以及任务状况监督的时候,他坐不住了,问了个很犀利的问题:Scrum Master分配成员任务?!那要开发经理做什么?!我又干咳了几下:嗯,good question(虽然没想pass,不过也还是打个圆场吧,这行圈子不大,万一他以后挑来做我老板怎么办),scrum也是很灵活的哈,不同的组织架构下可以有不同的操作,开发经理负责任务分配、监控也是完全可行地,Scrum Master可以协助,流汗...
可以想像,如果笔者去了上面职位,那一定是给开发经理端茶、送水的角色。这个Scrum Master估计也就出去见客户能摆个pose,表明公司的开发流程完全符合Scrum规范。一个把任务的分配、监控等控制权交出去的Scrum Master,很难想像能对项目进度有什么实际的控制,不过也是填填表格、打打副手罢了。Sprint制定的时候能否积极参与任务预估,给出切实合理的估值,而不是被动的接受上面给下来的任务估算?任务超时的情况下,能否对story进行re-estimation,还是要先填写清楚原因,然后递交product owner和开发经理?分配任务的时候能否根据成员状况、能力等给出合理的分配,还是开发经理说了算?
笔者粗浅的把此类Scrum Master归类为‘傀儡+Admin’。比起前面的‘技术+Admin’,这类可能要更悲壮些。话说几年之后,忙里忙外不讨好儿的技术+Admin类型虽然无法成为优秀的Scrum Master,终于决定跳槽,不久,某知名跨国公司多了一位30w年薪以上的有项目管理经验的优秀架构师。傀儡+Admin就没那么好了,技术忘的一塌糊涂,早就分不清ArrayList跟LinkedList有啥差别,简历上只好说熟悉office,要是有点儿姿色的话,倒是还能做个年薪10w左右的Admin。