程序员职业规划

时间:2024.4.29

很多人刚毕业时充满活力,然而几年的摸爬滚打后,冲劲就会慢慢减弱甚至消失。再加上IT大环境的

起伏不定,一旦无法跟上技术或者行业发展的步伐,便会迷茫。王洪超说:"以前晚上睡觉之前想事情,

经常都不知道自己以后做什么。"

这并不奇怪,工作的新鲜感褪程序员首先需要提高系统设计能力。从20xx年以后,软件业的编程思维

和模式、方法发生了翻天覆地的转变,与九十年代、甚至20xx年前是完全不同的。但是,很多在企业工作

的程序员的知识架构很难跟上。中科天博谢新华老师直率的指出:"现在很多程序员不是按照应该如何设

计最好做得,而是按照我会什么来做的,最终造成设计思想落后。现在做项目需要的是新的、巧的设计思

想。我们可以将从无数次失败中得到的理念告诉他们,包括如何学习,如何思考,技术变化的原因在哪里

,其核心在哪里。这样程序员的理解力就会完全不同。现在,对程序员的要求降低了,但对系统设计的要

求提高了。所以程序员必须要提高系统设计的能力,否则永远出不了头。"

而曾经从事过宏观经济研究工作的李巨锋更喜欢从行业走向来谈问题。他说:"现在中国纯软件公司

不多,但是,中国的经济非常好,从整个社会的经济和行业角度可以得出很多有价值的内容。很多人不了

解行业的需求情况,因此做不了判断。"

跟随一个快速发展的行业,就比较容易取得发展,而在一个发展缓慢的行业中成功就比较困难。当然

,有了市场容量有多大和机会,并不代表一定会成功,但没有这个因素成功的几率会更低。工作一两年的

人,最关键的是要有一个方向感,不要太盲目,这就需要程序员有一定的判断力。

李巨锋认为,电信行业新增的市场容量每年有1万亿,而且由于是新增市场,人员也比较容易进入。

此外,中国的手机市场非常大,由于无线应用的迅速发展,可以预料,基于手机和电信结合的软件的就业

前景就比较好,事实证明,很多人也在向这个方面转变。达内的成功与行业需求也不无关系,韩少云说:

"从金融和电信行业角度看,对软件人才的需求每年以30-50%的比例增长。熟悉这两个行业所需要的IT技

术和背景的人才,需求量是最大,缺口也是最大的。"

中国的信息管理软件市场也是容易就业的市场。现在市场上有数不胜数的小管理软件公司,这是同中

国社会走转型之路相关的。李巨锋说,"基于商流、资金流、信息流、物流的行业都有相当的发展前景。

通过产权交易的商流,带动资金流和信息流的发展。物流是新兴的行业,这些都需要主流的IT技术。中国

的物流成本现在是20.9%,美国是9.8%,差距非常很大,这其中有1万亿的市场容量,如果软件和信息化

服务占20%的份额,也有几千亿的市场,行业需求很大了。事实也证明供应链等类型的软件市场发展非常

迅猛。"

而对于游戏,李巨锋认为这不能称之为一个产业,因为它不像电信那样带动很大的一个产业链,现在

取得成功的只有几个游戏,而且还主要偏重销售,不是一个上下游的产业。尽管比较热,但李巨锋认为相

比来说,至少一两年内可能不会有很大的市场容量,这就需要进行判断。

李巨锋认为,已经工作两年以上的程序员可以有几种基本的职业规划:技术专家、软件架构师、实施

顾问或销售。其中程序员最主要的发展方向是资深技术专家,无论是Java还是.NET,还是数据库领域,都

要首先成为专家,然后才可能继续发展为架构师。"尽管架构师的职位可以工作一辈子,待遇也非常好,

对于科班出身的程序员最为适合,但这种工作职位非常有限。"一位毕业的学员到IBM软件开发中心后,过

了一年左右,开始请教其未来的发展,结合对方的情况,建议他先深入的技术,因为在中国架构师需要的

