10x程序员工作法
郑晔
火币网首席架构师,前ThoughtWorks首席咨询师 ,TGO鲲鹏会会员
立即订阅
7927 人已学习
课程目录
已完结 56 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 程序员解决的问题,大多不是程序问题
免费
思考框架 (1讲)
01 | 10x程序员是如何思考的?
以终为始 (11讲)
02 | 以终为始:如何让你的努力不白费?
03 | DoD的价值:你完成了工作,为什么他们还不满意?
04 | 接到需求任务,你要先做哪件事?
05 | 持续集成:集成本身就是写代码的一个环节
06 | 精益创业:产品经理不靠谱,你该怎么办?
07 | 解决了很多技术问题,为什么你依然在“坑”里?
08 | 为什么说做事之前要先进行推演?
09 | 你的工作可以用数字衡量吗?
10 | 迭代0: 启动开发之前,你应该准备什么?
答疑解惑 | 如何管理你的上级?
划重点 | 关于“以终为始”,你要记住的9句话
任务分解 (11讲)
11 | 向埃隆·马斯克学习任务分解
12 | 测试也是程序员的事吗?
13 | 先写测试,就是测试驱动开发吗?
14 | 大师级程序员的工作秘笈
15 | 一起练习:手把手带你分解任务
16 | 为什么你的测试不够好?
17 | 程序员也可以“砍”需求吗?
18 | 需求管理:太多人给你安排任务,怎么办?
19 | 如何用最小的代价做产品?
答疑解惑 | 如何分解一个你不了解的技术任务?
划重点 | 关于“任务分解”,你要重点掌握哪些事?
沟通反馈 (12讲)
20 | 为什么世界和你的理解不一样
21 | 你的代码为谁而写?
22 | 轻量级沟通:你总是在开会吗?
23 | 可视化:一种更为直观的沟通方式
24 | 快速反馈:为什么你们公司总是做不好持续集成?
25 | 开发中的问题一再出现,应该怎么办?
26 | 作为程序员,你也应该聆听用户声音
用户故事 | 站在前人的肩膀上,领取属于你的高效工作秘籍
27 | 尽早暴露问题: 为什么被指责的总是你?
28 | 结构化:写文档也是一种学习方式
答疑解惑 | 持续集成,一条贯穿诸多实践的主线
划重点 | 一次关于“沟通反馈”主题内容的复盘
自动化 (12讲)
加餐 | 你真的了解重构吗?
29 | “懒惰”应该是所有程序员的骄傲
30 | 一个好的项目自动化应该是什么样子的?
31 | 程序员怎么学习运维知识?
32 | 持续交付:有持续集成就够了吗?
33 | 如何做好验收测试?
34 | 你的代码是怎么变混乱的?
35 | 总是在说MVC分层架构,但你真的理解分层吗?
36 | 为什么总有人觉得5万块钱可以做一个淘宝?
37 | 先做好DDD再谈微服务吧,那只是一种部署形式
答疑解惑 | 持续集成、持续交付,然后呢?
划重点 | “自动化”主题的重点内容回顾汇总
综合运用 (7讲)
38 | 新入职一家公司,怎么快速进入工作状态?
39 | 面对遗留系统,你应该这样做
40 | 我们应该如何保持竞争力?
答疑解惑 | 如何在实际工作中推行新观念?
划重点 | “综合运用”主题内容的全盘回顾
总复习 | 重新审视“最佳实践”
总复习 | 重新来“看书”
结束语 (1讲)
结束语 | 少做事,才能更有效地工作
10x程序员工作法
登录|注册

08 | 为什么说做事之前要先进行推演?

郑晔 2019-01-11
经过前面的学习,想必你已经对“以终为始”这个原则有了自己的理解。你知道接到一个任务后,要做的不是立即埋头苦干,而是要学会思考,找出真正的目标。那目标明确之后,我们是不是就可以马上开始执行了呢?
先不着急给出你的答案,今天的内容从一个技术任务开始。

一个技术任务

