一个混乱千万级软件项目

一个,混乱,千万级,软件,项目 · 浏览次数 : 0

小编点评

**项目管理调整** 1. 远程领导人砍掉,在现场找一个 leader,负责软件开发流程和评估工作量。 2. Leader不要做开发,找到对应可以做的人,评估方案和预估工作量并对进度做安排和跟踪。 3. 每天上午和下午例会15分钟,绝不能超,内容要量化,提供给实施人员用于KPI考评参考。 4. 对新功能,一定要找到产品经理或客户了解需求,必要时叫上开发人员一起了解。 5. 每个人的任务,工作量,难度系数,完成及时性,bug紧急性,修复情况,bug造成的影响等信息需要量化,后续提供给实施人员用于KPI考评参考。

正文

背景:公司接到一个亿级的项目,软件大概占到1/4的比例,整个项目包含了硬件和软件团队。软件团队是要实是一个软件产品,让其控制各种硬件设备做自动化运作,并打通上下游系统的数据。软件同时统计分析(包括机器学习和AI) 整个项目设备的运作和任务执行情况,服务于后续运营优化。

项目成员结构:
大项目经理,对这个项目负责。对于在项目中要做的事情,可以和普通项目经理一样,只是维度会更高一级,可以理解成PMO
硬件团队经理负责机械设备安装调试
软件团队经理,对软件功能,进度和人员安排负责
软件团队Leader(偏技术),对软件功能需求和技术实施负责,也负责和硬件集成测试调试

一开始,现场只有2~4名软件人员,大家对自己需要负责的模块非常清楚,目标非常明确,可以说是斗志昂扬,有问题就上手找原因和方案。每天都主动加班,基本每天都自觉上班10个小时,没有怨言,出现了高效敏捷团队的迹象。现场没有Leader,只有项目经理(产品经理)。
项目进入的中期,越来越多的软件成员加入到项目中,每个人分工开始细化。但是,项目的问题愈来愈多,而且效率越来越低,并没有想象中的人员增加,加速整个项目的效果,发生了什么事情?
软件团队的Leader不在现场,而是一个远程国外的Leader,偶尔来现场,凝聚力可想而知。因为缺少对现场情况的把控,加上自己Lead这样一个团队的意愿不高,导致工作分配和进度没有把控住。所以就出现了大家只关注自己的问题,和自己没有关系的坚决不碰,因为大家都觉得自己只是一个工程师,这些协调的事情应该等待Leader来统筹。而对于进度,自己做完的任务,反正没人跟踪,“滑水”在所难免。但凡有积极性的人主动领活,下次再有未认领的任务,项目经理只能出面直接分给积极性高的。这个人因为接触过这个模块,所以以后这个模块的任务就会更多得给他。后果就是越积极的人,最后工作越多。后面大家学精了,什么事情躺平就是,千万不要积极,等着派活就好。派多了也不要积极去做,做得越快,新活就会流到他的手上。人性的懒惰表露无疑,难道这是大家的错?
这样的项目,很难想象它能有效率。其中的项目管理也没有任何日程安排,基本都是今天什么问题,明天解决什么问题,完全没有长期的规划,团队成员之间,也不知道自己往什么地方走,只能走一步算一步。而派活的事情,没有远程Leader,也没有指定现场的Leader,技术团队也是分割出明确的地盘,跨领域的问题,爱找谁找谁。

针对这种,对整个团队调整如下:
1. 远程Leader砍掉,在现场找一个Leader,这个Leader需要有影响力,需要懂软件开发流程和能够评估工作量,需要对业务有所了解。
2. Leader不要做开发,对于收到的问题或变更,找到对应可以做的人,评估方案和预估工作量,并对进度做安排和跟踪
3. 每天上午和下午例会15分钟。这个时间绝不能超,如果内容拖拉大家会因此产生反感,心不在焉,效果急剧下降。可以把详细内容放到会后单独找对应人员了解和安排。如果任务遇到问题,临时找不到方法,pass,会后再详细了解,并指定应对方案,是加多时间,还是修改方案,还是另外加人。
4. 对于新功能,一定要找到产品经理或客户了解需求,必要的时候叫上开发人员一起了解。对于优先级比较低的问题或功能,可以放到一个池子里,等后续有多余人力再做。
5. 每个人的任务,工作量,难度系数,完成及时性,bug紧急性,修复情况,bug造成的影响等信息需要量化,后续提供给实施人员直线经理用于KPI考评参考
以上调整的特点是增加的量化考评机制,以结果为导向,透明公平。当然,如果不想把整个团队弄得怎么“卷”,我们也可以不全部透明公开这些数据,而只是告诉大家有对应的考评机制。对于优秀的项目成员,会给与本项目经理特意颁发的感谢奖状。
以上方法实施的时候,也要考虑平衡,人不是机器,也需要融入一些情感。比如有些人抢活不敢太积极,比较内向,有些人”吃像“比较难看。作为项目经理,需要适当派活给那些抢活不积极,但是效率还可以的人员,也应该定期听取成员的意见,看他们做某些模块的意愿,对于需要帮助的成员,也要定期找其他成员做培训和指导(这些指导也应该要记录到任务里,算KPI)。
软件项目管理的方法理论非常多,但是无非都是权衡预算进度和质量, 以目标为导向。还是要在工作中不断使用和调整,根据实际情况把各方法融会贯通,结合使用,甚至和跨领域的知识结合。这里强调的是,人永远应该是项目首要关注的,人心涣散,项目就很难管了。整个项目运作过程中,一定要考虑每个成员的感受,如果可以,还要考虑他们每个人的发展。在同一个项目,就是“一家人”,而不能真的把他们当成资源看待,耗尽了事。对于公司,对于你的人际和个人心历都是很大的损失。如果考虑到每个成员的成功,项目一般很难失败,即使项目失败,你也将收获满满。

 

