程序员该如何确定任务(项目)的排期?

未经作者(微信ID:Byte-Flow)允许,禁止转载

所谓定任务的排期其实就是预估完成一个任务所需要的时间,简而言之就是给你一个活,你预估下需要多长时间可以搞定。排期这个东西,一般是老板比较喜欢的,通过一张表格便可以对每个人的进度和安排一目了然,项目经理也能通过它更好地对项目进行把控。

定任务的排期往往还会涉及自我内心的博弈,什么博弈呢?

比如你排期估的太长了,心里可能会犯嘀咕:时间估长了,领导和同事会不会觉得我能力不行,这样会不会不太好?

又比如你为了证明自己能力牛逼吧,把时间估的比正常时间还短,这个时候心里又会犯嘀咕:估时间那么短,到时候完不成了怎么办,领导和同事会不会觉得我能力不行?就算可以按时完成,搞得自己压力很大、天天加班也不好吧?

经过这样的博弈,最后定下来的排期一般不会太离谱。据我观察大部分同学的任务一般都能在排期结束之前搞定,在时间上给自己留了一点余量。

据一些初入职的小伙伴反馈,他们普遍讨厌排期这个东西,自己定不好,然后 PM(产品经理) 还不断催促,还以为是 PM 在为难他们。

那么,该如何定任务(项目)的排期?

非自主排期,就是上面定一个期限,必须在这个期限内完成任务,排期要基于这个期限确定。打个比方,某某公司要在 3 个月之内完成某个产品,那么留给市场调研,设计,研发和测试的时间基本上都是固定的,最后某项任务分配给你的时间也是固定的。

非自主排期说白了就是上面直接给你分派任务,限期完成。这种情况一般比较紧急,对于研发人员来说压力比较大,可能需要经常加班。

那么,这个时候你觉得分配给你的任务限期搞不定怎么办?首先要冷静下来,分析一下可能会遇到的难点,及时咨询周围的同事(绝大部分问题这个阶段可以解决),如果周围的同事也搞不定,那就需要反馈给 leader 。如果 leader 也搞不定,就由 leader 来协调更高层面的资源帮你解决问题。

这种情况,如果你没能及时向上反馈,那么项目 delay 的责任就在你身上了。

自主排期,就是自己定时间完成一项任务,期限没有强制性的要求。但是很多人对于自主排期反而拿不定主意,这就是对自己的能力估计不足。自主排期也分2种情况,一种是自己比较熟悉的任务(属于重复劳动),这种不用说了,就参考之前任务的进度确定排期;

另一种是完成任务需要用到新技术(涉及新的领域、新的技术栈),这个时候先别着急定排期,先花时间对任务所涉及的技术栈(新技术)做下调研,咨询一下相关同事(参考一下别人的排期),看看同事能不能分享一些现成的方案,再结合自己的学习能力做下评估。

这个前期的调研很重要,很多新同学一听会用到新技术,马上就闷头兴奋地搞起来,最后勉强搞成了,发现有一堆问题,弄得自己灰头土脸。这个时候才想起来去找外援,结果发现人家已经有一套现成的"轮子",该踩的坑已经帮你踩过了。

自己定的排期,如果在排期内搞不定任务怎么办?同样,要及时反馈,主动去协调资源解决问题。如果 PM 增加或者变更了需求,带来了工作量的增加,这个时候要主动提出来,要求增加排期。

非紧急的情况下,建议排期要留有一定的弹性,给自己留一些优化和学习的时间,这是双赢。

技术交流

技术交流/职场困惑解答,可以添加我的微信:Byte-Flow

相关推荐
郝学胜-神的一滴17 小时前
深入理解QFlags:Qt中的位标志管理工具
开发语言·c++·qt·程序人生
郝学胜-神的一滴2 天前
基于C++的词法分析器:使用正则表达式的实现
开发语言·c++·程序人生·正则表达式·stl
程序员曦曦2 天前
10:00开始面试,10:06就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
郝学胜-神的一滴5 天前
C++中的`auto`与`std::any`:功能、区别与选择建议
开发语言·c++·程序人生·算法
草莓熊Lotso5 天前
《吃透 C++ 类和对象(中):构造函数与析构函数的核心逻辑》
c++·经验分享·笔记·程序人生·其他
碎像6 天前
uni-app实战教程 从0到1开发 画图软件 (学会画图)
前端·javascript·css·程序人生·uni-app
懂得节能嘛.7 天前
【GitHub小娱乐】GitHub个人主页ProFile美化
程序人生·github·娱乐
郝学胜-神的一滴7 天前
游戏引擎(Unreal Engine、Unity、Godot等)大对比:选择最适合你的工具
程序人生·unity·游戏引擎·godot·虚幻·unreal engine
爱转角码农8 天前
平时测试开发中积累并应用的提示词分享
功能测试·测试工具·程序人生·自动化
是乐谷9 天前
饿了么招java开发咯
java·开发语言·人工智能·程序人生·面试·职场和发展