最热程序员职业规划(通用17篇)
总结是记录成果、发现问题、总结经验的重要过程,它可以提高我们的学习效率。如何处理工作中的压力和挑战?掌握一些写总结的技巧和方法,可以帮助我们更好地撰写一篇高质量的总结。
程序员职业规划篇一
当今社会,it行业发展速度突飞猛进,技术更新换代周期小,专业方向和领域更是林林总总、百家争鸣,若没有一个明确的目标而漫无目的'的乱走一遭,岂不殆误时机,浪费年华?俗话说,欲行千里,先立其志。因此,要为自己拟定一份职业生涯规划,将自己的未来好好的设计一下。有了方向的指引,自然才会有乘风破浪之帆。
“知己知彼,百战不殆”,进行职业规划首先要“知己”,即全面、深入、客观的分析和了解自己。
1)我的优点
热爱学习,对新鲜事物及不懂的知识有着浓厚兴趣,喜欢凡事问个为什么,有条件的话会不断钻研直至懂得原理为止;热爱工作,只要进入工作状态常常到达忘我境界,做事情考虑周全,以大局和未来为重,并且在懂得应用知识后会去了解知识背后的核心,从经验上升到理论。
2)我的缺点
过分自信,执着的有些过头;性格急躁,自控能力一般;自身专业知识水平、能力有待于进一步提高。
3)个人职业倾向
目前从事的是java服务端的软件开发工作,希望可以成为一名技术管理双能的工作者。
程序员一般有两个大方向:技术与管理。
走技术路线的人,一定是对技术痴迷的人。但要走得长远,我们需要把技术做穿、做透。如何做穿、做透?计算机底层(c、汇编、逆向工程、驱动、内核)、计算机算法(网格计算、音视屏压缩、语音识别…)、架构(软件工程、跨平台、多语言等)都要有涉及。只有我们掌握了这些,才能做到”看问题看到本质”、”思想有穿透力”。这些才是最宝贵的,需要沉淀下来,仅仅靠做项目、写代码是无法达到的。
对于走管理路线的人,是具有“完成任务为第一要务”、“有计划、善于管理时间”、“善于与人打交道”性格特点的人,重要的是“综合素质”,而不是“专攻”。必须从思想上发生根本性转变:技术是解决问题,而管理则需要满足“多快好省”。
而本人对程序员职业的认知是:技术与管理并不是物理上的独立,而是相辅相成的。只做技术无法深刻理解全局思维,无法更好地为业务服务;而只做管理,则与程序员渐行渐远,最终成为一名行外的管理人员,无法在团队内部树立威望。因此,个人希望可以成为一名技术管理双能的工作者。
程序员通常被认为是相当不错的工作,原因非常多。收入高,福利好(有可能非常好),工作富有挑战性(通常是正面积极的挑战),根据目前的就业形势和程序员的需求量,这种职业竞争压力很小。
但是,在国内的it环境下,要成为一名合格的程序员并不是容易的事。在国外,五六十岁还坐在电脑前敲代码的程序员比比皆是;则在国内,程序员则靠吃“青春饭”,三十岁还需要靠敲代码的程序员甚至被称为loser。这主要因为it技术的高速发展,程序员必须不断地更新专业知识,以适应社会的需求。而上了年纪的程序员由于思维和身体原因,无法与刚步入社会正值旺年的年轻一代的学习能力相提并论,只能苦苦挣扎在茫茫学海中,或被迫进入自己并不擅长的管理层面里。
当然,随着对程序员的认知越来越广泛,这种情况经已有所缓和,但是从教育角度上看来,国内形势还是十分严峻。现在各个大学、it培训机构为了赚钱拼命扩招,所以不仅it专业的学生人比较多,而且其他专业的学生人数也比较多,“僧多粥少”就通常意味着就业压力大。但是反过来看,现在很多it企业都存在“人才荒”的问题,也就是很多企业都招不到合适的人才,一些从事it人力资源方面工作的人都普遍反映现在企业里很难招到合适的人才。初看起来很奇怪“每年有很多it专业大学生毕业,很多都找不到工作”,而“企业每年都缺人,招不到合适的人才”,造成这种奇怪的“人才断层”现象的根本原因就是现在毕业生的素质明显下降了,大学招的人多也意味着教学资源平均下来降低了,培训机构为了赚更多的钱以最快的速度培训出一群“知其然不知其所以然”的学生,所以教育质量也降低了,这些就造成了“学生需要工作,企业需要人”的这种状况。
程序员职业规划篇二
既然必须做出选择,如何选择就是关键。总不能写几个纸条,靠抓阄来决定自己以后的命运。从众多成功者的经历来看,成功的一个关键因素就是做自己感兴趣的和最擅长的事情。如果没有兴趣,就没有百分之百的激情与动力,如果不擅长,就不可能把一件事情做到最好。
刘翔是短跑冠军,王励勤是乒乓球冠军,乔丹是飞人,巴菲特是股神……他们之所以成为英雄,正在于他们都是在做自己最擅长的事情,都是在拿自己的长处和别人的短处较量。他们本来是普通的常人,但因为在某一点上超过了所有的人,因而获得了成功。
职业规划的目的,不是要你变成另外一个人,而是要你变成最好的自己。搞清楚自己的优势在什么地方。做自己喜欢和最擅长的工作。不要羡慕别人的长处,不要绞尽脑汁地琢磨怎样才能像别人那样擅长某方面,不要幻想成为别人--做最好的自己!
成为行业专家
通常说到程序员的发展前景,一般是指如项目经理、软件架构师之类的,这种规划主要是在it行业内就业发展的规划,更像一个职位的规划。所以,无论是就职资源还是职业前景都包含一定的局限性。随着it行业的竞争加剧和其他传统行业的信息化进程,如今的程序员职业规划发展目标应该超越本职业概念的"行业专家",这里所指的行业,并不是指编程的语言,而是比如电信、互联网、银行、电子商务之类的行业,成为一个领域在行业中应用的专家。而在现实招聘的需求中也大量地体现了这方面的要求,具有某一行业多年从业经验的开发人员一直是众多企业苦苦追寻的香饽饽。
坚持到底
除了选择,最终要想获得成功,唯一的办法就是"专注".技术是层出不穷的,而人的精力却是有限的,怎样把有限的精力用到刀口上去,那就得认准了某个领域和某个行业坚持不懈地做下去,不但要成为这个领域的技术专家,还要成为这些行业的业务专家,你能熟知这个领域的点点滴滴,并能在这个领域的行业应用上发展创新,这样的人才,我想才是目前最需要的人才。我的一个同学,毕业的时候被公认为是编程水平最高的,但3年来他换了6次工作,他总是对这个感兴趣,对那个感兴趣,做过很多,每换一个工作几乎都是做的全新的东西,总在抱怨工作不如意,其实他换来换去,却始终是在起点上转。而另一个非常坚持的朋友,10年只跳了三次槽,第一个是程序员,第二个是部门经理,第三个是技术总监,不为什么,就因为他是专家,10年来他只做一个行业。用10年来做一件事情,不成功都难。
世界上没有完美的公司,重要的是,你要有自己的目标。知道你自己要的是什么。有些人习惯不满意就跳槽,跳槽可能会增加你的收入,但这种个人收入的增长,与一家企业由小到大而给员工带来的成长是无法相提并论的。职业规划就是要搞清楚自己的优势在什么地方,自己最适合做什么。当有了自己坚定的目标和定位,打工就不再是为别人卖命,而是为了自己的目标在奋斗!用这样的标准来衡量自己的成长和进步,那样的人生也会变得轻松而快乐。
程序员职业规划篇三
第二,学习数据库应用程序和web应用程序开发
第三。学习编写需求程序设计文档,测试文档
第四。做项目经理,积累项目经验
第五,做合作伙伴。
规划是个长期计划,使为了实现一个远期目标而制定的计划,然后又由数个或者数十个短期计划分解组成,不断实现。
关于职业生涯,很多人不能学以致用,将来的工作和自己的专业关联性不大,在大学里学的东西只能用上20%,(当然除了专业性特别强的),主要的80%的技能都是进入社会中不断学习逐渐实现的。
成功的职业规划,主要的考虑因素在以下几个方面:
2、你的性格适合做什么?不同的工作,适合不同性格的人去做。认清楚自己的性格,是非常重要的一步。
4、你性格本身存在哪些弱点需要克服?不要让弱点成为你成长中的绊脚石。
程序员职业规划篇四
热爱自己的本职工作,能够正确认真的对待每一项工作,工作投入,热心为大家服务,认真遵守劳动纪律,按时上下班,有效利用工作时间,坚守岗位,保证工作能基本按时完成。在这一年里,我本着把工作做的更好这样一个目标,开拓创新意识,用心圆满的完成了以下本职工作:
完成基于的用c#语言开发的元器件生产清单软件;
初步完成订货软件的一个版本,此刻仍在进行另一版本的订货软件编程,已经
完成新版本的框架搭建,基本实现xxxx的订货功能;
对xxxx上位机软件进行改善,添加了中英文切换功能,并在界面设计上有所改
进,此刻仍在根据品管部的测试进行改善中。
这一年下来,我在技术上,主要是c++编程上,能够说是从无到有,且能利用有限的资源完成我的工作任务,也深化了我对面向对象的理解。
三、存在不足:
程序员职业规划篇五
java程序员职业规划是每一个java的学习者的必经之路,我们之所以要制作我们的职业生涯规划一个重要的问题就是我们需要明白我们的目标,这个时候java程序员职业规划就是一个很好的方向盘,它能够很好的指引我们前进!
当然了java程序员职业规划的下一步就是我们要不断的去找好我们其他的项目来做,只有这样我们才能够有真正的被看上的价值,因为如果我们不努力的去做出贡献的话,公司只会觉得你是在混日子,那么这样的话,就会非常的危险,所以我们要做到的就是不懈的努力!
程序员职业规划篇六
程序员的职业规划其实是一个很好做的东西,因为程序员不像是一般的职业那样那么的复杂,其实一个公司非常的有逻辑,要想做到程序员的职业规划,那么就根据我们的公司的不复杂的程度来制定我们的职业生涯计划!
首先程序员的职业规划其实是对于我们的程序员的一种帮助,当然了有些时候我们可能会觉得很麻烦,因为这是要话费很多的时间还有精力来完成的事情,有些时候不是一个人就能够独立的完成的,还的征求很多的意见,这是我们很难去接受的事情,但是如果我们真的不去做的`话,概念又不会一样了,所以这个时候需要的使我们的不断的努力,去探索,最后找到一条我们能够使用的道路,这一条道路记录下来就是这个职业生涯规划!
那么程序员的职业规划第二点就是对于我们目前的职位的冲击,没有错,但是这不是一天就能够完成的事情,是需要更多的努力的,对于我们的职位的规划,一般来说都是按照年龄来计算的,有的时候可能会少一点,但是这也是没有关系的!
当然了程序员的职业规划使我们每一个程序员都要做的事情,几乎没有人能够逃避,所以这就需要我们的认真的对待还有对于程序员这个职位的努力,就算我们能够逃过这里,但是下一次呢,下一次说不定就不能够逃过了!
程序员职业规划篇七
与其他岗位相比,程序员相对来说会内向一些,思维也会更严谨、更有个性。企业招聘程序员就是要求他能和团队一起完成既定的开发任务,所以重点从技能水平、学习能力、团队合作及工作心态等几个方面考察程序员。
技术水平是对程序员最基本的要求,很多企业会通过笔试来辅助考察。技能的考察主要看面试者技能匹配度、对技术发展趋势的了解以及自己的职业规划。
1. 你认为自己最擅长的技术是什么?
2. 谈谈你对xx行业/技术发展趋势的看法?对最近xx技术问题发表下你的看法?
3. 在五年的时间内,你有什么样的职业发展规划?
技术快速更替,员工的求知欲和学习能力比他现在的技能更为重要。宁愿招聘一个学习能力很强的员工,也不要一个靠吃老本、不愿学习的员工。
1. 你最近有看哪些书或参加过什么样的培训?有灌技术论坛的习惯吗?
2. 今年有什么学习计划?今年有什么目标?
3. 研究过开源项目吗?有什么收获?
在现在的软件开发中,已经没有所谓的“孤胆英雄”,项目主要靠团队合作来完成,而团队合作能力可以通过考察以往项目,来了解面试者对团队的理解、遇到问题的解决思路等。
1. 你做过哪些项目?最成功的是哪个?为什么?
2. 辛辛苦苦工作半年的项目失败了,你怎么办?
3. 评价下你过去的团队?你喜欢在什么样的团队中工作?
4. 你的业余爱好是什么?
招聘新员工,需要了解面试者对工作的心态和价值取向,并且与他沟通公司的企业文 化。如果你所在企业需要快速发展,有高强度的研发任务,而他想找一份轻松的工作,可能就不是很合适了。
1. 为什么选择离开上一家公司?
2. 有了解过我们公司的产品/服务吗?
3. 你对加班的看法?你家人或朋友抱怨你加班怎么办?
4. 如果在试用期发现你技能不符合要求,该怎么办?
最后,技术人员的有效沟通能力也非常关键,特别是对问题的分析和说明,所以在整个面试过程中你要观察面试者的分析思路,对问题重点的把握以及表达。经常有一些滔滔不绝、 但不知所云的面试者,让人非常头疼!
程序员的能力分为两种:技术能力和非技术能力。技术能力包括编码能力、系统分析与设计能力;非技术能力包括写作能力、沟通与协作能力、组织与管理能力等。而根据程序员的能力水平,可以将程序员分成初级、中级、高级三个级别。因此,在面试过程中我会针对初级、中级、高级程序员三个级别来提出不同的问题。
在技术能力方面,重点考查初级程序员的编程能力、中级程序员编程能力并兼顾系统分析的能力、高级程序员的系统分析与设计能力。在非技术能力方面,重点考查初级程序员的沟通与协作能力、中级程序员的写作能力(主要指编写技术文档,如需求分析文档、用户手册、部署手册等)、高级程序员的组织与管理能力(如指导、协助中级程序员进行问题分析和开发)。
在面试时,程序员首先要将自己的技术能力展现出来,以一种交流的心态去面对,不要紧张,要有自信,即使面试失败自己也要下去总结失败的原因,找到技术弱点加以弥补;其次,面试中遇到不会的问题要讲明自己的思路,因为有些问题不是考你的编程能力,而是逻辑思维的能力;最后,对照程序员能力模型进行自我分析与评价,做好职业规划,不断学习,提高自己的编程能力和抽象思维能力。
以sql server为例,我来分享一下面试时常问的一些技术问题。
1. 聚集索引和非聚集索引有何区别?应该怎样使用?
2. sql的一张表中有一个自增的id字段,但是现在不连续,写一条sql语句取出某个位置到另一位置(如50~60)之间的数据。
3. 如何判断和防止sql注入?
4. 如何对海量数据进行处理?
第1题考查基础知识;第2题考查sql语句的编写能力和技巧,属于初级程序员的问题;第3题考查sqlserver的安全性,属于中级程序员的问题;第4题考查sqlserver的性能,属于高级程序员的问题。通过这几个问题可以判断出应聘程序员的数据库水平。
从个人经历来说,我会对以下五个问题比较感兴趣。
1. 请说出3个你觉得至今都没有算法可以解决的问题。
这是一个开放式问题。从回答中我们可以了解到被面试者的思维方式和思维敏捷度,而这两点是一名优秀程序员不可或缺的。我预料一般有两类回答:第一,学术类,比如有人会说一些关于寻找质数之类的现在还无法解决的问题;第二,生活类,我比较期待这一类有意思的回答,如果被面试者可以结合一些现在的社会现象作出回答,也可以从另一个角度反射出其社会属性。
2. 请从技术角度谈一下《黑客帝国》的观后感。
同样又是一个开放式问题,完全没有所谓的标准答案。《黑客帝国》是程序员的必看“教材”,整个故事最精彩的莫过于构思。我觉得能具备这样的构思能力是程序员的最高境界。那么从技术角度,对于这个构思的框架搭建以及实现等,我想听听程序员的不同理解和实现方法,从侧面了解他们的潜在创造能力和对身边事物的建模能力。
3. 你比较偏向于把程序员比作翻译、建筑师还是设计师?
问这个问题的目的是看你怎样理解程序员这个职业。一个人对自己职业的认识以及定位将直接决定其在这个职位上的积极性和创造能力。我的答案是程序员既是翻译,又是建筑师,更应该是设计师。并且随着这三个职业的排序,正是我认为的程序员职业能力升华台阶。
4. 请设计至少两个不同的算法解决将一个蛋糕平均分为6份的问题。
比较实际的专业能力题。这是一个既简单又综合的考验。除了对程序员这个职位的正确认识之外,实际操作能力毕竟是影响今后实际工作的第一要素。这道操作题,考察应聘者对问题的思考,以及分析能力和解决问题的动手能力。
5. 比较一下这两个算法,你觉得哪个更好,依据是什么?
比较算法,还是考察的专业能力,目的是看你怎样判断一个算法的好坏。对这道题,没有接受过专业训练的应聘者应该无法给出全面且科学的分析。并且请他们评论自己设计的算法,也是对自我认识的一种衡量。程序员的概念有点宽泛,为更有针对性,我主要分享对“网络程序员”的观点。简言之,我们主要关注面试者的硬条件、软条件两个方面。硬条件是指学历、技术经验、语言等能直接呈现的能力。技术是实在的东西,有就有,没有就没有,由不得半点浮夸。
我们比较感兴趣的问题如下。
1. 做过什么:是写代码、设计还是架构?
2. 做成功过什么:是大型的平台吗?其特质如可扩展、高并发、交互式。
3. 擅长做什么:使用的编程语言是哪种?使用经验有几年?
4. debug的经验,遭遇什么复杂的问题(需例证其复杂性)?
技术面试的后续往往是笔试或上机,比如,在所有你使用过的designpattern中,请解释对比其中两种,如commandpattern和visitorpattern(可以文字回答,也可以画图)?domparser与saxparser的区别在哪儿?什么情况下采用domparser而不是saxparser?大家在面试之前可以google一下类似的题目。
如果面试外资公司,需要英文达到流利读写的水平。因为项目的完成往往需要协同全球多个国家的同事,如果缺乏英文技能,在外企的发展是比较受限的。计划今后进入外资公司的朋友,一定要加强练习。
软条件是指性格、兴趣、职业规划等非直接呈现的能力。公司对于程序员一般会看重两种性格特质:爱技术、乐分享。
“爱技术”的人才会自发的钻研,不浮躁,也才会在这一行做得长久。对于这点,面试官可能希望了解你工作之外喜欢做什么。我听到过很多分享:经营自己的博客或者技术论坛;尝试新技术、新设备,学习新技术是一种乐趣而不是负担;当然,下次你可以说你平时喜欢阅读《程序员》。
“乐分享”的人才能带动团队整体进步。对于这点,面试官可能希望了解你在团队中是什么角色。有的人可能讲我是mentor,我们遇到技术问题时要内部讨论,我往往是能给出solution的人,所有人都解决不了,我们会求助于互联网——说明你不只愿意分享,而且有东西可以分享。
以前曾在面试中听说,程序员是青春饭,3~5年之后一定要转做manager。我觉得职业发展一定要切合自己的性格,并不是每个人都很享受并善于处理人事管理。有的资深开发人员转成manager几年之后,又转回纯技术(individualcontributor)。而资深技术人员对于公司是非常宝贵的财富,不管从受重视程度、薪资福利待遇都是非常有吸引力的。
程序员面试中,面试官会经常询问一些技术性的问题,有的问题可能比较简单,都是历年的笔试面试真题,求职者在平时的复习中经常遇到,应对自然不在话下,但有的题目可能比较难,来源于google、microsoft等大企业的.题库或是企业自己为了招聘需要设计的题库,求职者可能从来没见过或是从来都不能完整地、独立地想到解决方案,而这些题目往往又是企业比较关注的。
如何能够回答好这些技术性的问题呢?编者建议,对于简单的题目,求职者要努力做到完全正确,毕竟这些题目,只要复习得当,完全回答正确一点问题都没有(编者认识的一个朋友据说把《编程之美》、《编程珠玑》上面的技术性题目与答案全都背得滚瓜烂熟了,后来找工作简直成了“offer杀器”,完全就是一个bug,无解了),对于难度比较大的题目,不要惊慌,也不要害怕,即使无法完全做出来,也要努力思考问题,哪怕是半成品也要写出来,至少要把自己的思路表达给面试官,让面试官知道你的想法,而不是完全回答不会或是放弃,因为面试官很多时候除了关注你的独立思考问题的能力以外,还会关注你技术能力的可塑性,观察求职者是否能够在别人的引导下去正确地解决问题,所以,对于你不会的问题,他们很有可能会循序渐进地启发你去思考,通过这个过程,让他们更加了解你。
一般而言,在回答技术性问题时,求职者大可不必胆战心惊,除非是没学过的新知识,否则,一般都可以采用以下六个步骤来分析解决。
(1)勇于提问
面试官提出的问题,有时候可能过于抽象,让求职者不知所措,或是无从下手,所以,对于面试中的疑惑,求职者要勇敢的提出来,多向面试官提问,把不明确或是二义性的情况都问清楚。不用担心你的问题会让面试官烦恼,影响你的面试成绩,相反还对面试结果产生积极影响:一方面,可以给面试官一个心思缜密的好印象;另一方面,方便后续自己对问题的解答。
例如,面试官提出一个问题:设计一个高效的排序算法。求职者可能丈二的和尚摸不到头脑,排序对象时链表还是数组?数据类型是整型、浮点型、字符型还是结构体类型?数据基本有序还是杂乱无序?数据量,有多大,1000以内还是百万以上个数?此时,求职者大可以将自己的疑问提出来,问题清楚了,解决方案也自然就出来了。
(2)高效设计
(3)伪代码先行
有时候实际代码会比较复杂,上手就写很有可能会漏洞百出、条理混乱,所以,求职者可以首先征求面试官的同意,在编写实际代码前,写一个伪代码或是画好流程图,这样做往往会让思路更加清晰明了。
切记在写伪代码前要告诉面试官,他们很有可能对你产生误解,认为你只会纸上谈兵,实际编码能力却不行。只有征得了他们的允许,方可先写伪代码。
(4)控制节奏
如果是算法设计题,面试官都会给求职者一个时间限制用以完成设计,一般为20分钟左右。完成的太慢,会给面试官留下能力不行的印象,但完成的太快,如果不能保证百分百正确,也会给面试官留下毛手毛脚的印象,速度快当然是好事情,但只有速度,没有质量,速度快根本就不会面试中加分。所以,编者建议,回答问题的节奏最好不要太慢,也不要太快,如果实在是完成的比较快,也不要急于提交给面试官,最好能够利用剩余的时间,认真仔细地去检查一些边界情况、异常情况、极性情况等是否也能满足要求。
(5)规范编码
回答技术性问题时,多数都是纸上写代码,离开了编译器的帮助,求职者要想让面试官对自己的代码一看即懂,除了字迹要工整,不能眉飞色舞以外,最好是能够严格遵循编码规范:函数变量命名、换行缩进、语句嵌套、代码布局等,同时,代码设计应该具有完整性,保证代码能够完成基本功能、输入边界值能够得到正确的输出、对各种不合规范的非法输入能够做出合理的错误处理,否则,写出的代码即使无比高效,面试官也不一定看得懂或是看起来非常费劲,这些对面试成功都是非常不利的。
(6)精心测试
在软件界,有一句真理:任何软件都有bug。但不能因为如此,就纵容自己的代码,允许错误百出。尤其是在面试过程中,实现功能也许并不十分困难,困难的是在有限的时间内设计出的算法是否各种异常都得到了有效的处理,是否各种边界值都在算法设计的范围内,等等。
测试代码是让代码变得完备的高效方式之一,也是一名优秀程序员必备的素质之一。所以,在编写代码前,求职者最好能够了解一些基本的测试只是,做一些基本的单元测试,功能测试,边界测试以及异常测试。
其实,在面试时,求职者往往会存在一种思想误区,把技术性面试的结果看得太重要了。面试过程中的技术性问题,结果固然重要,但也并非最重要的内容,因为面试官看重的不仅仅是最终的结果,还包括求职者在解决问题的过程中体现出来的逻辑思维能力以及分析问题的能力。所以,求职者在与面试官的博弈中,要适当地提问,通过提问获取面试官的反馈信息,并抓住这些有用信息进行辅助思考,从而博得面试官的欢心,进而提高面试的成功率。
程序员职业规划篇八
java程序员职业规划第一步:
1、基础必备:至少看过2本语言基础书和一本领域技术书。
2、部分参与项目1-2个。
所需时间:3-12个月
java程序员职业规划第二步:
1、行业知识领悟、扩展相关应用知识。
2、完整参与项目1-2个。
3、可以指导新人完成工作。
所需时间:6-12个月
java程序员职业规划第三步:
1、深刻理解面对对象知识。熟悉常用架构,对公司采用的架构能提出改善意见。
2、参与需求讨论并能提出简化方案。
3、能为决策提出一些建议。
java程序员职业规划第四步:
1、能够对整体需求方案做出精确描述。
2、运用一种架构对项目、产品进行设计。
3、评估项目风险、以及预留方案。
4、实现核心组件、技术难关。
5、行业技术指导。
其次,java程序员职业规划要点
(1)只会编程是不够的
仔细思考在哪个商业领域投入时间。软件工程师(软件工程培训)不能只会开发软件,应该要成为这个业务领域的专家。你的行业经历应该成为你的重要才能。有机会多与公司行业内人士接触,选择一本与你公司行业有关的杂志,找一个行业网站。只有了解了一个行业后,你才能创造性地有所建树。学习行业是如何运转的,了解一些财务基本知识。
(2)在思维上投资
要学会抓住机遇。多学习新的技术,编程语言,可以改变你的思维方式。
(3)做一名通才
你的技术水平应该超越技术平台。经常学习一些新技术。
(4)成为一名专家
不仅应该会处理高端抽象,同时也应该了解实现高端抽象的低端细节。
(5)切忌孤注一掷
不要把自己的职业发展完全依赖于一家技术公司。
(6)寻找良师
可以依赖别人,但要确保这个人是靠得住的。良师的首要任务是榜样作用,还可以将你的学习过程形成体系,也是值得信任的朋友,可以帮助你作出职业导向,帮助你磨练技术。
(7)安分守己
要有雄心,但不必路人皆知。专注于现在的工作,不仅让你更加快乐,也会让你身边的人更加快乐。你的同事,上司和客户都能感觉到。你的工作成绩会反映出你的态度。放弃你想要成功的期望可以提高你的能力,让你走向成功。不要关注结果,要关注做事的过程。
(8)每天都有进步
如果在改善自己的道路上,每一天都比昨天多作出一点改变,就会发现—拥有卓越的职业生涯,越来越容易达成,而不再像汪洋大海一样没有边际。
程序员职业规划篇九
程序员的职业规划其实是一个很好做的东西,因为程序员不像是一般的职业那样那么的复杂,其实一个公司非常的有逻辑,要想做到程序员的职业规划,那么就根据我们的公司的不复杂的程度来制定我们的职业生涯计划!
首先程序员的职业规划其实是对于我们的程序员的一种帮助,当然了有些时候我们可能会觉得很麻烦,因为这是要话费很多的时间还有精力来完成的事情,有些时候不是一个人就能够独立的完成的,还的征求很多的意见,这是我们很难去接受的事情,但是如果我们真的不去做的话,概念又不会一样了,所以这个时候需要的使我们的不断的努力,去探索,最后找到一条我们能够使用的道路,这一条道路记录下来就是这个职业生涯规划!
那么程序员的职业规划第二点就是对于我们目前的职位的冲击,没有错,但是这不是一天就能够完成的事情,是需要更多的努力的,对于我们的职位的规划,一般来说都是按照年龄来计算的,有的时候可能会少一点,但是这也是没有关系的!
当然了程序员的职业规划使我们每一个程序员都要做的事情,几乎没有人能够逃避,所以这就需要我们的认真的对待还有对于程序员这个职位的努力,就算我们能够逃过这里,但是下一次呢,下一次说不定就不能够逃过了!
程序员职业规划篇十
当今社会,it行业发展速度突飞猛进,技术更新换代周期小,专业方向和领域更是林林总总、百家争鸣,若没有一个明确的目标而漫无目的的乱走一遭,岂不殆误时机,浪费年华?俗话说,欲行千里,先立其志。因此,要为自己拟定一份职业生涯规划,将自己的未来好好的设计一下。有了方向的指引,自然才会有乘风破浪之帆。
自我认知
“知己知彼,百战不殆”,进行职业规划首先要“知己”,即全面、深入、客观的分析和了解自己。
1)我的优点
热爱学习,对新鲜事物及不懂的知识有着浓厚兴趣,喜欢凡事问个为什么,有条件的话会不断钻研直至懂得原理为止;热爱工作,只要进入工作状态常常到达忘我境界,做事情考虑周全,以大局和未来为重,并且在懂得应用知识后会去了解知识背后的核心,从经验上升到理论。
2)我的缺点
过分自信,执着的有些过头;性格急躁,自控能力一般;自身专业知识水平、能力有待于进一步提高。
3)个人职业倾向
目前从事的是java服务端的软件开发工作,希望可以成为一名技术管理双能的工作者。
职业认知
程序员一般有两个大方向:技术与管理。
走技术路线的人,一定是对技术痴迷的人。但要走得长远,我们需要把技术做穿、做透。如何做穿、做透?计算机底层(c、汇编、逆向工程、驱动、内核)、计算机算法(网格计算、音视屏压缩、语音识别…)、架构(软件工程、跨平台、多语言等)都要有涉及。只有我们掌握了这些,才能做到”看问题看到本质”、”思想有穿透力”。这些才是最宝贵的,需要沉淀下来,仅仅靠做项目、写代码是无法达到的。
对于走管理路线的人,是具有“完成任务为第一要务”、“有计划、善于管理时间”、“善于与人打交道”性格特点的人,重要的是“综合素质”,而不是“专攻”。必须从思想上发生根本性转变:技术是解决问题,而管理则需要满足“多快好省”。
而本人对程序员职业的认知是:技术与管理并不是物理上的独立,而是相辅相成的。只做技术无法深刻理解全局思维,无法更好地为业务服务;而只做管理,则与程序员渐行渐远,最终成为一名行外的管理人员,无法在团队内部树立威望。因此,个人希望可以成为一名技术管理双能的工作者。
环境分析
程序员通常被认为是相当不错的工作,原因非常多。收入高,福利好(有可能非常好),工作富有挑战性(通常是正面积极的挑战),根据目前的就业形势和程序员的需求量,这种职业竞争压力很小。
但是,在国内的it环境下,要成为一名合格的程序员并不是容易的事。在国外,五六十岁还坐在电脑前敲代码的程序员比比皆是;则在国内,程序员则靠吃“青春饭”,三十岁还需要靠敲代码的程序员甚至被称为loser。这主要因为it技术的高速发展,程序员必须不断地更新专业知识,以适应社会的需求。而上了年纪的程序员由于思维和身体原因,无法与刚步入社会正值旺年的年轻一代的学习能力相提并论,只能苦苦挣扎在茫茫学海中,或被迫进入自己并不擅长的管理层面里。
当然,随着对程序员的认知越来越广泛,这种情况经已有所缓和,但是从教育角度上看来,国内形势还是十分严峻。现在各个大学、it培训机构为了赚钱拼命扩招,所以不仅it专业的学生人比较多,而且其他专业的学生人数也比较多,“僧多粥少”就通常意味着就业压力大。但是反过来看,现在很多it企业都存在“人才荒”的问题,也就是很多企业都招不到合适的人才,一些从事it人力资源方面工作的人都普遍反映现在企业里很难招到合适的人才。初看起来很奇怪“每年有很多it专业大学生毕业,很多都找不到工作”,而“企业每年都缺人,招不到合适的人才”,造成这种奇怪的“人才断层”现象的根本原因就是现在毕业生的素质明显下降了,大学招的人多也意味着教学资源平均下来降低了,培训机构为了赚更多的钱以最快的速度培训出一群“知其然不知其所以然”的学生,所以教育质量也降低了,这些就造成了“学生需要工作,企业需要人”的这种状况。
程序员职业规划篇十一
1、线性级:编程的时候好比低着头走路,脑子里完全不进行规划。就像盖房子的时候,一块砖一块砖的垒,想到哪就干到哪。结果越垒越庞大,后面的代码管理越来越混乱。这一境界相当于生产车间里的操作工,按照图纸根据工艺要求操作机器进行部件加工,至于零件在于整个设备中的功能和作用不了解,也不去考虑。这一境界的目标是把本工序工作做好。
2、逻辑级:掌握了一定算法经验,对于现实业务比较了解,能够撰写出一些模块和函数。逻辑比较严密,bug比较少。这一境界相当于生产车间里面的车间主任,需要对本车间的生产加工业务比较熟悉,还能自己设计出一些便利的工装器具,便于重复生产加工的时候,加快生产速度,保证加工质量。这一境界的目标是快速的高质量的把本车间工作做好。
3、架构级:掌握算法,熟悉现实业务。对软件进行架构,进行分层,指导团队成员按照统一的目标进行工作。这一境界相当于制造本部长,对于整个产品的生产过程都非常熟悉,协调各个车间的生产进度,按照一致的交付目标进行生产加工。这一境界的目标是把产品按质保量的做好。
4、工程级:按照项目管理的理念,对软件过程进行项目级管理。需要协调内外部各种资源进行统一工作。这一境界相当于事业部老总,需要协调市场销售、材料供应、内部生产等内外部多方面的资源实现经营目标。这一境界的目标是低成本、快速的交付产品让客户满意,实现营业利润。
程序员职业规划篇十二
在中国有很多人都认为it行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,及java方面的开发的也有8年的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下。
明确入行的目的
很多人干it这一行都冲着“收入高”这一点的,因为只要学会一点html、div+css,要做一个页面开发人员并不是一件难事,而且做一个页面开发人员更容易找到工作,收入比普通的工作还要高一些,所以成为了很多高校毕业生的选择。如果您只是抱着这样一个心态来入行的话,那阁下可真的要小心。因为干it这一行竞争本来就比较激烈,特别是页面设计这方面,能够开发的人很多,所以为了节省成本在大部分公司都会在需要的时候才招聘这类人员,在没有订单的时候一些小公司还可能找各类的借口或者以降薪的手段去开除这类员工。而在招聘信息上常常会看到“招聘页面设计师,条件:30岁以下……欢迎应界毕业生前来应聘”这样一条,因为这一类工员对技术上的要求并不高,找应界生可以节约成本。所以在下觉得“it行业是吃青春饭的”这句话只是对着以上这类人所说的,如果阁下缺乏“进取之心”,而只抱着“收入高,容易找工作”这样的态度而入行,那“it行业是吃青春饭”将会应验了。
选择合适的工具
java、c#、php、c++、vb……10多种热门的开发语言,哪一种最有发展潜力呢?其实开发语言只不过是一个工具,“与其分散进攻,不如全力一击”,无论是哪一种开发语言,只要您全力地去学习,到有了一定的熟悉程度的时候,要学习另一种的语言也是轻而易举的事情。开发语言主要分为三大类:
1. 网络开发
2. 企业软件开发
3. 系统软件
c语言、c++、object-c这些软件更多是用在系统软件开发,嵌入式开发的方面。
当然,这分类不是绝对,像java、c#、vb很多时候也用于动态网站的开发。在很开发项目都会使用集成开发的方式,同一个项目里面使用多种开发语言,各展所长,同步开发。但所以在刚入门的时候,建议您先为自己选择一种合适的开发工具,“专注地投入学习,全力一击”。
明确发展方向
当您对某种开发语言已经有了一定的了解,开始觉得自己如同“行尸走肉”,成为一个开发工具的时候,那您就应该要明确一下自己的发展方向了。
平常在公司,您可以看到做ui层的开发人员大多数都有20多岁,他们充满干劲,而且没有家庭负担, mvc 、silverlight等刚出现的时候,他们可以在晚上回家的时候买几本书或者直接上网看看,研究三五个星期以后,对需要用到技术就已经有一定的了解了。而年过30的人多数是已经成了家了,他们每天9:00点上班唯一的希望就是快些到6:00点,能回家吃饭。吃完饭只想陪孩子玩一下,看看孩子的功课,对新增的技术缺乏了学习的欲望。所以很多接近30岁的程序员都有着一种逼迫感(包括30岁时候的我自己),再过几年应该怎么办?这时候,您就更应该明确一下目标,努力向自己的发展方向前进了。归纳一下,可从下面几项里选择适合自己的一条道路:
1. 从技术向业务过渡
在国外,很多发达国家都很重视人才,一个高级的程序员与一个project manager收入相差一般不超过15%。(注:关于收入差距,请参见伯乐在线报导的这篇资讯《20xx年美国it从业人员的薪资调查》,有的甚至超过项目经理。)但中国是世界上人口最多的国家,国内人才众多,所以人才滥用的情况经常可以看到。一个小公司的开发部里面经常会见到新面孔,但pm却不会常换。因为做老板的对技术是一窍不通,依他们看来只到拉住pm的心,那技术方面方面就能搞得定,至于技术部要换人,他们根本不需要费力气去管。所以从一个技术员过渡到一个pm是一条向前发展的一个选择,但开发人员也需要知道,要成为一个pm不单单是使用技术,而更重要的是对管理方面认识。一个pm主要的工作是组织团队,控制成本,管理业务,控制项目进度,与客户进行沟通,协调工作,定期进行工作报告等。所以要成为一个成功的pm更要重视组织能力,pm必须能提高团队的积极性,发挥团队所长,在有限的开发资源前提下为公司得到最大程度上的利润。成为一个pm后,通常不需要直接接触技术开发,而着重管理的是业务发展,但pm对技术也需要有一定的了解(在下曾经为pm对技术了解的必要性写过一篇文章,得到很多支持但也惹来不少的争议)。在这里我还是要强调自己的观点:要成为一个成功pm最重视的是管理能力,但对技术也应该有足够的了解,因为这是与团队成员沟通的桥梁,只有这样才能与整个团队的成员有着紧密的结合,让团队成员感觉到他们自己存在的意义,从而调动团队的积极性,而不是漠视技术人员的存在。技术并非成为一个成功pm的充分条件但却是必要条件!
2. 从程序员向技术管理发展
其实一个team leader的职责与project manager相像,但team leader更着重于技术开发方面,通常一个大型项目都会有一两个开发团队由team leader带领,负责开发核心部分,而其它部分分派给不同开发小组或者分派给外包公司。在网上常看到几句话,贴切地形容了pm与tl的区别:“技术人员乐于被领导;但他们不喜欢被管理,不喜欢像牛一样被驱赶或指挥。管理者强迫人们服从他们的命令,而领导者则会带领他们一起工作。管理是客观的,没有个人感情因素,它假定被管理者没有思想和感受,被告知要做什么和该如何做。领导是引领、引导,它激励人们达成目标。领导力是带有强烈个人感情色彩的,它不是你能命令的,也不是你能测量评估和测试的。”
无论是pm与tl,对业务与技术都要有深入的了解,只是pm更侧重于业务的管理,盈利的多少,风险的大小等等,而tl则侧重于项目的成本,开发的难度,软件的架构等技术方面的问题。在某些人眼中,技术与管理就像鱼与熊掌,不可兼得,但依在下看来,两者却是秤不离砣,密不可分。只要及时提升自己对技术与管理的认识,不断地向深一层发展,要从程序员提升到技术管理人员只是时间的问题。打个比方,程序员,的页面开发,但一旦他有了发展之心, mvc、silverlight、winform、wpf这些ui的开发手法感到兴趣,学习不需要多少时间,他可能就会认识这些ui开发只不过是一些工具,其实在开发原理上没什么区别。接着他就会向深一层的通讯模式进行了解,认识tcp/ip、web service、wcf、remoting这些常用到的通讯方式,这时候他可能已经感觉到自己对开发技术有了进一步的了解。进而向工作流、设计模式、面向对象设计、领域驱动设计、面向服务开发等高层次进发,最后成为技术的领导者。上面只是一个比喻,但要注意的是,在学习的时期必须注意的是与同事之间沟通,很多的开发人员喜欢独来独往,开发的项目总想一个人搞定,不受外界的干扰。但要明白,就算你有天大的本事,一项大型的项目也不可能由你一个人全扛着。所以团队的合作性与同事间的沟通是必要的,这也是成功一个tl的必要条件。
3. 单方面向技术发展
能成功技术开发的尖端人才,这是在下最向往的工作,却也没本事登上这个位置。很多从事开发的人都会认为,业务总会带着“金钱的味道”,老板从来不管开发是否合符开发原则,有否经过必要测试,他们只会在客户面前无尽地吹嘘,项目到期能成功交货,只要不出什么大问题那这个项目就算成功了。其实我们也要明白:开发项目最终目标是为了赚钱,在开发过程中对项目成本的限制和效率的控制这也是必须,所以这才需要管理人员对项目进行管理。但开发人员也很想避开这 “金钱的尘嚣”,全情投入到技术的世界的当中。所以对技术有着浓厚兴趣的人,往往会深入地研究某一项技术,成为技术上的精英。但在这里说一句令人心淡的话:中国已经属于是世界上第二大经济体同盟国,但国民生产总值主要来源于第三方加工产业方面。中国可以说是人才济济,但却在高新产业上却比发达国家落后。这几年的确看到我们国家在高新科技上有着质的飞跃,但跟欧美发达国家还有着一段距离。所以想在中国成为尖端技术的人才,无可否定比在国外要难。依在下看来,要想成为尖端的开发者,必须对c、c++、汇编语言、嵌入式开发、windows api、linux api这些底层技术有着深入的了解。要知道解java、.net……等这些之所以称为高级开发语言,并不是指它们比c、c++、汇编语言更高级,而是指它们封装了c、c++等等的功能,更适合用于企业软件的开发,使开发变得简单。但如果要开发一些底层的软件,大型的系统的时候,就必须用到c、c++、汇编等开发语言,这是成功尖端人才的一个条件。
确定未来的目标
人是从历练中成长的,古人云:三十而立,形容的不是一个人的社会地位,经济来源,而是形容一个人对未来的目标,对人生的意向。要成为一个成功人,就应该早日为自己定下长期的发展目标,作为一个开发者也当如此。随着人的性格,取向各有不同,大家为自己所选择的路也有不同:
1.自立门户,勇敢创业
快30岁了,很多人会认为要想真正赚得了钱,就应该自立门户,为自己创业建立一个基础。像北京、上海、广州这些一级城市,要买房子,一手楼基本要在 2万~4万元/平方米左右,而在一家普通的it公司当上一个项目经理,基本收入一般都在1.5万~3万之间(除非在大型的跨国企业内工作,那另当别论),要买一间100平方米左右的房子,就算不吃不喝也几乎要10年的年薪,所以选择自主创业,是很多it开发人员的一个未来目标,想要达到这个目标,就应该更多地把业务作为重点。不可否认的一件事,在中国社会里很多时候讲的是“关系”,即使这30年的改革开放使中国的经济蓬勃地发展起来,但几千年来留下的歪风还是不能完全的磨灭。所以想要创业的人事建议你要多跟客户打好关系,与合作伙伴保持互利互动的模式,这将有利于日后事业的发展。
2. 急流勇退,退居二线
这也是不少人的选择。很多人在有了家庭以后,感觉到压力太大,人的一生并非只有事业,他们想把更多时间用于对亲人的照顾,对孩子的关心上。所以很多人会选择一份像系统分析、系统维护、高校教师、专业学院讲师这一类的工作。收入稳定,而且往往没有一线开发人员那么大的压力。
3. 不懈努力,更进一步
无论你是一个project manager或者是team leader,如果你想继续晋升一级,那还是会两极分化的。从一个pm到一间公司的管理层,那所面对的事件会有很多变化。一个公司的总经理,要管理的不再是一到两个项目的成本,而是整个部门的运作,整间公司的业务流程,所以要肩负的任务的会更重。在下曾经有一位上司彭博士,他是企业的最高领导人,年薪超过三百万,而且在报纸杂志上也曾经亮过相。平常只会在某些会议上轻轻地亮下相,说两句讲词,平常的公司运作与业务管理都不需要他直接执行。这并不是说一个作为管理层很清闲,因为他们要面对的是更多的社会关系,与公司合作企业的联系上。这跟一个pm的工作的很大的区别,所以要从一个pm晋升到管理层,那可是要负出更多的努力与汗水。
如果要从team leader上升为一个技术总监,那工作的方向也有所改变。像之前所说:一个tl可能更重视的是技术层面,讲求与团队之间的互动合作性,更注重的是开发的完善。而一个技术总监就无需要直接参加某个项目的开发,而注意的是开发的效率与成果,如何合理使用有限的开发资源,控制开发的风险和可能带来的效果。
发展感受
经历了8年多时间,在下从一个程序员到一个项目经理,之间经过很多的曲折,但因为每一个人的际遇都有所不同,所走的路也有不同,正所谓条条大路通罗马,成功的路不止一条,在下也不想令各位误解,而只想为大家说一下我的发展方向。如果您是一位开发人员 程序员-架构师-team leader(project manager)-技术总监 是一条不错路,这也是在下选择的路。在我国,想要进一步提升自己,无论你想是以技术为重点还是以业务为重点,都离不开管理二字。在一些大型的企业,一个团队往往会配备一个pm与一个架构师,尽管两个人负责的任务各有不同,但你会看到一个架构师的收入往往不如一个pm,pm往往是这个团队的核心领导者,是关键人物。因为公司能否赚钱,pm有着重要的作用。pm与tl并没有绝对的区别,而且在一些中小型企业,一个开发团队只有3~5人,一个tl往往会兼备业务处理、成本控件、架构设计、开发管理等多项任务。所以在下会把team leader与project manager定于同一层次,一个公司的老板往往不会知道团队的架构师、程序员是何人,而只会向pm询问项目的进度,所以只有晋升到这个层次,才有机会进一步提升管理能力,让自己有上升的空间。置于要成为一个技术总监,那要求就不再单单是对单个项目的管理,而应该更则重于新兴技术的引用,开发资源的合理利用,对开发项目敏捷性的处理等等,对此在下也在试探当中,未敢多言。
程序员职业规划篇十三
在中国有很多人都认为it行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!那么程序员怎么做职业规划?程序员的职业规划怎么做呢?下面不妨看看小编整理的文章吧。
明确入行的目的
很多人干it这一行都冲着“收入高”这一点的,因为只要学会一点html、div+css,要做一个页面开发人员并不是一件难事,而且做一个页面开发人员更容易找到工作,收入比普通的工作还要高一些,所以成为了很多高校毕业生的选择。如果您只是抱着这样一个心态来入行的话,那阁下可真的要小心。因为干it这一行竞争本来就比较激烈,特别是页面设计这方面,能够开发的人很多,所以为了节省成本在大部分公司都会在需要的时候才招聘这类人员,在没有订单的时候一些小公司还可能找各类的借口或者以降薪的手段去开除这类员工。而在招聘信息上常常会看到“招聘页面设计师,条件:30岁以下……欢迎应界毕业生前来应聘”这样一条,因为这一类工员对技术上的要求并不高,找应界生可以节约成本。所以在下觉得“it行业是吃青春饭的”这句话只是对着以上这类人所说的,如果阁下缺乏“进取之心”,而只抱着“收入高,容易找工作”这样的态度而入行,那“it行业是吃青春饭”将会应验了。
选择合适的工具
java、c#、php、c++、vb……10多种热门的开发语言,哪一种最有发展潜力呢?其实开发语言只不过是一个工具,“与其分散进攻,不如全力一击”,无论是哪一种开发语言,只要您全力地去学习,到有了一定的熟悉程度的时候,要学习另一种的语言也是轻而易举的事情。开发语言主要分为三大类:
1. 网络开发
2. 企业软件开发
3. 系统软件
c语言、c++、object-c这些软件更多是用在系统软件开发,嵌入式开发的方面。
当然,这分类不是绝对,像java、c#、vb很多时候也用于动态网站的开发。在很开发项目都会使用集成开发的方式,同一个项目里面使用多种开发语言,各展所长,同步开发。但所以在刚入门的时候,建议您先为自己选择一种合适的开发工具,“专注地投入学习,全力一击”。
明确发展方向
当您对某种开发语言已经有了一定的了解,开始觉得自己如同“行尸走肉”,成为一个开发工具的时候,那您就应该要明确一下自己的发展方向了。
平常在公司,您可以看到做ui层的开发人员大多数都有20多岁,他们充满干劲,而且没有家庭负担, mvc 、silverlight等刚出现的时候,他们可以在晚上回家的时候买几本书或者直接上网看看,研究三五个星期以后,对需要用到技术就已经有一定的了解了。而年过30的人多数是已经成了家了,他们每天9:00点上班唯一的希望就是快些到6:00点,能回家吃饭。吃完饭只想陪孩子玩一下,看看孩子的功课,对新增的技术缺乏了学习的欲望。所以很多接近30岁的程序员都有着一种逼迫感(包括30岁时候的我自己),再过几年应该怎么办?这时候,您就更应该明确一下目标,努力向自己的发展方向前进了。归纳一下,可从下面几项里选择适合自己的一条道路:
1. 从技术向业务过渡
在国外,很多发达国家都很重视人才,一个高级的程序员与一个project manager收入相差一般不超过15%。(注:关于收入差距,请参见伯乐在线报导的这篇资讯《2011年美国it从业人员的薪资调查》,有的甚至超过项目经理。)但中国是世界上人口最多的国家,国内人才众多,所以人才滥用的情况经常可以看到。一个小公司的开发部里面经常会见到新面孔,但pm却不会常换。因为做老板的对技术是一窍不通,依他们看来只到拉住pm的心,那技术方面方面就能搞得定,至于技术部要换人,他们根本不需要费力气去管。所以从一个技术员过渡到一个pm是一条向前发展的一个选择,但开发人员也需要知道,要成为一个pm不单单是使用技术,而更重要的是对管理方面认识。一个pm主要的工作是组织团队,控制成本,管理业务,控制项目进度,与客户进行沟通,协调工作,定期进行工作报告等。所以要成为一个成功的pm更要重视组织能力,pm必须能提高团队的积极性,发挥团队所长,在有限的开发资源前提下为公司得到最大程度上的利润。成为一个pm后,通常不需要直接接触技术开发,而着重管理的是业务发展,但pm对技术也需要有一定的了解(在下曾经为pm对技术了解的必要性写过一篇文章,得到很多支持但也惹来不少的争议)。在这里我还是要强调自己的观点:要成为一个成功pm最重视的是管理能力,但对技术也应该有足够的了解,因为这是与团队成员沟通的桥梁,只有这样才能与整个团队的成员有着紧密的结合,让团队成员感觉到他们自己存在的意义,从而调动团队的积极性,而不是漠视技术人员的存在。技术并非成为一个成功pm的充分条件但却是必要条件!
2. 从程序员向技术管理发展
其实一个team leader的职责与project manager相像,但team leader更着重于技术开发方面,通常一个大型项目都会有一两个开发团队由team leader带领,负责开发核心部分,而其它部分分派给不同开发小组或者分派给外包公司。在网上常看到几句话,贴切地形容了pm与tl的区别:“技术人员乐于被领导;但他们不喜欢被管理,不喜欢像牛一样被驱赶或指挥。管理者强迫人们服从他们的命令,而领导者则会带领他们一起工作。管理是客观的,没有个人感情因素,它假定被管理者没有思想和感受,被告知要做什么和该如何做。领导是引领、引导,它激励人们达成目标。领导力是带有强烈个人感情色彩的,它不是你能命令的,也不是你能测量评估和测试的。”
无论是pm与tl,对业务与技术都要有深入的了解,只是pm更侧重于业务的管理,盈利的多少,风险的大小等等,而tl则侧重于项目的成本,开发的难度,软件的架构等技术方面的问题。在某些人眼中,技术与管理就像鱼与熊掌,不可兼得,但依在下看来,两者却是秤不离砣,密不可分。只要及时提升自己对技术与管理的认识,不断地向深一层发展,要从程序员提升到技术管理人员只是时间的问题。打个比方,程序员,的页面开发,但一旦他有了发展之心, mvc、silverlight、winform、wpf这些ui的开发手法感到兴趣,学习不需要多少时间,他可能就会认识这些ui开发只不过是一些工具,其实在开发原理上没什么区别。接着他就会向深一层的通讯模式进行了解,认识tcp/ip、web service、wcf、remoting这些常用到的通讯方式,这时候他可能已经感觉到自己对开发技术有了进一步的了解。进而向工作流、设计模式、面向对象设计、领域驱动设计、面向服务开发等高层次进发,最后成为技术的领导者。上面只是一个比喻,但要注意的是,在学习的时期必须注意的是与同事之间沟通,很多的开发人员喜欢独来独往,开发的项目总想一个人搞定,不受外界的干扰。但要明白,就算你有天大的本事,一项大型的项目也不可能由你一个人全扛着。所以团队的合作性与同事间的沟通是必要的,这也是成功一个tl的必要条件。
3. 单方面向技术发展
能成功技术开发的尖端人才,这是在下最向往的工作,却也没本事登上这个位置。很多从事开发的人都会认为,业务总会带着“金钱的味道”,老板从来不管开发是否合符开发原则,有否经过必要测试,他们只会在客户面前无尽地吹嘘,项目到期能成功交货,只要不出什么大问题那这个项目就算成功了。其实我们也要明白:开发项目最终目标是为了赚钱,在开发过程中对项目成本的限制和效率的控制这也是必须,所以这才需要管理人员对项目进行管理。但开发人员也很想避开这 “金钱的尘嚣”,全情投入到技术的世界的当中。所以对技术有着浓厚兴趣的人,往往会深入地研究某一项技术,成为技术上的精英。但在这里说一句令人心淡的话:中国已经属于是世界上第二大经济体同盟国,但国民生产总值主要来源于第三方加工产业方面。中国可以说是人才济济,但却在高新产业上却比发达国家落后。这几年的确看到我们国家在高新科技上有着质的.飞跃,但跟欧美发达国家还有着一段距离。所以想在中国成为尖端技术的人才,无可否定比在国外要难。依在下看来,要想成为尖端的开发者,必须对c、c++、汇编语言、嵌入式开发、windows api、linux api这些底层技术有着深入的了解。要知道解java、.net……等这些之所以称为高级开发语言,并不是指它们比c、c++、汇编语言更高级,而是指它们封装了c、c++等等的功能,更适合用于企业软件的开发,使开发变得简单。但如果要开发一些底层的软件,大型的系统的时候,就必须用到c、c++、汇编等开发语言,这是成功尖端人才的一个条件。
确定未来的目标
人是从历练中成长的,古人云:三十而立,形容的不是一个人的社会地位,经济来源,而是形容一个人对未来的目标,对人生的意向。要成为一个成功人,就应该早日为自己定下长期的发展目标,作为一个开发者也当如此。随着人的性格,取向各有不同,大家为自己所选择的路也有不同:
1.自立门户,勇敢创业
快30岁了,很多人会认为要想真正赚得了钱,就应该自立门户,为自己创业建立一个基础。像北京、上海、广州这些一级城市,要买房子,一手楼基本要在 2万~4万元/平方米左右,而在一家普通的it公司当上一个项目经理,基本收入一般都在1.5万~3万之间(除非在大型的跨国企业内工作,那另当别论),要买一间100平方米左右的房子,就算不吃不喝也几乎要10年的年薪,所以选择自主创业,是很多it开发人员的一个未来目标,想要达到这个目标,就应该更多地把业务作为重点。不可否认的一件事,在中国社会里很多时候讲的是“关系”,即使这30年的改革开放使中国的经济蓬勃地发展起来,但几千年来留下的歪风还是不能完全的磨灭。所以想要创业的人事建议你要多跟客户打好关系,与合作伙伴保持互利互动的模式,这将有利于日后事业的发展。
2. 急流勇退,退居二线
这也是不少人的选择。很多人在有了家庭以后,感觉到压力太大,人的一生并非只有事业,他们想把更多时间用于对亲人的照顾,对孩子的关心上。所以很多人会选择一份像系统分析、系统维护、高校教师、专业学院讲师这一类的工作。收入稳定,而且往往没有一线开发人员那么大的压力。
3. 不懈努力,更进一步
无论你是一个project manager或者是team leader,如果你想继续晋升一级,那还是会两极分化的。从一个pm到一间公司的管理层,那所面对的事件会有很多变化。一个公司的总经理,要管理的不再是一到两个项目的成本,而是整个部门的运作,整间公司的业务流程,所以要肩负的任务的会更重。在下曾经有一位上司彭博士,他是企业的最高领导人,年薪超过三百万,而且在报纸杂志上也曾经亮过相。平常只会在某些会议上轻轻地亮下相,说两句讲词,平常的公司运作与业务管理都不需要他直接执行。这并不是说一个作为管理层很清闲,因为他们要面对的是更多的社会关系,与公司合作企业的联系上。这跟一个pm的工作的很大的区别,所以要从一个pm晋升到管理层,那可是要负出更多的努力与汗水。
如果要从team leader上升为一个技术总监,那工作的方向也有所改变。像之前所说:一个tl可能更重视的是技术层面,讲求与团队之间的互动合作性,更注重的是开发的完善。而一个技术总监就无需要直接参加某个项目的开发,而注意的是开发的效率与成果,如何合理使用有限的开发资源,控制开发的风险和可能带来的效果。
发展感受
程序员职业规划篇十四
程序员一般指利用计算机机进行程序设计开发的技术人员。程序员包括程序设计师和程序编码员。
程序员分类
按水平来分程序员一般分为初级程序员,中级程序员,高级程序员,系统架构师等。
按照所使用的编程语言来分,程序员又分为:c/c++程序员、php程序员、java程序员、delphi程序员、net程序员、asp程序员等。
按照面向的开发平台来划分,程序员可以分为web程序员、移动开发程序员,对进行移动设备程序开发的人员来说,针对的操作系统不同,还可以分为针对苹果ios程序员以及针对安卓andriod程序员。
程序员的职业发展规划
程序员从技能的角度来讲,从初级程序员,通过不断学习,发展为中级高级程序员,甚至是系统架构师,是技术路线。如果一个程序员的水平不断进步,在高级程序员或架构师之后,可以尝试开发经理以及技术总监类管理职位,其中开发经理的管理职能并不突出,而技术总监就是一个比较重要的部门管理岗位了。
如果换行业,程序员最适合的行业,一是产品经理类职位,二是项目管理类职位,程序员改做产品经理,因为对技术对程序有比较好的理解,在以后的工作中,和技术部门进行的沟通会更好,能够在产品设计之前,考虑到技术方面可能遇到的问题,提高效率。
程序员笑话
一个计算机系学生坐在树下学习,又有一个计算机系学生骑着一辆很炫的自行车经过。前一个学生问道:“你的车从哪儿弄来的?”骑车的回答说:“我在外面学习的时候,一个漂亮的mm骑着车过来,她脱光了所有的衣服对我说,‘你想要什么我都给你’。”“明智的选择!你穿她的衣服肯定不合适的。”前一个学生说道。
一男子在路边一根接着一根地抽烟。一个女士走过来对他说:“嘿,你不知道你是在慢性自杀吗?注意看看烟盒上的警告信息。”“没关系”,男子悠然自得地又吸了一口:“我是个程序员。”“嗯?这和你是程序员有什么关系?”“我们一点儿也不在乎警告(warning),我们只在乎错误(error)。”
一百万只猴子,给他们一百万个键盘,其中的一个会写出java程序,其它的写的都是perl程序。
十个顶尖软件工程师参加培训管理人员的课程。老师提出了这样一个问题:“假如你供职的公司是为航空电子设备提供软件的。有一天你乘飞机出差,当你上了飞机后你发现一个牌子上写着这个飞机用的是你的团队开发的beta版软件,你会下飞机吗?”
九个软件工程师举了手。老师看着第十个问道:“你为什么愿意留在飞机上?”这人回答说:“如果是我的团队写的这个软件,飞机根本无法起飞,根本谈不上坠毁。”
为什么程序员总是分不清万圣节和圣诞节?因为oct31==dec25。
换一个电灯泡需要几个微软程序员?一个也不要,他们会把黑暗变成标准然后告诉每个人:“我们就是这么设计的。”
一个微软工程师正走在路上,突然听到一只青蛙说:“如果你吻我一下的话,我就会变成漂亮的女人,我们可以结婚,从此幸福地生活在一起。”工程师看着青蛙想了一下,抓起它轻轻地放在自己的上衣口袋里。青蛙把头伸出来说:“怎么,你不准备吻我吗?”“是的”,工程师说:“我在微软工作,没有时间娶妻——不过有一只会说话的青蛙还是挺酷的。”
换一个电灯泡需要几个c++程序员?你还在用面向过程的思维考虑问题。一个设计良好的电灯泡类必然封装了换灯泡的方法,所以你要做的就是调用“换电灯泡”方法。
两个程序员在聊天:“我昨天碰到个辣妹。我把她带回家,马上就开始如饥似渴地亲吻,她就坐在我的键盘上,然后……”“你在家里也有台电脑?cpu是什么型号的?”
一个存放了一半数据的数组:悲观的程序员觉得数组是半空的。乐观的程序员觉得数组是半满的。真正的程序员?觉得数组占用的空间过大,需要调用realloc()。
那条狗就进去申请,但是被拒绝了。
我不能雇一条狗在公司里做事。」经理说。
狗不服气,指着告示上「均等机会」几字抗议。
经理没法,叹了口气,不屑地问道:「你会编程吗?」
那条狗默默地走到电脑前,编了个程序,运作准确。
「你有团队精神吗?」经理问。
那条狗掉头看了看门外,一大群野狗在外面虎视耽耽。
「我真的不能雇狗做这份工作。」经理气急败坏地说。
「就算会编程、有团队精神,但是我需要的雇员至少要能精通两种语言。」
那条狗抬头看着经理说:「喵-汪。」
程序员职业规划篇十五
日子总是像从指尖流过的细沙,在不经意间悄然滑落,我们又有了新的工作,我想我们需要好好地做个职业规划了。相信大家又在为写职业规划犯愁了吧!以下是小编收集整理的程序员职业规划心得,欢迎大家借鉴与参考,希望对大家有所帮助。
首先你要明确入行的目的,你是深深的热爱着编程还是只是因为程序员是个高薪的职业呢?如果是后者,那么不好意思,你需要慎重的选择。
在中国,程序员并不是一个很好地称呼。程序员似乎象征着邋遢,宅,甚至是it民工。记得有一期非诚勿扰上面,上去一个男嘉宾,开场说他是搞java的,台上女嘉宾的灯全灭了。是不是很可笑,很可悲?而且只有你真正的进入这个行业你才清楚,这个看上去还不错的薪水,你却付出了超过薪水价值的代价。创业型与游戏型公司里面的项目小组一般是5~10个人,因为他们需要快速的开发以应对多变的市场波动,所以程序猿的每天工作时长都在12小时以上,身体和精神收到摧残不说。作为程序猿的你很少有时间去陪陪自己的家人、自己的女友。
如果作为前者,你是因为深深的热爱着编程,那么恭喜你,你有着一颗hacker的心,属于那些愿意做一些有挑战性的事情的人。就如why the lucky stiff所说:“当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题。”
当你开始编程,开始创造的时候,开始享受的时候,一切外界的评论,都挡不住你对技术对创造的热爱。但是,我不得已要泼你一盆冷水,来提醒你一下。你是否准备好了忍受寂寞,也许你面对的是十年寒窗无人问,若你没有熬住,也许就等不到一朝成名天下知的时刻。技术是永无止境的,好的程序员必须保持对于新的技术敏感度,保持学习的热情。stay hungry,stay foolish。
明确了目的,那么你应该规划下自己的`职业生涯。
宏观的讲,个人认为我们需要经历三个阶段:深度、广度、高度。
高度:这个层面往往体现在规划能力,能够看到未来业务的发展,设计出相对合理的架构满足未来业务的快速扩展。这个阶段应该是少参与到具体的编码中去,应该是一个公司的cto或者首席架构师角色。这个方面的能力比较虚,相对来说也是最难炼成的。
广度:就是知识领域的广度。反映在it技能上,就是所掌握的领域,比如:net,java,数据库,web,前端等等。不一定每个领域都能够精通,但是至少都能了解,能够在面对问题的时候能够拿出一个切实可行的解决方案。对于跨领域方面,可能是你的沟通能力,管理能力等。
深度:在某一领域有很深入的了解,旺旺是一门具体的技术。比如js代码写的很精通,数据库知识非常丰富,精通linux操作系统底层。
深度—广度—高度,越往上,要求的抽象能力越高,越往下,要求细节知识越具体。一个人往往具备了以上三样,就是一个成功的大牛。
微观的讲,。已经工作两年以上的程序员可以有几种基本的职业规划:技术专家、软件架构师、实施顾问或销售。对大多数人来说,首先是要专,在技术上做的比较深入,然后进行工作调整,把自己转变为某个领域的专家,第三步,根据自己的情况,来选择技术还是管理。
有了自己的规划,最重要的是执行。我认为很多漂亮的计划都会因为执行力不够而夭折。一个一流的计划经过二流的执行,甚至不如三流。而一个三流的计划,经过一流的执行,也许就能达到二流。所以从计划本身来说,执行往往更重要些。
程序员职业规划篇十六
首先你要明确入行的目的,你是深深的热爱着编程还是只是因为程序员是个高薪的职业呢?如果是后者,那么不好意思,你需要慎重的选择。
在中国,程序员并不是一个很好地称呼。程序员似乎象征着邋遢,宅,甚至是it民工。记得有一期非诚勿扰上面,上去一个男嘉宾,开场说他是搞java的,台上女嘉宾的灯全灭了。是不是很可笑,很可悲?而且只有你真正的进入这个行业你才清楚,这个看上去还不错的薪水,你却付出了超过薪水价值的代价。创业型与游戏型公司里面的项目小组一般是5~10个人,因为他们需要快速的开发以应对多变的市场波动,所以程序猿的每天工作时长都在12小时以上,身体和精神收到摧残不说。作为程序猿的你很少有时间去陪陪自己的家人、自己的女友。
如果作为前者,你是因为深深的热爱着编程,那么恭喜你,你有着一颗hacker的心,属于那些愿意做一些有挑战性的事情的人。就如stiff所说:“当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题。”
当你开始编程,开始创造的时候,开始享受的时候,一切外界的评论,都挡不住你对技术对创造的热爱。但是,我不得已要泼你一盆冷水,来提醒你一下。你是否准备好了忍受寂寞,也许你面对的是十年寒窗无人问,若你没有熬住,也许就等不到一朝成名天下知的时刻。技术是永无止境的,好的程序员必须保持对于新的技术敏感度,保持学习的热情。stay hungry,stay foolish。
明确了目的,那么你应该规划下自己的职业生涯。
宏观的讲,个人认为我们需要经历三个阶段:深度、广度、高度。
高度:这个层面往往体现在规划能力,能够看到未来业务的发展,设计出相对合理的架构满足未来业务的快速扩展。这个阶段应该是少参与到具体的编码中去,应该是一个公司的cto或者首席架构师角色。这个方面的能力比较虚,相对来说也是最难炼成的。
广度:就是知识领域的广度。反映在it技能上,就是所掌握的领域,比如:net,java,数据库,web,前端等等。不一定每个领域都能够精通,但是至少都能了解,能够在面对问题的时候能够拿出一个切实可行的解决方案。对于跨领域方面,可能是你的沟通能力,管理能力等。
深度:在某一领域有很深入的了解,旺旺是一门具体的技术。比如js代码写的很精通,数据库知识非常丰富,精通linux操作系统底层。
深度—广度—高度,越往上,要求的抽象能力越高,越往下,要求细节知识越具体。一个人往往具备了以上三样,就是一个成功的大牛。
微观的讲,。已经工作两年以上的程序员可以有几种基本的职业规划:技术专家、软件架构师、实施顾问或销售。对大多数人来说,首先是要专,在技术上做的比较深入,然后进行工作调整,把自己转变为某个领域的专家,第三步,根据自己的情况,来选择技术还是管理。
有了自己的规划,最重要的是执行。我认为很多漂亮的计划都会因为执行力不够而夭折。一个一流的计划经过二流的执行,甚至不如三流。而一个三流的计划,经过一流的执行,也许就能达到二流。所以从计划本身来说,执行往往更重要些。
程序员职业规划篇十七
导语:小编为您推荐程序员职业规划范文,欢迎阅读!
在就业压力日趋激烈的今天,一个良好的职业规划无疑增加了一份自信.而如今,身为大学生的我们,在一天天消磨时光的日子里,不如多学习点知识来充实自己.未来掌握在自己手中,趁现在还年轻,赶紧为自己的未来之路定好一个方向,一个好的规划就像灯塔一样为我们指明了方向,我们可以按照这个方向前进!
1)兴趣爱好:
2)特长:
数据库维护管理,熟悉c、java、delphi、vb语言,精通c#语言,熟练掌握office 系列。
3)人格描述:
·依靠理智的思考来做决定,总是采取客观、合乎逻辑的步骤。
·谨慎而传统,重视稳定性、合理性;天生独立,需要把大量的精力倾注到工作中,并希望其它人也是如此,善于聆听并喜欢将事情清晰而条理的安排好。
·喜欢先充分收集各种信息,然后根据信息去综合考虑实际的解决方法,而不是运用理论去解决。对细节非常敏感,有很实际的判断力,决定时能够运用精确的证据和过去的经验来支持自己的观点,并且非常系统有条不紊。
·是一个认真而严谨的人,勤奋而负有责任感,认准的事情很少会改变或气馁, 做事深思熟虑,信守承诺并值得信赖。
·看问题有很强的批判性,通常持怀疑态度,需要时常的换位思考,更广泛的收集信息,并理智的评估自己的行为带来的可能后果。
4)在工作和学习中的优势
1.办事精确,希望第一次就能把工作做好
2.乐意遵循确定的日常安排和传统的方针政策,是组织忠诚的维护者、支持者
3.每次都能十分专注地把注意力集中在一个项目或任务上
4.特别能够专心细致地工作,可以不需要别人的合作独立工作
5.灵敏的组织能力
6.一丝不苟、认真专注地对待具体问题、事实和细节
7.相信传统模式的可取之处,并且能够遵循传统模式
8.非常强的责任意识;别人可以信任你实现自己的诺言
9. 通情达理、视角现实10. 有稳定平和的心态
5.)在工作和学习中的不足
1.不愿意尝试、接受新的和未经考验的观点和想法
2.对变化感到不安,可能会有些僵硬、死板;排斥革新
3.对需要很长时间才能完成的任务缺乏耐心
4.有时会由于近期目标而忽略长远需要
5.不愿意促成必要的改变,不愿意支持有风险的行为
6.见到实际应用后的结果才肯接受新观点
7.不能理解与他们自己的要求不同的要求
8.对自己及自己对组织的贡献估计过低
9.缺乏挑战精神,对失败和挫折的承受力差
10.缺乏相应的.工作经验
6)相应措施
针对我的缺点与不足,我应该采取一定的措施来弥补我的缺陷:
1.避免墨守陈规,需要尝试新的东西 ;要有开放态度,敢于尝试探索新的可能性
2.考虑问题要更全面周到,需要考虑人的因素 ,不单单只考虑自己的利益和感受
3.对那些与我观点不同的人保持足够的耐心和虚心
4.适合的时候,主动承担一些工作
5.正确看待失败,碰到困难不随意放弃
6.增强做事的灵活性,学会变通的看待和接受新事物
对于“计算机”这门专业来说,人们都普便会使用,它很方便、快捷、时尚。是人们生活中必不可少的。但是它又是一门很难的学文,学习起来难。要成为一个高水平的it人员尤为艰难。要把难变容易就是先去培养能力和去兼职做些我们能做的工作,积累经验,然后才是创业,创出一点我们的的东西,我们的位置,达到我们想要的目的。所以我在此为自己写下了规划书。如下:
首先,没有绝对领先的技术,且没有相关经验,资本,人脉等。在计算机这种把世界变成地球村的行业里面,要么第一,要么有特色,要么倒闭。“一山不容二虎”,地球变成一个村,就是一座山头啦,哪容那么多老虎抢东西吃呢?所以先确定一个创业的期限。世界在不断的快速变化,市场也是,人也是,所以,要不断的跟踪市场,不断的进行技术与能力更新,给自己确定一个里程碑,一般来说,你要做一个项目或者一个产品,最好不要超过6个月,最多是一年,否则到时候市场离你的创意已经很远了。
再次,关键还是找适合自己的公司,特别是那些很有希望马上上市的公司。不过,这又谈何容易呢?一个在校学生,根本不了解国内外业内的一些动态,根本不了解国内牛人的公布情况,拿不到任何相关的数据,凭什么东西做分析?凭一时意气用事吗?这个到时候肯定会挂得很惨。当然,这是我的想法,这也是一个非常痛苦的过程,寂寞、压力、疲劳会时刻伴随着我们,但如果你明白,我们做为一个打工人,我们在这个时期是没有退路可言的,只有向前,才能看到阳光、蓝天、白云!
总之,我有一个观点,最好就是去一些大公司实习,了解一下业内的动态和国内外牛人的分布情况,尽可能积累一点人脉。至于以后怎么选择,做技术还是不做技术,做技术是做研究还是做工程,是想办法往全的方向发展还是往专的方向发展,这都是要权衡的问题。以后的事情说不准,下个学期的计划出了,先做好眼前的事,然后每天过得开心点,也希望以后也会过得很开心!
适合的岗位性质:
·工作环境稳定,不需要太多的冒险和变动,最好依照经验和规律解决事情