欢迎留言,向大家学习!

 

与一个混乱千万级软件项目相似的内容:

一个混乱千万级软件项目

背景:公司接到一个亿级的项目,软件大概占到1/4的比例,整个项目包含了硬件和软件团队。软件团队是要实是一个软件产品,让其控制各种硬件设备做自动化运作,并打通上下游系统的数据。软件同时统计分析(包括机器学习和AI) 整个项目设备的运作和任务执行情况,服务于后续运营优化。 项目成员结构:大项目经理,对这

上周热点回顾(9.25-10.1)

热点随笔: · 在小公司编程是一种什么样的体验? (公众号_陶朱公Boy)· 一个混乱千万级软件项目 (烂人)· 《优化接口设计的思路》系列:第四篇—接口的权限控制 (sum墨)· C#开源且免费的Windows桌面快速预览神器 - QuickLook (追逐时光者)· .NET开发工作效率提升利器

PPT 配色方法

https://www.bilibili.com/video/BV1ha411g7f5/?p=10 https://dribbble.com/ 问题1:配色太多,主题色混乱 一个主色,两辅色 问题2:随意配色 问题3:颜色搭配没有重点 我们该如何配色 画四个圆,取四个色,用来做后面的配色 图片取色

需求管理秘籍:从混乱到有序,让你的项目高效运转

引言 在项目管理的广阔天地中,需求管理犹如一颗璀璨的明珠,它不仅是项目启动的基石,更是项目成功的关键引擎。从最初的需求收集、分析到后期的变更管理,需求管理的每一步都深刻影响着项目的进展和结果。 需求管理是项目目标和方向的指南针 一个明确、具体的需求能够清晰地描绘出项目的轮廓,为团队提供明确的工作方向

聊聊Hugging Face

## 概述 HuggingFace是一个开源社区,提供了开源的AI研发框架、工具集、可在线加载的数据集仓库和预训练模型仓库。HuggingFace提出了一套可以依照的标准研发流程,按照该框架实施工程,能够在一定程度上规避开发混乱、开发人员水平不一致的问题,降低了项目实施的风险及项目和研发人员的耦合度

使用 Python 旋转PDF页面、或调整PDF页面顺序

在将纸质文档扫描成PDF电子文档时,有时可能会出现页面方向翻转或者页面顺序混乱的情况。为了确保更好地浏览和查看PDF文件,本文将分享一个使用Python来旋转PDF页面或者调整PDF页面顺序的解决方案。 要实现Python对PDF页面进行设置,我们需要用到第三方库 Spire.PDF for Pyt

[转帖]shell脚本实现文本内容比较交互程序

背景介绍 脚本基于Comm命令进行功能封装,考虑到命令执行前需要对文本进行排序,并且在多文件需要比较内容时可能会导致多个文本混乱,因此使用Shell封装成了一个交互式程序,快速对文件内容进行判断和输出想要的内容内容结果。 脚本介绍 文件内容校验(是否一致内容)定制化输出文本(1.仅文本单独出现内容;

[转帖]5、docker 访问仓库

很早之前看的文章,进行了简单的排版整理,找不到源地址了,如有侵权,请联系删除。 仓库(Repository)是集中存放镜像的地方。 一个容易混淆的概念是注册服务器(Registry)。实际上注册服务器是管理仓库的具体服务器,每个服务器上可以有多个仓库,而每个仓库下面有多个镜像。从这方面来说,仓库可以

聊聊FASTER和进程内混合缓存

最近有一个朋友问我这样一个问题: 我的业务依赖一些数据,因为数据库访问慢,我把它放在Redis里面,不过还是太慢了,有什么其它的方案吗? 其实这个问题比较简单的是吧?Redis其实属于网络存储,我对照下面的这个表格,可以很容易的得出结论,既然网络存储的速度慢,那我们就可以使用内存RAM存储,把放Re

记一次ThreadLocal中的用户信息混乱问题

记录一次开发中遇到的关于 ThreadLocal 问题,场景是数据库表中的操作人总是无缘无故的被更改,排查了几遍代码才发现是 ThreadLocal 没有及时清理导致的。