程序员职业生涯规划 之最终篇

转载 2015年11月17日 23:21:41

       

程序员职业生涯规划 之最终篇

 之前我们分析了程序员职业生涯中可以选择的几个发展方向:项目经理、系统分析员、产品经理、软件测试工程师和系统架构师,当我们发现未来充满了这么多种可能后,又重新对程序员产生了梦想,但我相信好多人心里还是在打鼓,那就是“怎么才能走到我们梦想的职位?”本文会对以往的分析进行总结并提供一些重要的职业信息,值得思考一下,以便有所准备。

      我们都知道程序员可以向经理或团队领导发展。但很多程序员不明白经理这个职位的期望和工作要求。当然,我们都有经理,但怎样才能成为经理呢?要具备什么素质?中层管理者和一个高级程序员之间有什么区别?让我们来看看一个初级程序员成长到顶级CTO的潜在职业之路。

      很多程序员都会直观的从收入上来观察他们的职业之路,薪资代表着成就和社会对于个人的满足,下面一张图表示的是程序员的各个职位的平均工资。注意在垂直水平上,一些人可能拿着两倍或者三倍于别人的工资(像是银行,贸易等行业)。所以这些数字仅代表了一个平均水平,并不全面。

一、初级程序员

(1)0-3年工作经验(一般是刚从大学毕业),会写简单的脚本

(2)初步了解整个应用程序的生命周期

(3)初步了解数据库和应用程序的服务(队列,缓存等)

(4)不需了解复杂的应用中的每一个部分

当你刚刚踏入程序员的行列中来的时候,可能会感到畏缩和烦恼。会时常感觉到自己资历尚浅,惊讶为什么别人可以写出这么大而复杂的程序。看看其他的高级程序员,你觉得自己做着跟他们相同的工作。但是区别就在于初级程序员缺乏经验。即使是学习最快、最聪明的初级程序员,也没有接触到足够多的代码和边界情况,以胜任高级程序员的工作。在软件开发方面, 软件设计模式也是一种智慧。虽然在这方面可以阅读相关的书籍,但还是需要写足够多的代码,将错误尽可能地暴漏出来,真正理解软件设计模式的价值。

二、高级程序员

  • 至少四年工作经验
  • 能写较复杂的程序
  • 深入理解整个应用程序的生命周期
  • 掌握数据库和应用服务(队列,缓存等)
  • 要了解应用程序的每一个方面

称职的高级程序员非常擅长构建大型程序。担任高级程序员占了程序员生涯的大部分。事实上,如果你不喜欢管理的工作而仅仅喜欢写代码,可以一直做一个高级程序员。高级程序员可以作为一个过渡,一旦掌握了足够的技术,那么很可能就有能力担任一家技术创业公司的创始人或者CTO了。作为一个创始人或者CTO,写代码的就会就少了,更多的是需要处理事务的技巧。但是深入理解技术非常有必要,是做好这份工作必不可少的部分。

三、团队领导或架构师

(1)七年以上开发经验

(2)掌握高级程序员必备的技术

(3)团队领导:向架构师过渡

(4)架构师:没有更高的技术方面的职位

七年程序员职业生涯已经能够使一个程序员的技术能力足够精进,如果你想从事更具挑战性的职位,那么可以考虑一下做架构师,这是技术方面最顶峰的职位。架构师有时候也写代码,但大多数时间他们在设计复杂的系统,然后交给由初级和高级程序员们组成团队来实现。架构师的工作就是,利用他技术方面的智慧以及多年的经验(学习程序的模式和反模式),来为软件项目创建合适的架构。有新的需求的时候,软件架构师需要对项目选择正确的方向,并估算应用程序的规模。

四、中层领导

  • 通常包含经理和负责人等职位(开发经理,项目经理,产品经理)
  • 做发人员的老板(例如人事工作)
  • 向高级主管汇报工作

管理人员通常向工程师发展。他们的方向很多:如果你喜欢接触开发团队,并对细节感兴趣,那么可以选择产品经理,做你的伙伴们的盟友;如果你对产品特性和增强其性能着迷,那么做一个产品经理是最好的选择。

