10x 程序员工作法
郑晔
开源项目 Moco 作者
53432 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 63 讲
思考框架 (1讲)
10x 程序员工作法
15
15
1.0x
00:00/00:00
登录|注册

27 | 尽早暴露问题: 为什么被指责的总是你?

事情往前做,尽早暴露问题的重要性
工作透明化的挑战
暴露问题的重要性
配置文件缺失重要参数的处理
参数校验的重要性
老赵的选择
小李发现问题后的选择
总结时刻
克服心理障碍
Fail Fast
问题出在哪?
为什么你的开发工作很辛苦,依然会被指责?

该思维导图由 AI 生成,仅供参考

你好,我是郑晔。
今天我准备讨论一个经常会让很多程序员郁闷的事情,为什么你已经工作得很辛苦了,但依然会被指责。在讨论这个问题之前,我们先来讲一个小故事。
程序员小李这天接到了一个新的任务。系统要做性能提升,原先所有的订单都要下到数据库里,由于后来有很多订单都撤了,反复操作数据库,对真正成交过程的性能造成了影响。所以,技术负责人老赵决定把订单先放到缓存里。
这就会牵扯到一个技术选型的问题,于是,老赵找了几个可以用作缓存的中间件。为了给大家一个交代,老赵决定让小李给这几个中间件做一个测试,给出测试结果,让大家一起评估。小李高兴了,做这种技术任务最开心,可以玩新东西了。
老赵问他:“多长时间可以搞定?”
小李说:“一个星期吧!”
老赵也很爽快,“一个星期就一个星期。不过,我得提个要求,不能是纯测中间件,得带着业务跑。”
“没问题。”小李一口答应下来。老赵怕小李做多了,还特意嘱咐他,只测最简单的下单撤单环节就好。
等真的开始动手做了,小李发现,带着业务跑没那么容易,因为原来的代码耦合度太高,想把新的中间件加进去,要先把下单和撤单环节隔离开来。而这两个操作遍布在很多地方,需要先做一些调整。
于是,小李只好开始不分白天黑夜地干起来。随着工作的深入,小李越发觉得这个活是个无底洞,因为时间已经过半了,他的代码还没调整完。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

程序员在工作中遇到困难时,及时暴露问题是解决困难的最佳方式。本文以程序员小李在工作中遇到的问题为例,阐述了他在面临技术难题时选择继续埋头苦干而不是及时寻求帮助的问题。作者强调了“Fail Fast”原则,强调了在面对问题时及时暴露问题的重要性。文章通过实际案例和技术原则,向读者传达了在工作中遇到问题时应该如何处理,以及如何避免技术困难带来的风险。文章还提到了克服心理障碍,及时暴露问题的重要性,以及在工作中透明化自己的工作,让别人了解自己的工作进展和想法。总结时刻强调了把事情往前做,尽早暴露问题的重要性,以及在写程序中体现的Fail Fast原则。最后,鼓励读者回想遵循这样的工作原则能够规避哪些错误,并分享给朋友。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《10x 程序员工作法》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(32)

  • 最新
  • 精选
  • helloworld
    程序员通常都有这种缺点:遇到自己不会的技术后,碍于面子,打心眼里不愿意求助别人,更不想把这种状态让领导知道,因为自认为这是一种低能的表现,导致最后被动的被别人发现。提早的主动暴露问题,确实能规避很多问题,让项目朝良性发展方向,但是这是有前提的,除非你的老板是个开明的人,否则你主动暴露问题,不开明的老板就认为你能力欠缺,最终的绩效评估受伤的还是你自己啊……

    作者回复: 糊涂的老板还伺候啥劲。

    2019-04-27
    3
    36
  • 布衣骇客
    突然想起之前做过一个项目,经理把模块功能都分清楚了,把有联系功能的人分租2-5人一组。每个组都有一个或两个大牛,因为项目比较紧,项目经理说的最多的句话就是及时沟通,及时反馈,及时解决。在时间维度就有很好的把握,从项目立项之初,也是按老师递推演进的方式,计划SIT,UAT,灰度发布等时间结点按照倒推的方式进行,也给项目重要结点预留时间,最后结果是大家基本很少加班,验收没什么问题,还给我们多放几天假等等。那个时候我就觉得在这个项目经理下做事最有效率,事情安排妥当,把可能会遇到事情,做一部分预知,对于无法预知的也能让人尽早提出来,及时解决

    作者回复: 好的项目都是类似的,糟糕的项目各有各的不幸。

    2019-03-06
    31
  • 西西弗与卡夫卡
    及早暴露问题其实是反人性的,因为意味着要向领导或众人展示自己的无知。回顾过往某个项目的时候,发现自己其实在过程中已经意识到存在问题,但因此要暂停项目、产生更多成本,就会下意识安慰自己说,其实问题没那么严重,就这么来吧,问题会解决的。现在想想,这种心态真是要不得。及早承认问题,袒露自己的不足,并积极寻找解决方案,才是成熟的标志吧

    作者回复: 反人性,有点说重了,不理性更恰当。理性一点的话,我们就会发现,在事前做其实成本反而是低的。

    2019-03-06
    2
    25
  • zwfec
    我的管理方法是:一个问题解决时间超一个小时,还没思路的话,一定要去寻找帮助,聊一聊,团队成员必须遵守这个纪律

    作者回复: 这是很好的做法。

    2019-06-11
    3
    16
  • David Mao
    在工作中经常会遇到这样的人,尤其是新人。按照自己的思路做了好久,也没把事情搞定。研发里的敏捷开发,每日展会,快速反馈,快速交付和这个有异曲同工之妙。

    作者回复: 对,是这样的。

    2019-03-06
    16
  • Xunqf
    Fail Fast,提前暴露问题,我写代码为了保证不崩溃,经常会兼容各种奇葩问题,或者给个默认值,听完这一讲如梦方醒啊!

    作者回复: 以后别给自己挖坑了

    2019-03-08
    10
  • kevin
    之前有个习惯喜欢给接口参数搞个什么默认值,这样可以支撑更多的不同情况,但是忘记思考这个参数到底是不是一个重要的参数,如果是就要尽早暴露出去

    作者回复: 补充了一点缺失,就可以上升一个台阶了。

    2019-04-10
    8
  • 行与修
    我的做法是让程序员做之前先自述流程和思路,然后分解任务尽可能细,我可以估摸着后面可能会出问题的点,他不说我可以提前问,但有人就是细不了,那我会要求他每天提交代码,这样我的每天的事会多。还有一种是在任务分解和预估时间有的人总是过于乐观,以致我都不太相信,但又想看看这次是不是真有惊喜,有点矛盾😂我想问问老师我的做法可以有啥调整改进,或者有别的建议,毕竟现状我也有些无奈,自我感觉也并不轻松~

    作者回复: 你做得很好,执行之后再拿结果和小伙伴们对一下,让他们知道自己的差距在哪里,有意识改进就更好了,所谓复盘。

    2019-03-08
    8
  • 捞鱼的搬砖奇
    做需求流程没搞清就动手做,写到出问题的地方卡住了。一直卡在谁也不告诉,知道被问起进展才知道厌恶了进度。

    作者回复: 我隔着屏幕都能听见你的一声叹息。

    2019-03-06
    8
  • Geek8815
    有的时候自己发现了问题,因为害怕受到责罚,偷偷隐瞒,随着影响的范围越来越大,心理压力也越来越大,生怕有暴雷的那一天,发现问题还是应该尽早暴露。

    作者回复: 早发现问题,早解决问题。

    2020-12-15
    5
收起评论
显示
设置
留言
32
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部