条件比较复杂,而且需求量也比较少。

实施顾问和销售就比较偏向市场了,除了一定的技术能力外,需要掌握很多IT以外的知识。这些发展

方向对于从其他专业转入IT的人员更为适合。比如用友就培养了很多实施顾问,这些人加上行业背景,收

入也很高。要做行业专家,就要比自己的行业客户还了解这个产业的发展现状。李巨锋说:"比如烟草行

业,一定要了解大的趋势,中国最多的烟民在哪里,其实是在山西和辽宁,烟草行业的产业政策是什么,

直接导致我的需求是什么,这些信息对于职业发展很重要。IBM的一些顾问都是行业内的资深专家,他们

的发展就非常具有代表性。"

对大多数人来说,首先是要专,在技术上做的比较深入,然后进行工作调整,把自己转变为某个领域

的专家,第三步,根据自己的情况,决定自己做软件架构师还是高级的顾问销售,另外一部分人可能就会

走向行政管理,这和个人性格有关。

要获得职业成长,培训也很有帮助。韩少云说:"在北美,职业培训是一种高端的培训,即便是专业

的人员也需要职业培训。一个人在一生中需要经过很多职业培训才能成为一个资深或者专业的人员。而在

国内大家的观念中,职业培训还没有被大家广泛的认同。"

对于更高级的技术人员,他们所关注的就不是解决基本的生活问题了。他们所关注的就是发展和成就

感。从现在看,他们更为缺乏的是交流,尤其是和水平差不多或者更高的人进行交流。李巨锋说:"我建

议他们做一些国产的产品,做一些自主产权的技术。比如,我们还有产品开发的部门就在做国产数据库设

计。"

职业规划带动更好的成长

从中国的软件开发人员的层次看,工作几年以内处于初级水平的程序员占据最大的比例,至少在50%之上

,高级的人员最多也就10%左右。但无论处在哪个层面,一定要有规划,按照自己的个性和优势做一些规

划。

一个程序员的成长,学习过程中首先要读到好书,然后是交到好的学友,找到好的老师,在这三个外

围的条件下,找到适合的工作环境,结合自己的特点,然后在一些重要的环节上遇到适合的人和合适的项

目,这样才能成功。有些职位可能在开始的时候不适合,但工作一段时间后,可能就可以走上更高的职位

。最近,IBM软件学院就开始做一个"软件人才库"的项目,为的就是跟踪技术人员的成长,给他们在合适

的时机提供合适的职位。业内人士说:"IT行业良性的人员流动也是很好的。"

有了一定的职业规划,就需要补充自己缺乏的经验,只有经历过足够的项目,才有可能不断积累。对

行业的判断有一定的理解之后,对一般的企业适应起来是没有问题的,但高级的人才需要长时间的积累。

在中国,除了个人的基本技能,还需要具备一定的社会资源,行业资源和资本。学生要学会在提高智

商的情况下,提高自己的情商。因为,在人和人交往中情商起很大的作用。技术人员需要慢慢改变自己的

一些思维方式。个人成长要有意识的积累社会资源,认识相关的人,了解相关的政策和行业发展的过程和

规则,这些东西是非技术的,非智商的,只要你关注就是可以得到的。我觉得最关键的就是多认识人,然

后有意识的寻找合适的事情来做。情商也就需要有渠道,有多少人能够帮助你,否则成不了。

机遇和经历对于职业的发展有相当的影响力。某些人或者某些事情都可能会影响到未来的发展。王洪

超也认为成为微软MVP是自己的一个转折点,由于成为MVP,便有机会接触更多的技术朋友和微软人,为自

己的发展奠定了基础。

总而言之,每个人至少三年要点评一下自己:是环境的原因,还是自己个人的原因,如果是环境的原

因,可以考虑是否需要换地方,如果知道自己,可以调整自己或者设的目标现实一些。从一个普通的程序

员做起,3年时间至少能够做到做独立需求分析和设计的。色后,就设法需要通过一个目标为自己输送动

