开发人员需要知道如何做,做什么,和为什么做

你是否工作在这样的一个大公司里——他们工作效率缓慢,会议无穷无尽?你是否有被告诉去完成一个任务,去开发一个API,但你的不知道它会用在哪里,怎么用?你只是按照文档在技术上把它正确的实现?

“如何做”是一个开发人员在团队生活中需要知道的最有价值的信息。但遗憾的是,有些人却认为这是开发人员在项目中唯一要知道的事情。

我们不能这么认为。

如果不知道自己做的究竟是个什么东西,即使是最高效的Ruby on Rails家伙,最熟练的Spring开发人员,或PHP编程者,也不可能做出最有价值的东西。

你们中有多少人,曾经写出了API,但却不能说出它们将被在哪里、如何使用?有多少人曾生气的追问“你们要怎么用它们?我按照规格书里的要求把17个Web Service都开发完了,但现在你们只用了其中的4个。该死。”

我认为,一个开发人员如果想把工作出色的完成,除了要知道“怎么去做”外,还必须知道自己究竟做的是什么。

然而,知道做的是什么和如何做,这还不够。

我深信一个开发人员还需要知道和理解“为什么这样做“。只有当你知道这些后,你才能开发出最有价值的产品。

为什么会有这个项目?为什么需要这样的产品?该死,为什么会有这样的公司?每个人都需要问这样的问题。当知道并理解了“为什么”后,我们才能做出最优的解决方案。

知道了“为什么”,我们才能真正的理解项目的目标,产品的目标和公司的目标。它能激励我们,因为我们看到了大蓝景。

理解了“为什么”会使决策更加准确。

我们要坚持从是什么为什么入手。这样我们就知道如何最好的去做了。

这一招对我很有效。而你又是如何走上成功之路的呢?

[英文原文:Developers should know How, What and Why ]
分享这篇文章:

12 Responses to 开发人员需要知道如何做,做什么,和为什么做

  1. julio says:

    不错,在国内也是这样,在最近的一个合作项目中,就遇到类似的情况,需求分析人员做好需求,开发人员只针对文档来做事情,而他们对于产品的整个概括却很模糊,甚至都不知道自己在做什么,有点可悲o(╯□╰)o

  2. 十分 says:

    这是合适的,为了不会造成大的问题。

  3. xxxing says:

    需求不明确或者变更太快时,问题就来了……
    开发人员和测试人员都应该明确的知道自己做的是什么,为什么要做,这样可以在需求不明确或变更时尽早的发现问题。

  4. tobecto says:

    我觉得这个说的不错,很多时候都是因为不知道为什么要做这个,所以才没有产生更大的动力。

  5. Yonghang Jiang says:

    就好比你让一个人画个火柴棍人的时候,如果你不告诉他画什么,而是机械地告诉他,你需要在某某坐标画个圆,在下面从某坐标到某坐标画条线段……最后往往会变得很有趣。因为我们以为我们完整描述了一个需求的时候,其实是“如果他和我有同样的背景知识,那么他从我说的话中就能完全领会需求”。但很多时候,两人的背景知识很不相同。

  6. kartrina1985  这篇文章
  7. 汇智 says:

    说的挺好的。现在开发的nodejs,http://www.hubwiz.com

  8. wangk 对这篇文章的反应是赞一个
  9. uoou says:

    说的挺好的,最近也在发现了这个一个智能平台API,http://www.tuling123.com/openapi/cloud/proexp.jsp

  10. 皮现磊 对这篇文章的反应是很实用
  11. Asha 对这篇文章的反应是赞一个

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.