- 很少的代码编写量,更偏重于编码规范的制定
- 负责评定和管理项目代码
- 对项目的时间,空间和资金成本负责
- 协调处理整个项目的功能
- 协调/掌控全局,但没有必要知道各子功能的内部细节 。
程序员利用专业知识,将现实需求/问题转化为可执行代码,开发人员则需要利用创造性和概念性来保证程序员的节奏一致,为项目争取时间和空间 。这好比一场交响乐音乐会,程序员像演奏者,而开发者像手拿指挥棒的演奏指挥 。3.2 时间范围程序员:
- 任务下达——工作开始时间
- 编码
- 测试
- 调试
- 任务完成——工作结束时间
- 需求谈判——工作开始时间
- 需求分析
- 概要设计
- 解决方案
- 编码实现
- 系统测试
- 系统运维
- 文档编写——工作结束时间
程序员的的工作好比一个400米的接力往返跑比赛,每个程序员只负责其中一段工作,而开发者更像是马拉松长跑比赛,需要从头盯到尾 。

文章插图
3.3 工作能力【程序员和开发者,细品之下见差别】程序员:
- 使用合适的编码指令和算法,编写经过测试且符合标准的有效代码,以完成任务 。
- 发挥自身的创造性和概念性,找到满足客户需求的解决方案,并让程序员能够理解并实现自己的想法 。
- 业务逻辑转化为可执行代码
- 精于某一个或多个编码语言
- 善于使用各类算法解决问题
- 善于对代码进行测试、修改和运维
- 需求分析和沟通
- 资源整合和协调
- 项目管理与跟踪
- 风险评估于把控
通过对程序员和开发者之间的对比,我们发现了两者之间的差异 。简单来说,程序员和开发者之间最本质的区别在于他们的工作范围不同,思考方向不同 。开发人员(技术总监,架构师,设计师,项目经理等)会更多的参与到整个项目当中,并对项目有更深入的了解;而程序员(例如:初/中/高级JAVA程序员或技术专家),他们只参与了项目的特定部分,利用自身的专业知识,解决了某一领域的问题 。回到一开始的那个问题中,开发人员也是程序员,就像美食家也是厨师 。但需要注意的是,开发者可以平滑切换到程序员的角色,但程序员并不一定能切换为开发者的角色 。为什么这样说?道理很简单,美食家可以切换成厨师的角色,自做美味菜肴,但厨师并不一定能够像美食家一样创造新的菜品,并对没事进行品鉴 。同样的,一个技术总监或架构师可以成为一个合格的程序员,去完成编码任务(通常不会这样,杀鸡用牛刀,如果小公司只有一把牛刀,那也没有办法);但一个高级程序员未必能够胜任技术总监或架构师的工作,因为两者要思考的问题是一个父子集合,整体与局部的关系 。
认识到这一点后,如果你是一名IT公司的招聘人员,你应该已经明白,一个编程专家未必是你想要寻求的技术总监或架构师,选择需谨慎,用人有风险;如果你是一个码农,也请认清两者区别,做好职业规划,如果你想往技术总监/架构师方向发展,除了必要的编码能力,你还需加强自身在沟通,表达,整合,探索,创新等方向上的能力,规划需谨慎,光阴去不回 。
推荐阅读
- 做包子发面技巧和配方是什么?
- 桂花花茶如何挑选,如何挑选和保持花草茶的秘诀
- 怎样避免ios开发者账号封禁问题
- 桂花茶属温性还是寒性,桂花茶的功效和作用
- 百结叶和丁香叶的区别,茉莉花的功效与作用
- 连翘茯茶特点,花草茶冲泡方法和饮用注意
- 滁州贡菊和滁菊的区别,贡菊和胎菊哪个更去火
- 花茶熏制方法,甘草山楂茶原料和做法
- 玫瑰花茶的作用和副作用,牛蒡茶的副作用
- 制何首乌和何首乌的区别有哪些