力。这便是职业规划。


第二篇:程序员该如何做好职业规划


程序员该如何做好职业规划

  如果你是程序员,有想过今后的路该怎么走、如何发展、技术怎样提高?下面我就给出一些个人建议,希望对同行学员们能有促进作用。

  一、程序员应该打好基础

  1. 现在开发工具众多、语言泛滥,经常听人说”不学C\C++神马都是浮云”、”C\C++才是万王之王”,C\C++就真比PHP、Lua、AS、JAVA牛吗?

  其实不在于语言本身,而在于C\C++依附的平台。因为最靠近操作系统,所以能发挥其它语言不具有的性能优势,而且很多数据结构、算法、特殊功能类,C\C++是不提供的,需要自己实现。这时就需要自己去温习”数据结构”、”算法”、”TCP/IP”、”操作系统原理”、”编译原理”等这些知识。正因为如此,我们学习的东西被沉淀下来,也正因如此,C\C++经过定制的功能比封装好的功能性能高。

  我上大学做项目时,用的是.net平台C#语言, 因为我本性好专研,老师都是把需要研究、比较难的问题交给我。但C#无论是性能和功能都是都是无法跟C\C++比的,记得当时是要做一个”远程控制”软件,配置IP和端口后需要连接动态生成客户端程序(木马),但C#是不提供这个功能的。这也是我工作后转为C\C++程序员的原因,碰巧也是开发远程控制软件。刚开始写出来的程序偶尔会莫名奇妙的崩溃,但经过两个月和更长的时候后,我掌握了C\C++。在此要感谢我工作时的指导老师翁跃龙,没有他我的路不会这么平坦,他教我的不仅仅是技术,更多的是解决问题得思路和做人。

  2. 有些人会说大学学的东西是肤浅的,是没有用的。想想看,在学校的时候我也经常这么想,但出来后才知道这些东西有多么重要。不过大学学得再扎实,出来后仍然是需要再温习过的。因为上学毕竟实践少,所学不能所用,计算机是个应用驱动的学科。我们再来看“计算机考研”专业课考的什么(这里并不是说考研就一定好),”数据结构”、”计算机组成原理”、”操作系统”、”计算机网络”。”数据结构”、”计算机组成原理”这两门课程摆在前面,可见其重要性,分别是软件和硬件最重要的两门基础课。我不相信不学好”数据结构”能够把性能优化做得很好。若说自己学好了,能不看书、不查资料,说出”B+树、B-数的应用和区别”、”KMP为什么能快速匹配字符串”、”快速排序在什么情况会蜕变为o(n^2)”吗?

  我也不相信不学透”计算机组成原理”能搞通汇编和内核,不知道”CPU和I/O的交互过程”、”指令的执行通路”、”CPU运算器的工作原理”,如何写出高效的汇编代码?如何弄清楚内核中”中断”、”GDT”、”IDT”这些概念,实模式保护模式如何切换?”操作系统”和”计算机网络”则是两门非常重要的支撑学科,信号量为什么是最快的同步方式、线程调度比进程调度快、为什么要做内存缓冲池,这些都是来自”操作系统”。而”计算机网络”主要是讲述TCP/IP的,为什么德问”对于一个具有几百万粉丝的用户,数据如何实时投递到所有用户?”要使用多播的方式解决、”如何计算出C/S单向的延迟?”发送ICMP包测量,这些都是来自它。

  我们大学学的课程经过多少国内外知名学者专家研究过的,所以计算机理论课是基础,是解决问题的根源。”算法分析与设计”是”数据结构”的延伸,Divide Conque、贪心、动态规划对于程序算法的优化有很大的指导意义。同样,”计算机体系结构”也是”计算机组成原理”的拓展。其次,”编译原理”、”数据库”、”软件工程”等学科的重要性也不言自白。

  二、实践、理论、再实践

  作为程序员的我们,满足于实现一个程序功能的快感,得意于从网上下载别人的代码加到自己的程序中,陶醉于自己写了上百万行代码。有想过自己是在创造吗,还是装配车间的技术工人。日趋成熟的开发工具,逐步把有丰富想象力的我们沦为奴隶。从网上下载个压缩库就用着、成熟的加密算法直接使了、包装好的类库就include。为何不探究其算法实现、性能优化、底层机制。有人会说很”难”啊!究竟是难,还是掌握的知识不够,还是理论没有达到一定高度。

  很难想象不学习”计算机图形学”,去做3D项目客户端图形算法的后果;不研究”数据挖掘”去分析大量客户数据会做得多好;不攻读”概率论”、”线性代数”、”人工智能”去设计AI有多么智能。很多人说,这些东西游戏用不着啊,学了有什么用?我承认初学编程时,这些东西只是高谈阔论。若我们工作了n年后,还只是熟练地做些coding,和刚毕业的学生有什么区别。编程工具只是”工具”而已,别忘记了我们是改变世界的程序员,不提高理论,何以创新、公司拿什么优势和别人去竞争。

  “研发”是”研究”和”开发”两大块,只做开发,不做研究,对个人和公司都只是短期目标, 当然理论提高了,是需要投产的,不然理论很快沦为”空想社会主义”,公司白花银子养活研究部门。”实践、理论、再实践”,符合马克思主义哲学思想,也是计算机学科的价值体现。真正的计算机科学家不是只搞理论的,理论是要应用到产品中的。工程师也不是只做开发不做研究的,是要应用创新,理论微创新。计算机科学家相比于程序员,主要是数学功底相当深厚,所以他们能在理论上有突破。

  三、技术、管理两路线。

  1. “游戏能玩多深,技术就能做多深”,这句话说得很好。只因为我们执着,所以在游戏中能攻破一层层难关,凌晨2、3点还能练级打装备。若能走回正道,做技术就想玩游戏一样,技术做不深才怪呢。走技术路线的人,一定是对技术痴迷的人。但要走得长远,我们需要把技术做穿、做透。如何做穿、做透?计算机底层(C、汇编、逆向工程、驱动、内核)、计算机算法(网格计算、音视屏压缩、语音识别…)、架构(软件工程、跨平台、多语言等)都要有涉及。只有我们掌握了这些,才能做到”看问题看到本质”、”思想有穿透力”。这些才是最宝贵的,需要沉淀下来,仅仅靠做项目、写代码是无法达到的。

  2. 对于走管理路线的人,是具有”完成任务为第一要务”、”有计划、善于管理时间”、”善于与人打交道”性格特点的人, 重要的是”综合素质”,而不是”专攻”。但是这些都是可以改变的,很多公司也会选择技术做得最优秀的人做管理。由于我是一个技术痴迷狂,管理这块,我没有发言权,不做多解释。

  四、心态。

  1. 人活在世界上在于奉献而不是索取,帮助别人是一件很快乐的事情, 作为程序员的我们心胸要开阔些,低调些、虚心些, 公司的李老师、老张就是一个心胸很宽广、低调的人,值得学习, 三人行必有我师,我们熟悉的只是自己的这一块、这个领域,不懂的地方要虚心向别人请教, 我见过浮躁、过于自信的人,也见过做人低调的人,发展结果完全不同。

  2. 乐于分享,支持开源。这是一个很需要心胸、气度的事,也是决定个人、公司发展快慢的重要砝码。技术发展日新月异,总守着自己手中的那点技术,得不到长足的发展。中国两千年的封建历史、门户关闭政策还不够惨痛吗?”技术是交流和玩出来的”,这是锐安龙哥告诉我的。他也是一个大黑客、正义的黑客,开源是黑客的一项重要精神,所以黑客能引领技术。

  3. 每日学习。很多人认为毕业了就不用学习了,或者不用那么那么地学习了。这是一个非常非常错误的思想,无论何时何地都要把自己当成菜鸟、应届生地去学习。书本是学习的一个捷径,Google、百度解决问题是快,但不是系统化地学习。看书要了解作者背后的知识底蕴,想一想这个问题得解决作者是怎么想到的,这样比单纯解决一个问题更进一层。