你现在在一家发展还不错的公司工作。随着业务的不断发展,原来采用的关系型数据库越发无法满足快速的变化。于是,项目负责人派你去做个技术选型,把一部分业务迁移到更合适的存储方式上。
经过认真的调研和思考,你给负责人提出了自己的建议,“我们选择 MongoDB。”出于对你的信任,负责人无条件地同意了你的建议,你获得了很大的成就感。
在你的喜悦尚未消退时,负责人进一步对你委以重任,让你来出个替代计划。替代计划?你有些不相信自己的耳朵,嘴里嘟囔着:“把现在存到数据库的内容写到 MongoDB 不就成了,我就一个表一个表地替换。难道我还要把哪天替换哪个表列出来吗?”
刚刚还对你欣赏有加的负责人,脸色一下子沉了下来。“只有表改写吗?”他问你。你一脸懵地看着他,心里想,“不然呢?”
“上线计划呢?”负责人问。
“我还一行代码都没写呢?”你很无辜地看着负责人。
“我知道你没写代码,我们就假设代码已经写好了,看看上线是怎样一个过程。”
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《10x程序员工作法》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(25)

  • ZackZzzzzz
    项目上线之前,一般都会有一个launch plan, 数据库迁移这种项目,不去考虑上线回滚我认为是设计上的缺失。我们公司的launch plan一般是写成一步一步的checklist, 在上线之前会做同伴审查

    作者回复: 做得很棒,值得分享!

    2019-01-11
    11
  • Scott
    我觉得领导说先跑通再说和事前推演是不矛盾的,很多时候,我们需要一个poc来证明这个项目是可行的,这其实也是事前推演的一部分。

    上线要事无巨细的检查推演,和快速跑通poc不矛盾,当然现实世界是,大家就急着把poc当正式产品上线了,这是无数个悲剧故事的序章。

    作者回复: 对,能分清楚PoC和产品是两个不同东西的团队,都是好团队。PoC就是该丢弃的,包括代码,因为它的代码质量是不合格的。

    2019-01-12
    7
  • 休息一下马上回来
    上线前,哪些机器什么配置应该有一个预期甚至提前准备好

    作者回复: 很好的补充

    2019-01-11
    7
  • adang
    想清楚了才能写清楚,这是我在编程工作非常认可的一句话,并且我也认为它是区分合格与不合格开发工程师的重要区别。软件开发过程中,最常见的例子就是拿到需求后不管三七二十一,上来就开始撸代码,但最后往往返工不断,质量问题层出不穷,而且加班没完没了,这里面一个根本原因就是没有系统地想清楚,但很多人都觉得前期澄清需求、分析设计是浪费时间,只有编码才是真正的创造价值,这就是差距。
    谢谢老师今天的分享,深有同感。
    2019-01-11
    5
  • Alexdown
    非常喜欢老师这种对话式职场故事风格!

    曾经对领导问东问西,他说:“先把眼前事做好,先跑通再说……”,听完后我就吭哧吭哧地开始实现,想要跑通后做出来看看,然后各种不对。

    现在想想我是会错意了,领导说的是不要过度设计,只要满足当前需求就好,不要在脑中脑补未来可能出现的高并发大流量的需求。而事前分析即事前推演该做还得做,为了“满足当前需求”而做!

    作者回复: 分析和设计是少不了的,不发散也是重要的。

    2019-01-11
    4
  • 西西弗与卡夫卡
    推演可以发现达成目标会涉及到哪些部门、哪些利益相关者,需要哪些资源,以及他们需要何时怎样的配合。
    2019-01-11
    3
  • helloworld
    好文!在开始之前先做推演的工作方式非常好,可以防止工作疏漏更重要的是可以提前知道预先设定的方案到底可不可行

    作者回复: 把事情做在前面,减少后续的忙碌。

    2019-02-20
    1
  • 大彬
    我们工作、生活都是有目标的,达到目标有2种方法:A. 先规划好到目标的路线,一步一步往下做。B. 没有规划完整路线,而是依据当前的情况去做。 A方案也许会遇到未曾预料的问题,但总体比较顺畅,能达成目标。B方案一路披荆斩棘,累死累活,结果可能还不能及时达成目标。想想工作中没做好的任务,是不是前期没有好好准备?

    作者回复: 一个正常的做法应该是,有方法按照方法做,没方法再想办法。可是,很多人把所有事情都做成了现想办法,那就会很辛苦。这种做法就像低等生物一样,完全靠外界刺激。

    2019-01-15
    1
  • 喜悦
    今日概念:
    1. 最后一公里:最后一公里就是离”终“最近的那一部分;
    2. 个人回顾:也就是复盘,复盘是积累和反思;

    今日总结:
    重视最后一公里可以跟细节的考虑我们要得“终”,面向“终”分析业务过程,会更清楚的知道要做什么;
    2019-01-13
    1
  • MarksGui
    最近一次上线,开发测试运行良好!生产环境上去就发现速度很慢,由于表数据太多了。事前推演,站在最后一公里考虑问题。宁愿事前辛苦,也不要事后遭罪。
    2019-01-13
    1
  • null
    可是小公司经常遇到的问题是,老板随时都在变需求,每次需求又很急,我们给的方案建议他不采纳,说我们不了解行业,但是他又经常变

    作者回复: 别急,答疑我详细回答了和上级的关系,如果还有问题,我们再来讨论。

    2019-01-12
    1
  • 公号-代码荣耀
    以终为始,通往目标的要事第一。

    作者回复: 什么是要事,我们在 任务分解 模块聊。

    2019-01-12
    1
  • 虢国技匠
    打卡
    2019-01-11
    1
  • oddrock
    主题:做事之前的推演
    关键词:第一次创造,最后一公里
    2019-01-11
    1
  • 丁丁历险记
    哈哈,我就是那位负责人。
    2019-10-31
  • 陈斯佳
    以终为始不是目的,而是方法。真正的目的用以终为始的方法搭建走向目标的一步步路径。
    2019-07-16
  • 春之绿野
    推演,这可能是我年度学到的最重要的一个概念吧,虽然以前也模模糊糊听说过这个词,但总觉得跟自己没啥关系,开会的时候大家讨论的很热烈,而我总是提不出什么有建设性的问题和建议,这个一直很困扰我,现在来看就是这种推演的能力不足,做事情只会走到哪算到哪。昨天开会前尝试了下推演,真的有很多发现,比如环境是瓶颈,这边的环境我不太了解,好像是因为要连很多硬件设备所以很有限,如果只有一套设备的话,自动化是否值得做。而且推演后也会对问题认识的更清晰更有把握了。以后一定多练习推演,第一次创造。
    2019-05-18
  • YiCo
    任务分解,提前推演
    2019-03-13
  • YiCo
    任务分解,提前推演
    2019-03-13
  • 苦行僧
    都是打实话为什么之前自己体会不到 这大概就是思维盲区的困惑 老师的文章 点醒梦中人

    作者回复: 有个说法叫盲维,缺少了一个维度,即便简单,你依然看不到。

    2019-03-07
收起评论
25
返回
顶部