技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 奋斗 --> 程序员的五个阶段

程序员的五个阶段

浏览:3493次  出处信息

   第一阶段:编码机器

   这是最低级的阶段,程序员拿到详细设计文档,上面连许多方法接口都定义好了。重构一些代码,写一些实现,调用一些既定的API,然后花许多时间在各种各样的场景测试上面。从做的工作上看,这都不能算程序员,最多,只是编码技巧卓越的码农而已。因为它几乎扼杀了一切创造力,但是这很常见,比如在一些对日外包公司,就是如此。

   第二阶段:独立的实现者

   程序员得到的只是粗略的设计文档,也许注明了外部接口的清单,还有框架和基础设施的API,需求已经澄清清楚,接下去要做的就是发挥聪明才智把软件实现设计好,把代码写好,测试通过。这项工作可以在安静和独立的环境中完成,因为没有什么是不够明确的,那些本不清楚的部分,项目经理、架构师和产品经理已经搞定了。这样的环境下可以诞生许许多多OO设计优秀、代码清晰简洁的程序员,但是这始终只是在做一个残缺的项目而已。很多程序员新手都是从这个阶段开始的,但是程序员如果只会代码层面的设计、编码和测试,并不能算一个完整的程序员,也许连一半都算不上。

   第三阶段:项目沟通者和管控者

   程序员要和需求工程师,甚至客户澄清需求,分析可行性;需要自行分析设计项目中的技术难点;参与决定和管理迭代周期和计划表;组织和参与项目组内运作跟踪会议。编码以外的事情会占用一些时间,这些时间大多来自沟通的成本。如果说,前两个阶段还未能明显看出沟通的重要性的话,那么到这个阶段,一个不能良好沟通的程序员,将成为项目组运转的瓶颈。国内至少有一半的软件公司的程序员做项目应该处于这个阶段。

   第四阶段:从做项目到做产品

   从做项目跨越到做产品,想想容易,做起来很困难。做项目需要更多倾听用户需求,但是做产品更注重思考,思考用户的痛点和产品的定位远重于倾听用户表述。从项目周期上看,做项目关注在拿到需求并实现交付的过程,但是做产品需要把更多精力花在产品定义、设计,还有长时间的产品维护上。做产品的程序员,必须要和客户沟通,必须要维护自己开发的软件,获知用户和市场的反馈,如此才能体会到什么功能才是迫切需要的,该怎样把技术、业务和实际产品的实现结合起来。

   第五阶段:产品成长的见证人

   也许很少人能够参与从零开始,经过创意、市场分析到产品设计的过程,在明确要做什么之前有大量的时间会花在产品探索性的工作上面。也许会做很多的产品原型,也许某些版本和功能在A/B测试之后就被放弃了,更有些产品在流传开来以前就销声匿迹了,或者很快就死在抄袭和山寨手里。产品的更迭和换代总是千辛万苦,而看得到的部分往往如此简单,但是谁知道它的历史有多曲折呢?

建议继续学习:

  1. 程序员技术练级攻略    (阅读:31905)
  2. 再次写给我们这些浮躁的程序员    (阅读:15703)
  3. 给程序员新手的一些建议    (阅读:11956)
  4. 给年轻程序员的建议    (阅读:9909)
  5. 在西方的程序员眼里,东方的程序员是什么样的?    (阅读:8826)
  6. 做个懂产品的程序员    (阅读:8736)
  7. 每个程序员都应该有张木桌    (阅读:8035)
  8. 再谈“我是怎么招聘程序员的”    (阅读:7399)
  9. 如何在面试中发现优秀程序员    (阅读:7113)
  10. 架构师给程序员的一封信    (阅读:6790)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:加州求职记 >>
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1