今天总结了个团队管理方法,暂且命名为ARGA,我认为比较适合我们新团队的状态。今天在我另一个team也简单介绍了一下这个方法,感觉大家不大理解,因为这东西太疏松平常,感觉没啥创新。
但我认为这是非常好的总结,因此想blog一下。
什么是ARGA?
ARGA – Assign, Report and Gap Analysis. 即分配,汇报,差距分析。
这是一种detail management的方法,聚焦短期任务的管理。
这跟PDCA(plan do check act)有啥差别?我觉得PDCA是比较通用的方法论,跟ARGA没冲突,我只是具体化了一下在日常工作中怎么实操而已。
跟传统汇报不一样,我们的action部分来自于管理者,因为我们假定了管理者是发起人也是负责人,所以他的action就是如何迅速调整工作分配。
Assign :由管理人员主动分配任务给团队的人,通常只分配1周左右的任务量,可以把期望值写进去,比如有些事情预估只能完成部分,也写进去。主要明确manager对下属的期望。
Report:由程序员汇报本周进度。
Gap Analysis:由管理人员做出判断,把差距写下来,由此依据,你可以判断一个人的生产效率并可以调整项目资源。
分析完差距之后,管理人员根据项目需求优先级和团队人员情况再次分配下周的任务,依此循环。
为什么这样做?
过去尝试过很多项目管理方法,比如SCRUM,Kanban或者XP,理论上这个世界都AGILE了,但是我还是发现有些团队不适应。归根到底,跟团队的成熟度有关。
我一直都很提倡Agile,尤其是scrum,我之前带的team玩scrum非常溜,大家都适应了这种快节奏的,团队目标驱动型的管理方法。
但是在国内一些小公司的team,尤其是年轻不怎么成熟的团队,很难实施scrum。
首先每个人的skillset不一样,导致你必须给不同的人分配任务,也就是说不像全栈工程师,什么task都能接下来,这导致了必须有PM或者DM的存在。在成熟的DevOps团队,我们只需要PO, BA、Architect和Full stack,甚至可能BA、Architect也可以不需要。因为这些人可以直接跟业务,跟PO讨论设计、需求和安排进度,自发性非常强。国内小公司的情况可能不大一样,我们团队成员大部分是按技能角色聘请的。在大学里,老师可能明确地跟学生说,你可以选择前端路线或后端路线,更甚的是,除了开发,运维技能几乎没有接触,这导致一个团队必须招聘:前端开发、后端开发、业务分析、产品经理、项目经理、测试、DBA等各种角色。
再者,作为小公司,我们也没有那么多钱去请合格的全栈,价格摆在那里。
咋办? 其实我们也不是“不Agile不能活”的那种。归根到底,所有的Agile methodology无非就是想把项目进度管控好,让产出更有效,让风险更可控。
我想作为一个manager,无非是想知道我的团队的人到底能否搞定那件事,需要多久,我需要做些什么预案。说到底,就是希望expectation跟actual out come的更加match。
根据ARGA方法,我们可以blindly分配任务给下属,但是一周后,我们根据他们的汇报,我们会发现差距,这时你就有了调节的基础,所以,你再次assign tasks的时候,就可能会更精准。
有些传统公司用这种方法管理,比如每月给老板汇报一次。可以肯定的是,一个月汇报一次IT项目开发是完全不可行的。但如果我们把周期缩小到1周,它是一个非常适合IT节奏的管理方法。如果我们缩小到2天,甚至1天会怎样?其实,这就是类似于每日站会了,这个跟scrum+retro没啥区别。
我认为对于年轻团队,更需要时间和空间去学习,按天去督查,压力是非常大的,管理者也会很累很失望。因此我们一周是一个更合理的汇报周期 。
有些老板听完汇报之后没有什么具体的action,只会告诉下属这个问题那个问题。而我们把这种action变成了管理者的任务,从根本上解决了这个问题。
利弊分析
优势:快速调整、聚焦任务,可以根据管理者的意愿快速把事情完结,也可以充分掌握你的团队的表现。
劣势:管理者心中必须要有非常清晰的roadmap,需要管理者做detail project management,深入了解每一样事情和了解blocker所在,这样才可以有效GTD。(Get Things Done)