程序员如何选择将来的职业路线

  本人从2008年毕业,做为一名软件开发程序员,开始正式踏入软件开发行业,转眼间已经是9个年头了。作过初级软件工程师、高级软件工程师、项目主管、技术经理、项目经理。近些年带过开发团队、参与招聘面试。今天把我的这些年一些体会或者观点分享下,仅表明我的观点。程序员

1、程序员的特性面试

  技术出身的职场人特性很明显,与作市场、业务出身的职场人区别尤为明显。IT行业中常见的一些职场角色:老板、项目经理、产品经理、需求分析师、设计师、开发工程师、运维工程师等。开发工程师具备以下特征:redis

  一、逻辑思惟清晰、严谨和细腻;可是有时不容易转弯,有些程序员容易较劲、转牛角尖。设计模式

  二、性格偏内向、不善于沟通、表达和交际;可是在网络聊天工具上,有些显为幽默、能聊。微信

  三、为人实在、真诚待人、直来直往;可是有时比较呆板。网络

  四、书面表达能力较差,甚至排斥编写文档的工做。架构

 


  

2、国内软件开发环境运维

  国内软件开发环境,主要是讨论应用系统方面开发(不包括游戏开发,本人对游戏开发不了解),通常软件公司性质&特色:工具

  一、互联网平台类型 -- 企业搭建产品平台进行运营,这类企业,大到BAT,小到初创互联网平台的企业。学习

  (1)技术方面:技术人员开发内容和所用技术单一;因平台数据量、访问量大,解决问题过程当中,更有利于深刻的掌握技能;使用新技术偏多。

  (2)福利方面:薪酬和福利较好,特别是大型的成熟的互联网平台,可是对于初创型的公司,须要引入人才,通常都会高薪吸引人才。

  (3)岗位方面:岗位升迁比较难,管理岗比较有限,其次竞争也较为激烈。

  (4)归属方面:比较有成就感、自豪感,所在企业有归属感。

  二、软件项目外包类型 -- 企业以承接项目研发或者实施,项目完成验收进行交付。有些项目须要项目成员进行驻点实施。

  (1)技术方面:技术人员更多时间充当多面手,以完成项目交付为导向;所用技术大部分沿用旧技术,主要考虑新技术遇到技术问题致使开发效率不可控;通常技术能力得不到深刻应用。

  (2)福利方面:薪酬和福利较为通常,彻底比不上互联网平台类型,有部分企业会项目奖金制进行补充薪酬。若是企业核心骨干,公司则会给予相对合理的薪酬福利,用于留住人才。

  (3)岗位方面:岗位升迁机会比较大,初级开发、高级开发、技术经理、项目经理等。锻炼综合能力的机会多。

  (4)归属方面:多是项目交付验收后的放松,或者是发放项目奖金的时候,不过绝对比人力资源外包好。

  三、人力资源外包类型 -- 人员资源企业招聘后,将人员外包到客户现场作事,客户公司的活动及福利都跟外派驻点人员无关,毫无归属感;甚至有些工做一年多,都不知道与其签定合同的公司的具体状况。

  (1)技术方面:遵从服务单位要求。

  (2)福利方面:这也是惟一的优势了,就是薪酬偏高,福利偏低。

  (3)岗位方面:不须要多想。

  (4)归属方面:几乎为零。

   以上根据本人理解将常见的软件企业分为三类,如今也有一些企业同时兼存在多种类型。对于软件开发同窗而言,首先要客观认识自身的状况,想好本身如今要什么,接着要什么,将来要什么,作好职业规划。选择不一样的类型的企业。例如,当前身无几分,急需就业,技术能力较为通常,能够选择人力资源外包临时过渡;喜欢技术专研,对技术有浓厚的兴趣,但愿之后成为某个领域的技术牛人,能够选择互联网平台类型;有必定的技术基础,之后想往技术经理、项目经理方向发展,能够选择项目外包类型。程序员须要规划好本身的职业线路。


 

3、职业线路选择

  程序员通常职业线路比较简单,没太多选择,除非换行业者另说。下面是我我的的一些观点。

  一、程序员,若是你以为你喜欢代码,喜欢开发工做,那么一直作开发也是一件的不错的事,不过要考虑当你作开发10年后,你所作的工做,一个大学毕业二、3年的开发人员同样能作时,你的价值在走下坡路,愈来愈不值钱。因此要时刻保持学习,而且深刻研究技术。

  二、架构师,是往真正技术大牛的方向发展的职业线路。若将来你想成为架构师就须要如今你的不断专研技术和积累研发经验。不是随便开发人员凭借10年开发经验就能够成为架构师。成为架构师须要完善和扎实的技术体系,具有较好系统分析和设计能力,丰富的项目研发经验。建议前期能够先去项目外包类型,而后再去互联网平台类型。

  三、技术经理,是往技术加团队管理的方向发展的职业线路。往此线路发展的同窗,须要必定的技术能力和团队管理能力。作管理与性格有关,首先得分析本身性格是否适合作管理的工做,这点也是不少作技术出身的人员,转型时最大的挑战。有技术经理岗位的存在,通常都是搭配偏需求、产品的项目经理进行项目实施。技术经理的技术能够不用深刻研究,可是须要具有必定的广度和项目开发经验。
  四、项目经理,是往管理的方向发展的职业线路,通常项目经理主要侧重项目管理工做,项目经理很关键的能力就是计划、沟通及组织协调的能力。沟通和表达是开发人员短柄,因此想往此线路发展的同窗,从平常的工做、生活中就得逐步增强锻炼这方面能力,其次学习一些项目管理的知识,例如:PMP、CMMI、敏捷开发管理等。

   选择什么样的职业线路,须要客观认识本身,根据本身的特色进行规划,选中后制定有序的学习计划。职业机会也是留给已作好准备的人。


 

4、结语

  本文的内容仅是我的的观点,可能有些观点概述不全。最后说下:我的努力和学习很重要,平台更为重要。在平台上,你将时时刻刻面对不一样的问题,解决不一样的实际问题,问题解决能力便提高了,同事积累到经验。时间一晃就过,很快你就会发现,本身已经是一位职业老手了,可能在迷茫本身的方向,可能在抱怨公司很差、工资不高等。因此选择本身的的职业线路,作好规划,选好你真真正正要的东西。

 

做者:刘蔡涛
出处: http://www.cnblogs.com/Andon_liu 
关于做者:专一于微软平台项目架构、管理。熟悉设计模式、领域驱动、架构设计、敏捷开发和项目管理。现主要从事ASP.NET MVC、WCF/Web API、SOA、MSSQL、redis方面的项目开发、架构、管理工做。 若有问题或建议,请一块儿学习讨论! 
本文版权归做者和博客园共有,欢迎转载,但未经做者赞成必须保留此段声明,且在文章页面明显位置给出原文链接。 
若有问题,能够邮件:568773262@qq.com 联系我,谢谢。


微信号: 

相关文章
相关标签/搜索