
绝大多数程序员最终的职业目标可能都是cto,做到ceo的人估计会比较少,也有一少部分人自己去创业创业去当老板,也有部分人说我转行去做业务了,对于当老板的人毕竟是少数,对于转行的人来说,都不在这行做了,自然没什么好说的了。
当然这只是一个大致的路径,不是所有程序员都必需要这么经历的,有些人可能跳过其中的一些步骤,也可能有些人会把中间的很多职位都做了。而最终做到 cto的程序员,也是非常少的一部分,原因很简单,这个世界上不许要那么多的cto和cxo.
也就是说,许多的程序员最终可能是做技术经理、项目经理或者项目总监之类的,那么到底我们职业生涯要选择哪一种呢?我觉得这个问题没有一个统一的答 案,因为每个人的性格不一样,际遇也不一样,就像你从小希望当贪官,可是命运却偏偏让你做了一个程序员。所以应该根据你的兴趣、性格与际遇选择一条道路, 比如说你正好有机会带一个项目,而你又不是很讨厌项目经理这个位置,那么你就可以选择向项目经理方向发展。
实际上很多时候,国内并没有明确的技术经理、项目经理、产品经理之分,在许多的公司里,他们经常是由一个人承担。在外包公司里,通常会有项目经理和 系统分析员(也可能是技术经理)。在一些非it公司里,可能会有部门经理,而做自己产品的公司可能会分得比较详细一些。我大致说一下这三个职位的区别,让 正在徘徊的程序员有一个大致的了解。
项目经理是项目的直接负责人,这个角色相当于一个中间接口,不管是团队成员还是需求方(客户), 或者是上级领导,有事都直接找他,所以这个职位着重于管理与沟通。一般来说,项目经理的工作重点在同客户沟通需求、项目进度的把控、团队的沟通方面,有些公司也会需要项目经理承担团队建设的工作,不过貌似 很多国内公司都忽略了团队建设这个工作了。对于项目经理来说,重点会要求沟通能力、协调能力、危机把控能力、执行力、团队管理能力,着重于沟通、管理与计 划。当然也有些公司还要求项目经历要参与招标谈判,这就要求项目经理有一定的商务谈判能力。
技术经理有时候也可能叫系统分析员,一些 小公司可能会整个公司或者部门有一个技术经理。技术经理承担的角色主要是系统分析、架构搭建、系统构建、代 码走查等工作,如果说项目经理是总统,那么技术经理就是总理。当然不是所有公司都是这样的,有些公司项目经理是不管技术团队的,只做需求、进度和同客户沟 通,那么这个时候的项目经理就好像工厂里的跟单人员了,这种情况在外包公司比较多。对于技术经理来说,着重于技术方面,你需要知道某种功能用哪些技术合 适,需要知道某项功能需要多长的开发时间等。同时,技术经理也应该承担提高团队整体技术水平的工作。
产品经理这个职位一般在有自己产品(不管是软件还是网站产品)的公司比较常见,产品经理主要会负责产品的设计、产品的改良等工作。需要注意的是,产 品设计与设计师是两个不一样的工作,产品设计主要会从用户体验、业务需要等层面去设计产品,而设计师更多是从用户的视觉上去做。产品经理应该是最懂业务的 人,比如说你在设计一个微博的产品,就要求你对微博这个东西非常熟悉,从用户习惯、用户体验、公司的发展战略上去设计这个产品,还要对比同类产品会有什么 优势等等。
不管是项目经理还是技术经理与产品经理,都要求要熟悉业务,业务是需求的来源,没有不谈业务的技术,所以不管你从哪个方向 发展,都要求对业务熟悉。 产品经理要求对业务最熟悉,项目经理次之,技术经理排最后。对于程序员来说,刚开始工作的前几年可以埋头扎到技术里面,一般这个时间在2-3年的时间,然 后就应该多关注业务了。这个业务不一定是指某个具体的业务,因为具体的业务的范围太少,而且也需要机遇。
其实大大小小的文章讨论程序员的人生规划不计其数。本人还是坚持谈谈个人对于程序员日后规划的看法,也是本人做事的一种风格跟对人生的态度吧。希望能给大家有点帮助。首先我们庆幸的是我们是软件行业的一员,我们作为程序员从最基础的“农民工”开始的,从反反复复的代码中成长起来。我们要为我们的职业感到骄傲才对,他赋予了我们善于动脑的习惯,程序员每天要应对的问题多种多样,我们要快速的思考,不知不觉我们锻炼出了思考的习惯。[当思考成为习惯,成功将随之而至]思考是前进的本质,我们在当初能进入程序员行业,就说明我们还是喜欢挑战的。但是话说回来,程序员的最终是需要归宿的,我们不可能一辈子这样处于“基层”。所以我们需要思考,我们以后的归宿在哪里,等过了三十岁,我们的本钱是什么。可能你会说我有的是编程的经验,是项目经验,我框架写的很好。技术就好比水,“可载舟亦可覆舟”。当我们沉浸在技术的水潭里,可能无法自拔。模式、框架等等太多了,我们是学不完的。多年的项目经验固然是我们的核心竞争力,但是这样的竞争力似乎显的有点“沧桑”,已没有当年的激情和霸气。仅靠那些辛辛苦苦的血汗“架构”,已不能满足我们所付出的回报。我们基本上都是来自小城市,到大城市上班工作,我们买不起房子。从二十出头就出来打拼,到了三十岁我想都该回家了;这短短的近十年的时间,对我们程序员来说真的很重要,我们不要企图一步登天,我们需要慢慢的学习。学习做人、学习技术、学习与人交流、学习公司的运行原理、学习盈利模式、学习的东西太多。我们要抓紧这短短的时间好好学习,不仅要学技术,我们还需要学习更多的大智慧、大战略。[没有远虑,必有近忧]所以我们程序员需要做长远打算,在学习技术的过程中,我们更多接触的是公司的业务。业务驱动公司日常运转,我们应该善于总结一个公司是如何运转的,包括管理、资金、营销、广告等等。我们是程序员,我们的资本是什么,相比大家都知道,我们有技术我们有项目经验。不错,我们是有这些,但是我们不能总是停留在代码的层次上,我们需要有产品的理念,代码不值钱,产品值钱。在不断的开发过程中,我们需要将自己提升到一个高度,看产品不是看代码。这样的理念对于日后的创业尤其重要。下面是本人抽象出来的人生规划图(程序员职业病改不了,喜欢分析):1。我大概将程序员的整个发展周期进行了基本四项的抽象。一:自身修养俗话说的好,先学会做人在学会做事。这是我们做人的根本,任何事情均是建立在与人交往上的。如果我们在三十岁之前还没有改变自己身上的缺点,没有让自己进入一个备战状态,还是整天浑浑噩噩,那就真的太迟了。这是纵向分析,所有的东西离不了它,我们日常需要注意了。二:技术的学习这是我们天天都在做的,但是技术这个东西变化太快。所以我们必须抓住核心的东西,以不变应万变。我们是.NET程序员,那么我需要抓住框架本身的原理,C#语言的原理,任何新东西都是建立在这些基础上的。就算哪天学起来也很快。如果有时间的话,可以学习一些底层知识。我们来看对技术的抽象图:2。技术是我们的核心竞争力,我们必须话大功夫去学习。由于以后自主创业的可能性比较大,所以多学点技术不坏。三:荣誉,提高自己的身份其实这种身份不是贬义词,而是我们的知名度,在技术的领域里,我们需要有一帮自己玩的好的朋友。比如一些技术的圈子如:MVP圈子,程序员俱乐部等等;在靠自己去跟人打交道的时候,往往真的很看重个人的荣誉,所以我们可以参加一些国内的或者国际的一些荣誉考试,MVP、Oracle、Java等等;证书在手还是有好处的。3.荣誉可以根据个人喜好自己去争取努力。需要有一定含金量的证书,能证明自身能力的证书才重要。四:三十而立的准备这是至关重要,十年的时间,我们好好总结好好学习对于我们后期的创业也好,干嘛都好,不只是一个简简单单的程序员了。我们有产品的理念,我们有与人交往的技巧等等。4。总结:这样全面的学习,等我们到了三十岁。那就全身是宝,那个时候再做什么决定可能60%意味着成功。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)