然而大多数人的选择是开发经理。这是个非常经典的职位,要求平衡项目经理和产品经理的需求和开发团队的性格之间的矛盾。这个职位对人事处理和化解矛盾的技能要求较高,要经常做出退让。

五、高层领导

(1)VP,CTO 或CEO

(2)是中层领导的老板(例如 负责人事)

(3)向另一个高层领导或者董事会报告

高层领导负责管理中层领导。然而经理通常是不需要管理的,他们需要的是指导。中层领导需要知道高层领导的方向并跟进,不会得到非常具体的指示。高层领导的工作是,做重要的决定,并激励工作人员紧跟决策,增加对工作目标的信心。

你在这条路上走得越远,写代码的机会就越少。到达顶峰的时候,做的都是人事方面的工作了。中层领导依然能在核心技术方方面体验到乐趣,但是对于高层领导,就 必须把所有的时间花在人事上:激励员工,领导,指定策略。如果你写代码,也只能是不重要的项目(除非你是比尔盖茨,但大多数人不是比尔,他是个极端的特 例)。

结论

今天,程序员的选择是丰富多彩的。而且对于程序员的职业要求比历史上任何时候都要高。对程序猿来说这是一个好的时代。但是任何时候规划你的职业都不算晚。希望本文能排得上用场,给你一些指导和精神食粮。

讲述IT人的程序人生,IT人心声,职业生涯,职场规划,程序员爱情优美文章155篇

讲述IT人的程序人生,IT人心声,职业生涯,职场规划,程序员爱情优美文章155篇  来自:http://www.ithao123.com/itlife/ 1、程序人生 : 程序,烟,我的人...

话说嵌入式软件工程师的工资待遇

话说嵌入式软件工程师的工资待遇 嵌入式软件工程师 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。...

程序员职业生涯规划 之最终篇

程序员职业生涯规划 之最终篇       之前我们分析了程序员职业生涯中可以选择的几个发展方向:项目经理、系统分析员、产品经理、软件测试工程师和系统架构师,当我们发现未来充满了这么多种可能后,又重新...
  • enzoqin
  • enzoqin
  • 2014年05月25日 16:58
  • 13872

写给程序员的职业生涯规划

原文 http://websbook.com/Program/PHP/xgcxydzysygh_19646.html提示:本文适合有2年及以上工作经验的程序员,对于刚入职或者即将职的程序,建议阅读涂雅...

C++程序员的职业生涯规划

一、C++服务器程序员(流媒体后台,游戏后台,高性能服务器后台)  1.      精通C++,STL,Linux等,熟悉设计模式; 2.      熟练掌握一门脚本语言(Lua, Pyt...

关于PHP程序员技术职业生涯规划

峰哥大神的指导,基础才是最重要的

Java程序员的职业生涯规划建议

java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈...
  • H12KJGJ
  • H12KJGJ
  • 2017年05月18日 19:45
  • 301

关于PHP程序员技术职业生涯规划【转】

最近看到一篇文章,醍醐灌顶。 会技术能实现业务是一方面,单论技术深究起来,细节还有很多地方不扎实,原因何在?读此文有解! 基础不稳,面对技术复杂的系统,更会如同盲人摸象、管中窥豹,只得其门不得其法...
  • ty_hf
  • ty_hf
  • 2017年07月11日 13:35
  • 1588

Java程序员的职业生涯规划建议

第一部分:零基础或基础薄弱的同学 这部分主要适用于尚未做过Java工作的同学,包括一些在校生以及刚准备转行Java的同学。 一、Java基础 首先去找一个Java的基础教程学一下,这...

一个程序员的简洁职业生涯规划

前言 当今社会处在变革的时代,到处充满着激烈的竞争。物竞天择,适者生存,职业活动的竞争也非常突出。要想在这场激烈的竞争中脱颖而出并保持立于不败之地,必须设计好自己的职业生涯规划,这样才能做到心中...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:程序员职业生涯规划 之最终篇
举报原因:
原因补充:

(最多只允许输入30个字)