⽐程序员还苦,细数软件项⽬经理的那些痛点
(⼀)⼩软件公司项⽬经理是不是很悲剧的⼀个职位?
其他⾏业的咋也不清楚,⼀个⼩软件公司或者在⼤⼀点,基本上⼀个项⽬就加项⽬经理2~4条左右,⼤公司咋也没去过,也不清楚,去过的⼈也分享下。
个⼈感觉:
1.要权利没权利。
2.要资源⾃⼰说了也不算。
3.需要给客户交代,还要给⾃⼰公司领导交代。
4.在客户现场开发,还的考虑项⽬组兄弟们的吃住。
5.项⽬中的业务需求、计划、进度、阶段性⽬标、各种疑难杂症、各种意想不到的问题,
技术⽅⾯的、业务⽅⾯的、系统交互的、数据⽅⾯的等等问题。
6.收款、报告、例会、总结、演⽰、培训等等⼀系列的⽂档ppt。
7.还要关注项⽬兄弟⼈员变化,各程序员的⽔平等。
8.TMD基本上还要设计、编码。
是这样吗?最痛苦的就是,在计划时间内有些东西没搞出来,来⾃客户的压⼒、有些⼩⼈的嘲讽、吐槽,系统上线试运⾏时公司所有业务⼈员唉!⼤家懂的。
有前途吗?累啊,挣点钱不容易,有时候真想回家种地,也能落个⾃在。
⼩⼩的抱怨下。
(⼆)说说我第⼀次当项⽬经理的悲惨经历
此时此刻,本⼈已经21周岁了,终于凭借着个⼈的努⼒,当起了个⼩⼩的项⽬经理,
⼿下的⼈不多也就5个,加上我也才6个⼈⽽已,各位⼤⽜们可别见笑呵。
这个项⽬经理可不好当啊,
⼿下的⼈
⼀个不知道如何传递参数,
⼀个不知道怎样调⽤⽅法,
⼀个不知道什么是⾯向对象,
⼀个不知道什么是计算机语⾔,
⼀个不知道何为Personal Computer。
⼀个不知道何为Personal Computer。
结果可想⽽知,
所有⼯作均为作为项⽬经理的本⼈亲⼒⽽为,
从需求分析,到软件架构,再到编写代码上,
⽆⼀不是亲⼒⽽为,还要被他们指指点点的,
不是说功能太少就是说界⾯不好,
感慨啊!
(三)⼀位项⽬经理的⾎泪总结,句句戳中痛点
1. 任何可能发⽣的问题,⼀定会发⽣!
你担⼼什么问题发⽣,它就偏偏发⽣。
2. 任何微不⾜道的细⼩问题,哪怕你可能只见过它⼀次,然后就再也没见到,该问题将倾向于在⼤规模⽣产中给你惊喜!
3. 战略上要乐观。要相信任何问题都会有解。
你解决不了的,别⼈也许能解。
现在解决不了,将来也许可以解决。
技术上解决不了,可以从业务的⾓度来解。
你的层次解决不了,从⽼板的层次来解。
⼀位项⽬经理的⾎泪总结,句句戳中痛点_2
4. 战术上要悲观。没有经充分验证的东西,都要假定它是有问题的。
假定->验证->再验证。
5. ⽤数据来说话。
6. ⽤图⾯来分析。
7. 到根本原因。根本原因本⾝通常⽐想象的简单,但根本原因的过程往往并不简单。
⼀位项⽬经理的⾎泪总结,句句戳中痛点_3
8. 任何“应该是”都是风险。
9. 要相信任何⼈能在他⽬前的位置上都是有道理的,存在即是合理。只是有的道理你还没发现或没能⼒发现。
10. 彼得原理告诉我们:有的⼈在他⽬前的位置上并不胜任,合理的终将存在。
了解第9点和第10点,能帮助你清醒地认识⾃⼰,客观地评价别⼈。
⼀位项⽬经理的⾎泪总结,句句戳中痛点_4
11. 当我做⼯程师时,觉得项⽬经理只是英⽂⽐我好,其它都⽐我烂,直到我做了项⽬经理。
当我作项⽬经理时,觉得⽼板的⽔平很差,要是我在那个位置⼀定会怎样怎样做。
当我做⽼板时,觉得⽼板也不容易啊。
(四)从程序员到项⽬经理后更痛苦
学⽽优则仕这种传统,在软件开发领域也有体现:很多⼈会因为技术⼯作做得好⽽⾛上管理岗位。然⽽,这样⾛来的技术领导,在刚晋升时,往往会⾯临很多问题,经历痛苦的转换期……我们就来看看,新任技术领导都会遇到哪些问题,怎么破。程序员接活的平台网站
1 以为任命产⽣领导⼒
带队伍和当⼩兵是完全不同的,技术领导需要组织、领导、激励其他⼈为⽬标⽽⼯作。然⽽其他⼈会不会听你的,会不会阳奉阴违,会不会积极主动地⼲活,当别⼈与⾃⼰意见分歧时怎么办,怎么样让别⼈接受⾃⼰分配的任务,怎么样让别⼈接受你为其设定的⽬标……这些都是问题,需要有影响⼒和领导⼒才能玩⼉下去。
然⽽新任的技术领导刚到经理岗位,对领导⼒可能还没有体会,很可能不知道怎么做,会错误的⽤⾏政权⼒来强硬地要求(命令)别⼈做某些事。这是⼀种误区,任命可以赋予⼀个技术领导⾏政权⼒,但不能产⽣领导⼒。来⾃权⼒的压⼒可能短时间内貌似有效,但实际上会严重损害⼀个经理的领导⼒和影
响⼒。假如⼀个经理频频采⽤官⼤⼀级压死⼈的策略来推动项⽬和项⽬中的⼈往前进,往往最后会适得其反,招致⼤家的厌烦和反馈,在团队中失去威信。
2 害怕别⼈不⼲活
从普通⼯程师晋升为经理后,开始管理其他程序员,开始管理项⽬,开始为整个团队或部门的⼯作进展负责。此时就会产⽣各种担忧,其中之⼀就是:要是别⼈不好好⼲活或不⼲活怎么办。
因为刚担任技术领导,对经理的⾓⾊还没有适应,不太了解⼀个项⽬的⼈员怎么运转,想当然的以为每个⼈都应该⼯作量饱和、⼯作积极,项⽬进展才能保证,因此对每个成员是否努⼒积极⼯作就会特别在意。同时也可能由⼰推⼈,如果⾃⼰是特别努⼒积极做出了成绩才晋升,那就可能觉得别⼈也应该和⾃⼰⼀致;如果⾃⼰曾经因为种种原因有怠⼯的⾏为,也会担⼼别⼈各种借⼝不好好做事⽽影响进度……
其实这种担⼼是很正常的,但从客观上讲没太⼤必要,你相信⼤家都会积极完成⼯作,结果就⼀定会朝这个⽅向演进。因为多数团队原本就形成了某种节奏,可以度过领导更替的动荡期,然后继续有效运转。信任是⼀切的基⽯。
3 总想亲⾃上场
因技术⽽晋升的技术领导,通常在技术⽅⾯有较强的能⼒,甚⾄是出类拔萃。这种技术能⼒的优势在作为普通员⼯时可能会给⼀个⼈带来显⽽易见的影响⼒,然⽽当这个⼈成为经理后,有时反倒可能成为他做好领导⼯作的障碍。因为他可能经常拿⾃⼰的技术⽔平衡量团队的其他⼈,觉得这个任务张三很难处理好,那个任务李四铁定犯错误,于是不放⼼把事情交给别⼈来做,或者交给别⼈做了⼜因为看到要出错,忍不住⾃⼰伸⼿去做,把分给团队成员的任务再拿回来⾃⼰做。
当⼀个技术领导因为担⼼下属会出错或不能按⾃⼰预期完成任务⽽收回这个任务⾃⼰做时,要么会让下属⾃⼰觉得⾃⼰⽆能(或者让下属猜测领导认为⾃⼰⽆能),要么会让下属觉得这个领导越俎代庖不⼲他该⼲的事⼉,这就会产⽣严重的不良影响,不利于团队成员⾃⼰成长⾃⼰解决问题。同时,这位技术领导也会因为过分关注技术细节⽽忽略其他的组织、领导⼯作,导致只见树⽊不见森林,严重影响整个团队的效率和⽣产率。
4 担⼼丢掉技术失去竞争⼒
有些技术领导刚刚开始带团队时,往往还停留在过去的⾓⾊⾥,认为技术是唯⼀的⽴⾝之本,担⼼放弃了技术细节后,⾃⼰会丧失竞争⼒,会贬值。⽐如会担⼼万⼀⾃⼰从这个经理岗位离开,就可能⼜不到管理岗位的⼯作,⼜因为⽣疏了技术⽽不到技术⼯作。所以,他们会陷⼊纠结中,⼀⽅⾯想提升整个团队的⼯作效率⽽不得不做很多的组织、激励、领导、协调等⼯作,花费⼤量精⼒;另⼀⽅⾯,这些⾮技术⽅⾯的⼯作会占⽤他们⼤部分精⼒,导致⽆暇深研技术⽽产⽣焦虑。
其实,此时更重要的是视野。你可能对技术细节了解得少了,但对技术⽅案选择、技术类别、技术的影响⼒等可能了解得更多,会形成更为⼴阔的视野,这⾜以弥补你在技术深度上的⽋缺。⽽且,其实你之前的达到的技术深度也仍然存在,甚⾄会发酵,会反过来滋养你的技术视野,因为如果你之前在技术上达到了⼀定深度,⼀定在学习上摸索到了适合你的规律,这种学习模式,会帮助你更快的了解更多技术,让你从⼴度上来丰富⾃⼰,这虽然不能保证让你在技术⽅⾯更有竞争⼒,但也会帮助你将技术竞争⼒维持在某个⽔平。
最重要的,除了技术,你在管理岗位上的锻炼,将来⼀定会带给你更深层次的变化:要么你培育了组织能⼒领导能⼒;要么你认识到⾃⼰更适合做什么,对⾃⼰的才⼲和能⼒边界有更为清晰的认知,⽽⼀旦有了这种认知,再做其他事就会得⼼顺⼿——因为,你会更容易到⾃⼰喜欢做的事情并带着热忱义⽆反顾地投⼊进去。