(ps:本文章由北大青鸟广安门校区搜集自互联网)

更多相关推荐:
程序员职业规划:让自己变得重要

转贴程序员职业规划让自己变得重要20xx02031507昨天在BetterSoftwareMagazine上看到一篇文章MakeYourselfEssential杂志不在手边文章名和杂志期号都记不清了谈到了IT...

程序员职业规划

程序员职业规划苏州NIIT1程序员首先需要提高系统设计能力现在很多程序员不是按照应该如何设计最好做得而是按照我会什么来做的最终造成设计思想落后现在做项目需要的是新的巧的设计思想2已经工作两年以上的程序员可以有几...

java程序员职业规划

java程序员职业规划第一步1基础必备至少看过2本语言基础书和一本领域技术书2部分参与项目12个java程序员职业规划第二步1行业知识领悟扩展相关应用知识2完整参与项目12个3可以指导新人完成工作java程序员...

程序员职业规划

程序员职业规划文中多次引用韩少云老师的话很多人刚毕业时充满活力然而几年的摸爬滚打后冲劲就会慢慢减弱甚至消失再加上IT大环境的起伏不定一旦无法跟上技术或者行业发展的步伐便会迷茫王洪超说quot以前晚上睡觉之前想事...

程序员职业规划

1毕业五年规划php软件工程师个人分析个人认为我的性格具有两面性我喜欢在安静的环境下去看书在有的时候与朋友聊天分享彼此的欢乐也喜欢打羽毛球跑步旅游享受大自然的美景陶冶自己的情操另外我也具有团队合作精神与协作能力...

java程序员职业生涯规划

java程序员职业生涯规划范文一位哲人说过走好每一步就是你的人生人生之路说长也长是因为这是你一生所要走的艰难险阻的跋涉人生之路说短也短因为你度过的每一天就是你的人生每个人都在计划自己的人生都在实现自己的梦想而我...

程序员职业规划之道

1稳定成熟的技术还是未成熟的新技术第1章选择市场你马上就要进行一次大的投资也许并不是要投入大笔金钱而是时间是你的一生大都数人对待工作的态度往往都是顺其自然走一步看一步我们刚刚深入了解了Java或者VB老板有一天...

女程序员的职业规划

女程序员的职业规划引子很多姐妹发微博评论留言给我说希望我写一篇关于女程序员职业规划的文章很惭愧我自己的职业规划都还没亲自验证完毕coder之路还在继续在此仅仅分享我的所闻所见所学所思有说的不准确的地方还请指正规...

程序员职业规划:让自己变得重要

转贴程序员职业规划让自己变得重要20xx02031507昨天在BetterSoftwareMagazine上看到一篇文章MakeYourselfEssential杂志不在手边文章名和杂志期号都记不清了谈到了IT...

来说说女程序员的职业规划要怎么做

来说说女程序员的职业规划要怎么做如果你是一名女程序员你一定会为如何规划自己的职业生涯而感到苦恼本期乔布简历小编就和你们来说说女程序员的职业规划要怎么做关键词女程序员的职业规划总体来说女程序员的职业规划路线主要有...

2-程序员升职路线_程序员职业规划

程序员升职路线程序员职业规划今天乔布简历具体和大家说说程序员升职路线程序员职业规划关键词程序员升职路线程序员职业规划程序员的发展一般是这样子的先从一名程序员发展至软件工程师到架构师再到系统分析师或项目管理师最终...

程序员职业规划发展路线图

程序员职业规划发展路线图发布时间20xx09081413来源赛迪网作者高阳锐哥准备为大家烹饪红烧鲤鱼小丫主动要求跟锐哥学习烧鱼这也使小蔡和大熊非常感兴趣变得积极主动锐哥首先要求他们把配料准备好小丫又进行配料准备...

程序员职业规划(28篇)