手机阅读

2023年程序员职业规划(实用15篇)

格式:DOC 上传日期:2023-11-11 10:28:58 页码:10
2023年程序员职业规划(实用15篇)
2023-11-11 10:28:58    小编:黄友能

总结是自我认知的过程,让我们更好地了解自己的强项和待提升的方向。完美的总结需要全面而客观地回顾过去的经历。以下是一些具体事例和详细分析,希望能够为您提供一些实用的参考和建议。

程序员职业规划篇一

java程序员职业规划是每一个java的学习者的必经之路,我们之所以要制作我们的职业生涯规划一个重要的问题就是我们需要明白我们的目标,这个时候java程序员职业规划就是一个很好的方向盘,它能够很好的指引我们前进!

当然了java程序员职业规划的下一步就是我们要不断的去找好我们其他的项目来做,只有这样我们才能够有真正的被看上的价值,因为如果我们不努力的去做出贡献的话,公司只会觉得你是在混日子,那么这样的话,就会非常的危险,所以我们要做到的就是不懈的努力!

程序员职业规划篇二

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行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,及java方面的开发的也有8年的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下。

明确入行的目的。

很多人干it这一行都冲着“收入高”这一点的,因为只要学会一点html、p+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.从技术向业务过渡。

在国外,很多发达国家都很重视人才,一个高级的程序员与一个projectmanager收入相差一般不超过15%。(注:关于收入差距,请参见伯乐在线报导的这篇资讯《20xx年美国it从业人员的薪资调查》,有的甚至超过项目经理。)但中国是世界上人口最多的国家,国内人才众多,所以人才滥用的情况经常可以看到。一个小公司的开发部里面经常会见到新面孔,但pm却不会常换。因为做老板的对技术是一窍不通,依他们看来只到拉住pm的心,那技术方面方面就能搞得定,至于技术部要换人,他们根本不需要费力气去管。所以从一个技术员过渡到一个pm是一条向前发展的一个选择,但开发人员也需要知道,要成为一个pm不单单是使用技术,而更重要的是对管理方面认识。一个pm主要的工作是组织团队,控制成本,管理业务,控制项目进度,与客户进行沟通,协调工作,定期进行工作报告等。所以要成为一个成功的pm更要重视组织能力,pm必须能提高团队的积极性,发挥团队所长,在有限的开发资源前提下为公司得到最大程度上的利润。成为一个pm后,通常不需要直接接触技术开发,而着重管理的是业务发展,但pm对技术也需要有一定的了解(在下曾经为pm对技术了解的必要性写过一篇文章,得到很多支持但也惹来不少的争议)。在这里我还是要强调自己的观点:要成为一个成功pm最重视的是管理能力,但对技术也应该有足够的了解,因为这是与团队成员沟通的桥梁,只有这样才能与整个团队的成员有着紧密的结合,让团队成员感觉到他们自己存在的意义,从而调动团队的积极性,而不是漠视技术人员的存在。技术并非成为一个成功pm的充分条件但却是必要条件!

2.从程序员向技术管理发展。

其实一个teamleader的职责与projectmanager相像,但teamleader更着重于技术开发方面,通常一个大型项目都会有一两个开发团队由teamleader带领,负责开发核心部分,而其它部分分派给不同开发小组或者分派给外包公司。在网上常看到几句话,贴切地形容了pm与tl的区别:“技术人员乐于被领导;但他们不喜欢被管理,不喜欢像牛一样被驱赶或指挥。管理者强迫人们服从他们的命令,而领导者则会带领他们一起工作。管理是客观的,没有个人感情因素,它假定被管理者没有思想和感受,被告知要做什么和该如何做。领导是引领、引导,它激励人们达成目标。领导力是带有强烈个人感情色彩的,它不是你能命令的,也不是你能测量评估和测试的。”

无论是pm与tl,对业务与技术都要有深入的了解,只是pm更侧重于业务的管理,盈利的多少,风险的大小等等,而tl则侧重于项目的成本,开发的难度,软件的架构等技术方面的问题。在某些人眼中,技术与管理就像鱼与熊掌,不可兼得,但依在下看来,两者却是秤不离砣,密不可分。只要及时提升自己对技术与管理的认识,不断地向深一层发展,要从程序员提升到技术管理人员只是时间的问题。打个比方,程序员,的页面开发,但一旦他有了发展之心,mvc、silverlight、winform、wpf这些ui的开发手法感到兴趣,学习不需要多少时间,他可能就会认识这些ui开发只不过是一些工具,其实在开发原理上没什么区别。接着他就会向深一层的通讯模式进行了解,认识tcp/ip、webservice、wcf、remoting这些常用到的通讯方式,这时候他可能已经感觉到自己对开发技术有了进一步的了解。进而向工作流、设计模式、面向对象设计、领域驱动设计、面向服务开发等高层次进发,最后成为技术的领导者。上面只是一个比喻,但要注意的是,在学习的时期必须注意的是与同事之间沟通,很多的开发人员喜欢独来独往,开发的项目总想一个人搞定,不受外界的干扰。但要明白,就算你有天大的本事,一项大型的项目也不可能由你一个人全扛着。所以团队的合作性与同事间的沟通是必要的,这也是成功一个tl的必要条件。

3.单方面向技术发展。

能成功技术开发的尖端人才,这是在下最向往的工作,却也没本事登上这个位置。很多从事开发的人都会认为,业务总会带着“金钱的味道”,老板从来不管开发是否合符开发原则,有否经过必要测试,他们只会在客户面前无尽地吹嘘,项目到期能成功交货,只要不出什么大问题那这个项目就算成功了。其实我们也要明白:开发项目最终目标是为了赚钱,在开发过程中对项目成本的限制和效率的控制这也是必须,所以这才需要管理人员对项目进行管理。但开发人员也很想避开这“金钱的尘嚣”,全情投入到技术的世界的当中。所以对技术有着浓厚兴趣的人,往往会深入地研究某一项技术,成为技术上的精英。但在这里说一句令人心淡的话:中国已经属于是世界上第二大经济体同盟国,但国民生产总值主要来源于第三方加工产业方面。中国可以说是人才济济,但却在高新产业上却比发达国家落后。这几年的确看到我们国家在高新科技上有着质的飞跃,但跟欧美发达国家还有着一段距离。所以想在中国成为尖端技术的人才,无可否定比在国外要难。依在下看来,要想成为尖端的开发者,必须对c、c++、汇编语言、嵌入式开发、windowsapi、linuxapi这些底层技术有着深入的了解。要知道解java、.net……等这些之所以称为高级开发语言,并不是指它们比c、c++、汇编语言更高级,而是指它们封装了c、c++等等的功能,更适合用于企业软件的开发,使开发变得简单。但如果要开发一些底层的软件,大型的系统的时候,就必须用到c、c++、汇编等开发语言,这是成功尖端人才的一个条件。

确定未来的目标。

人是从历练中成长的,古人云:三十而立,形容的不是一个人的社会地位,经济来源,而是形容一个人对未来的目标,对人生的意向。要成为一个成功人,就应该早日为自己定下长期的发展目标,作为一个开发者也当如此。随着人的性格,取向各有不同,大家为自己所选择的路也有不同:

1.自立门户,勇敢创业。

快30岁了,很多人会认为要想真正赚得了钱,就应该自立门户,为自己创业建立一个基础。像北京、上海、广州这些一级城市,要买房子,一手楼基本要在2万~4万元/平方米左右,而在一家普通的it公司当上一个项目经理,基本收入一般都在1.5万~3万之间(除非在大型的跨国企业内工作,那另当别论),要买一间100平方米左右的房子,就算不吃不喝也几乎要10年的年薪,所以选择自主创业,是很多it开发人员的一个未来目标,想要达到这个目标,就应该更多地把业务作为重点。不可否认的一件事,在中国社会里很多时候讲的是“关系”,即使这30年的改革开放使中国的经济蓬勃地发展起来,但几千年来留下的歪风还是不能完全的磨灭。所以想要创业的人事建议你要多跟客户打好关系,与合作伙伴保持互利互动的模式,这将有利于日后事业的发展。

2.急流勇退,退居二线。

这也是不少人的选择。很多人在有了家庭以后,感觉到压力太大,人的一生并非只有事业,他们想把更多时间用于对亲人的照顾,对孩子的关心上。所以很多人会选择一份像系统分析、系统维护、高校教师、专业学院讲师这一类的工作。收入稳定,而且往往没有一线开发人员那么大的压力。

3.不懈努力,更进一步。

无论你是一个projectmanager或者是teamleader,如果你想继续晋升一级,那还是会两极分化的。从一个pm到一间公司的管理层,那所面对的事件会有很多变化。一个公司的总经理,要管理的不再是一到两个项目的成本,而是整个部门的运作,整间公司的业务流程,所以要肩负的任务的会更重。在下曾经有一位上司彭博士,他是企业的最高领导人,年薪超过三百万,而且在报纸杂志上也曾经亮过相。平常只会在某些会议上轻轻地亮下相,说两句讲词,平常的公司运作与业务管理都不需要他直接执行。这并不是说一个作为管理层很清闲,因为他们要面对的是更多的社会关系,与公司合作企业的联系上。这跟一个pm的工作的很大的区别,所以要从一个pm晋升到管理层,那可是要负出更多的努力与汗水。

如果要从teamleader上升为一个技术总监,那工作的方向也有所改变。像之前所说:一个tl可能更重视的是技术层面,讲求与团队之间的互动合作性,更注重的是开发的完善。而一个技术总监就无需要直接参加某个项目的开发,而注意的是开发的效率与成果,如何合理使用有限的开发资源,控制开发的风险和可能带来的效果。

发展感受。

经历了8年多时间,在下从一个程序员到一个项目经理,之间经过很多的曲折,但因为每一个人的际遇都有所不同,所走的路也有不同,正所谓条条大路通罗马,成功的路不止一条,在下也不想令各位误解,而只想为大家说一下我的发展方向。如果您是一位开发人员程序员-架构师-teamleader(projectmanager)-技术总监是一条不错路,这也是在下选择的路。在我国,想要进一步提升自己,无论你想是以技术为重点还是以业务为重点,都离不开管理二字。在一些大型的企业,一个团队往往会配备一个pm与一个架构师,尽管两个人负责的任务各有不同,但你会看到一个架构师的收入往往不如一个pm,pm往往是这个团队的核心领导者,是关键人物。因为公司能否赚钱,pm有着重要的作用。pm与tl并没有绝对的区别,而且在一些中小型企业,一个开发团队只有3~5人,一个tl往往会兼备业务处理、成本控件、架构设计、开发管理等多项任务。所以在下会把teamleader与projectmanager定于同一层次,一个公司的老板往往不会知道团队的架构师、程序员是何人,而只会向pm询问项目的进度,所以只有晋升到这个层次,才有机会进一步提升管理能力,让自己有上升的空间。置于要成为一个技术总监,那要求就不再单单是对单个项目的管理,而应该更则重于新兴技术的引用,开发资源的合理利用,对开发项目敏捷性的处理等等,对此在下也在试探当中,未敢多言。

程序员职业规划篇四

与其他岗位相比,程序员相对来说会内向一些,思维也会更严谨、更有个性。企业招聘程序员就是要求他能和团队一起完成既定的开发任务,所以重点从技能水平、学习能力、团队合作及工作心态等几个方面考察程序员。

技术水平是对程序员最基本的要求,很多企业会通过笔试来辅助考察。技能的考察主要看面试者技能匹配度、对技术发展趋势的了解以及自己的职业规划。

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几年之后,又转回纯技术(inpidualcontributor)。而资深技术人员对于公司是非常宝贵的财富,不管从受重视程度、薪资福利待遇都是非常有吸引力的。

程序员面试中,面试官会经常询问一些技术性的问题,有的问题可能比较简单,都是历年的笔试面试真题,求职者在平时的复习中经常遇到,应对自然不在话下,但有的题目可能比较难,来源于google、microsoft等大企业的.题库或是企业自己为了招聘需要设计的题库,求职者可能从来没见过或是从来都不能完整地、独立地想到解决方案,而这些题目往往又是企业比较关注的。

如何能够回答好这些技术性的问题呢?编者建议,对于简单的题目,求职者要努力做到完全正确,毕竟这些题目,只要复习得当,完全回答正确一点问题都没有(编者认识的一个朋友据说把《编程之美》、《编程珠玑》上面的技术性题目与答案全都背得滚瓜烂熟了,后来找工作简直成了“offer杀器”,完全就是一个bug,无解了),对于难度比较大的题目,不要惊慌,也不要害怕,即使无法完全做出来,也要努力思考问题,哪怕是半成品也要写出来,至少要把自己的思路表达给面试官,让面试官知道你的想法,而不是完全回答不会或是放弃,因为面试官很多时候除了关注你的独立思考问题的能力以外,还会关注你技术能力的可塑性,观察求职者是否能够在别人的引导下去正确地解决问题,所以,对于你不会的问题,他们很有可能会循序渐进地启发你去思考,通过这个过程,让他们更加了解你。

一般而言,在回答技术性问题时,求职者大可不必胆战心惊,除非是没学过的新知识,否则,一般都可以采用以下六个步骤来分析解决。

(1)勇于提问

面试官提出的问题,有时候可能过于抽象,让求职者不知所措,或是无从下手,所以,对于面试中的疑惑,求职者要勇敢的提出来,多向面试官提问,把不明确或是二义性的情况都问清楚。不用担心你的问题会让面试官烦恼,影响你的面试成绩,相反还对面试结果产生积极影响:一方面,可以给面试官一个心思缜密的好印象;另一方面,方便后续自己对问题的解答。

例如,面试官提出一个问题:设计一个高效的排序算法。求职者可能丈二的和尚摸不到头脑,排序对象时链表还是数组?数据类型是整型、浮点型、字符型还是结构体类型?数据基本有序还是杂乱无序?数据量,有多大,1000以内还是百万以上个数?此时,求职者大可以将自己的疑问提出来,问题清楚了,解决方案也自然就出来了。

(2)高效设计

(3)伪代码先行

有时候实际代码会比较复杂,上手就写很有可能会漏洞百出、条理混乱,所以,求职者可以首先征求面试官的同意,在编写实际代码前,写一个伪代码或是画好流程图,这样做往往会让思路更加清晰明了。

切记在写伪代码前要告诉面试官,他们很有可能对你产生误解,认为你只会纸上谈兵,实际编码能力却不行。只有征得了他们的允许,方可先写伪代码。

(4)控制节奏

如果是算法设计题,面试官都会给求职者一个时间限制用以完成设计,一般为20分钟左右。完成的太慢,会给面试官留下能力不行的印象,但完成的太快,如果不能保证百分百正确,也会给面试官留下毛手毛脚的印象,速度快当然是好事情,但只有速度,没有质量,速度快根本就不会面试中加分。所以,编者建议,回答问题的节奏最好不要太慢,也不要太快,如果实在是完成的比较快,也不要急于提交给面试官,最好能够利用剩余的时间,认真仔细地去检查一些边界情况、异常情况、极性情况等是否也能满足要求。

(5)规范编码

回答技术性问题时,多数都是纸上写代码,离开了编译器的帮助,求职者要想让面试官对自己的代码一看即懂,除了字迹要工整,不能眉飞色舞以外,最好是能够严格遵循编码规范:函数变量命名、换行缩进、语句嵌套、代码布局等,同时,代码设计应该具有完整性,保证代码能够完成基本功能、输入边界值能够得到正确的输出、对各种不合规范的非法输入能够做出合理的错误处理,否则,写出的代码即使无比高效,面试官也不一定看得懂或是看起来非常费劲,这些对面试成功都是非常不利的。

(6)精心测试

在软件界,有一句真理:任何软件都有bug。但不能因为如此,就纵容自己的代码,允许错误百出。尤其是在面试过程中,实现功能也许并不十分困难,困难的是在有限的时间内设计出的算法是否各种异常都得到了有效的处理,是否各种边界值都在算法设计的范围内,等等。

测试代码是让代码变得完备的高效方式之一,也是一名优秀程序员必备的素质之一。所以,在编写代码前,求职者最好能够了解一些基本的测试只是,做一些基本的单元测试,功能测试,边界测试以及异常测试。

其实,在面试时,求职者往往会存在一种思想误区,把技术性面试的结果看得太重要了。面试过程中的技术性问题,结果固然重要,但也并非最重要的内容,因为面试官看重的不仅仅是最终的结果,还包括求职者在解决问题的过程中体现出来的逻辑思维能力以及分析问题的能力。所以,求职者在与面试官的博弈中,要适当地提问,通过提问获取面试官的反馈信息,并抓住这些有用信息进行辅助思考,从而博得面试官的欢心,进而提高面试的成功率。

程序员职业规划篇五

很多人刚毕业时充满活力,然而几年的摸爬滚打后,冲劲就会慢慢减弱甚至消失。再加上it大环境的起伏不定,一旦无法跟上技术或者行业发展的步伐,便会迷茫。

这并不奇怪,工作的新鲜感褪程序员首先需要提高系统设计能力。

从2年以后,软件业的编程思维和模式、方法发生了翻天覆地的转变,与九十年代、甚至2年前是完全不同的。但是,很多在企业工作的程序员的知识架构很难跟上。现在很多程序员不是按照应该如何设计最好做得,而是按照我会什么来做的,最终造成设计思想落后。现在做项目需要的是新的、巧的设计思想。我们可以将从无数次失败中得到的理念告诉他们,包括如何学习,如何思考,技术变化的原因在哪里,其核心在哪里。这样程序员的理解力就会完全不同。现在,对程序员的要求降低了,但对系统设计的要求提高了。所以程序员必须要提高系统设计的能力,否则永远出不了头。

现在中国纯软件公司不多,但是,中国的经济非常好,从整个社会的经济和行业角度可以得出很多有价值的内容。很多人不了解行业的需求情况,因此做不了判断。跟随一个快速发展的行业,就比较容易取得发展,而在一个发展缓慢的行业中成功就比较困难。当然,有了市场容量有多大和机会,并不代表一定会成功,但没有这个因素成功的几率会更低。工作一两年的人,最关键的是要有一个方向感,不要太盲目,这就需要程序员有一定的判断力。

电信行业新增的市场容量每年有1万亿,而且由于是新增市场,人员也比较容易进入。此外,中国的手机市场非常大,由于无线应用的迅速发展,可以预料,基于手机和电信结合的软件的就业前景就比较好,事实证明,很多人也在向这个方面转变。从金融和电信行业角度看,对软件人才的需求每年以3-5%的比例增长。熟悉这两个行业所需要的it技术和背景的人才,需求量是最大,缺口也是最大的。

而对于游戏不能称之为一个产业,因为它不像电信那样带动很大的一个产业链,现在取得成功的只有几个游戏,而且还主要偏重销售,不是一个上下游的产业。尽管比较热,但李巨锋认为相比来说,至少一两年内可能不会有很大的市场容量,这就需要进行判断李巨锋认为,已经工作两年以上的程序员可以有几种基本的职业规划:技术专家、软件架构师、实施顾问或销售。其中程序员最主要的发展方向是资深技术专家,,还是数据库领域,都要首先成为专家,然后才可能继续发展为架构师。尽管架构师的职位可以工作一辈子,待遇也非常好,对于科班出身的程序员最为适合,但这种工作职位非常有限。一位毕业的学员到ibm软件开发中心后,过了一年左右,开始请教其未来的发展,结合对方的情况,建议他先深入的技术,因为在中国架构师需要的:条件比较复杂,而且需求量也比较少。

对大多数人来说,首先是要专,在技术上做的比较深入,然后进行工作调整,把自己转变为某个领域的专家,第三步,根据自己的情况,决定自己做软件架构师还是高级的顾问销售,另外一部分人可能就会走向行政管理,这和个人性格有关。要获得职业成长,培训也很有帮助。韩少云说:在北美,职业培训是一种高端的培训,即便是专业的人员也需要职业培训。一个人在一生中需要经过很多职业培训才能成为一个资深或者专业的人员。而在国内大家的观念中,职业培训还没有被大家广泛的认同。

对于更高级的技术人员,他们所关注的就不是解决基本的生活问题了。他们所关注的就是发展和成就感。从现在看,他们更为缺乏的是交流,尤其是和水平差不多或者更高的人进行交流。李巨锋说:我建议他们做一些国产的产品,做一些自主产权的技术。比如,我们还有产品开发的部门就在做国产数据库设计职业规划带动更好的成长从中国的软件开发人员的层次看,工作几年以内处于初级水平的程序员占据最大的比例,至少在5%之上,高级的人员最多也就1%左右。但无论处在哪个层面,一定要有规划,按照自己的个性和优势做一些规划。

一个程序员的成长,学习过程中首先要读到好书,然后是交到好的学友,找到好的老师,在这三个外围的条件下,找到适合的工作环境,结合自己的特点,然后在一些重要的环节上遇到适合的人和合适的项目,这样才能成功。有些职位可能在开始的时候不适合,但工作一段时间后,可能就可以走上更高的职位。最近,ibm软件学院就开始做一个软件人才库的项目,为的就是跟踪技术人员的成长,给他们在合适的时机提供合适的职位。业内人士说:it行业良性的人员流动也是很好的。

有了一定的职业规划,就需要补充自己缺乏的经验,只有经历过足够的项目,才有可能不断积累。对行业的判断有一定的理解之后,对一般的企业适应起来是没有问题的,但高级的人才需要长时间的积累。

在中国,除了个人的基本技能,还需要具备一定的社会资源,行业资源和资本。学生要学会在提高智商的情况下,提高自己的情商。因为,在人和人交往中情商起很大的作用。技术人员需要慢慢改变自己的一些思维方式。个人成长要有意识的积累社会资源,认识相关的人,了解相关的政策和行业发展的过程和规则,这些东西是非技术的,非智商的,只要你关注就是可以得到的。我觉得最关键的就是多认识人,然后有意识的寻找合适的事情来做。情商也就需要有渠道,有多少人能够帮助你,否则成不了。

机遇和经历对于职业的发展有相当的影响力。某些人或者某些事情都可能会影响到未来的发展。王洪超也认为成为微软mvp是自己的一个转折点,由于成为mvp,便有机会接触更多的技术朋友和微软人,为自己的发展奠定了基础。

总而言之,每个人至少三年要点评一下自己:是环境的原因,还是自己个人的原因,如果是环境的原因,可以考虑是否需要换地方,如果知道自己,可以调整自己或者设的目标现实一些。从一个普通的程序员做起,3年时间至少能够做到做独立需求分析和设计的。之后,就设法需要通过一个目标为自己输送动力。这便是职业规划。

程序员职业规划篇六

首先你要明确入行的目的,你是深深的热爱着编程还是只是因为程序员是个高薪的职业呢?如果是后者,那么不好意思,你需要慎重的选择。

在中国,程序员并不是一个很好地称呼。程序员似乎象征着邋遢,宅,甚至是it民工。记得有一期非诚勿扰上面,上去一个男嘉宾,开场说他是搞java的,台上女嘉宾的灯全灭了。是不是很可笑,很可悲?而且只有你真正的进入这个行业你才清楚,这个看上去还不错的薪水,你却付出了超过薪水价值的代价。创业型与游戏型公司里面的项目小组一般是5~10个人,因为他们需要快速的开发以应对多变的市场波动,所以程序猿的每天工作时长都在12小时以上,身体和精神收到摧残不说。作为程序猿的你很少有时间去陪陪自己的家人、自己的女友。

如果作为前者,你是因为深深的热爱着编程,那么恭喜你,你有着一颗hacker的心,属于那些愿意做一些有挑战性的事情的人。就如stiff所说:“当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题。”

当你开始编程,开始创造的时候,开始享受的时候,一切外界的评论,都挡不住你对技术对创造的热爱。但是,我不得已要泼你一盆冷水,来提醒你一下。你是否准备好了忍受寂寞,也许你面对的是十年寒窗无人问,若你没有熬住,也许就等不到一朝成名天下知的时刻。技术是永无止境的,好的程序员必须保持对于新的技术敏感度,保持学习的热情。stayhungry,stayfoolish。

明确了目的,那么你应该规划下自己的职业生涯。

宏观的讲,个人认为我们需要经历三个阶段:深度、广度、高度。

高度:这个层面往往体现在规划能力,能够看到未来业务的发展,设计出相对合理的架构满足未来业务的快速扩展。这个阶段应该是少参与到具体的编码中去,应该是一个公司的cto或者首席架构师角色。这个方面的能力比较虚,相对来说也是最难炼成的。

广度:就是知识领域的广度。反映在it技能上,就是所掌握的领域,比如:net,java,数据库,web,前端等等。不一定每个领域都能够精通,但是至少都能了解,能够在面对问题的时候能够拿出一个切实可行的解决方案。对于跨领域方面,可能是你的沟通能力,管理能力等。

深度:在某一领域有很深入的了解,旺旺是一门具体的技术。比如js代码写的很精通,数据库知识非常丰富,精通linux操作系统底层。

深度—广度—高度,越往上,要求的抽象能力越高,越往下,要求细节知识越具体。一个人往往具备了以上三样,就是一个成功的大牛。

微观的讲,。已经工作两年以上的程序员可以有几种基本的职业规划:技术专家、软件架构师、实施顾问或销售。对大多数人来说,首先是要专,在技术上做的比较深入,然后进行工作调整,把自己转变为某个领域的专家,第三步,根据自己的情况,来选择技术还是管理。

有了自己的规划,最重要的是执行。我认为很多漂亮的计划都会因为执行力不够而夭折。一个一流的计划经过二流的执行,甚至不如三流。而一个三流的计划,经过一流的执行,也许就能达到二流。所以从计划本身来说,执行往往更重要些。

程序员职业规划篇七

为自己做职业规划,已经不必再来讨论其重要性,只有谨慎对待。

职业规划更要根据个人的理想,从实际出发。那么怎么才算实际呢?所谓的实际应当包含以往的经验、现有掌握的技术、教育背景、现实的工作环境、以及一些其他因素。如:婚姻、年龄、学习能力。花一些时间来思考这些问题,不能总是跟个感觉走,也不能总是太理想主义。

1、经验对一个人来说是绝对重要的,频繁的跳槽无疑是职业生涯的最大忌讳。如果是为了一点点工资而转移阵地那更不值得。所以不管当初是因为兴趣、还是因为无所选择而介入这个行业,这么多年的体会也绝对是一笔财富。如何运用我们的经验以及如何掌握更多才是值得考虑的。

2、衡量一下现有掌握的技术,要不要在学习新的技术。这一点也相当重要,就这个行业来说你不学习就势必落后。但新技术太多了,很多朋友还在感慨xxxx还没用熟,xxxx又出来了。在这一点上,我对新技术的定义是,你未知的技术都是新技术,也许它已经出来好多年了,但他很好用。我们的目的是在于解决问题。所以在学习新技术也就带有了一定的选择性,不能一味的追求,什么东西比较绚,什么东西强,永远从提高生产力和时间成本上考虑。总结这一点就是,要不断的学习,从而增强自己解决问题的能力,这样就永远不会out。(但如果你是绝对新手,还是多学点新技术好)。

3、我的学历很低,要去自学考一个证吗?这个可以从成本和收益上考虑。考虑一下你现在的工作一年的收益是多少。如果考到一个证书,一年的机会收入是多少。继续受教育所花费的时间、以及其他成本是多少。还要考虑其他的影响因素。我的建议是,这个证书真正有用,让你能达到一个比别人更高的起点;你的志向中学历有最基本的要求,如果有这两点当中的任一点,你就应该去考取文凭。

4、如果现实的工作环境还不错,那在好不过了。每个人都应该珍惜自己的这份工作,首先是要干好自己本职的工作。希望能根据公司的制度的到晋升。现实当中可能并不会这么尽如人意,好多人努力工作不一定能得到回报。但大多数情况,你的努力领导会看在眼里,你应当在适当的时候向领导提一下。如果你的老板不太抠门,我想1有89还是能成功的。如果实在是不行,也不能怠慢工作,你应该在工作中得到更多的行业应验、提高综合素质。如果你的所做的工作,或者是你自身已经对公司来说具足轻重的时候,我想钱不是问题。

5、还得考虑一些现实的问题,你得花一些时间来找女朋友、陪老婆逛街。还有很多事情需要考虑。

以上是在做职业规划之前需要考虑的一些实际的问题。接下来具体的分析如何实现,在最后你可以根据自身情况给出一套合理的解决方案。以下是一个帮助个人分析发展、学习的导图。其中你看得出有很强个人色彩,很多的地方都只是提到了微软的技术方案,而忽略了其他的,你也可以再此基础上加以补充。

一、在工作中寻求提升。

我给出了3类程序员可能发展的方向。其中最强调的就是在工作中得到提升。在工作中提成,一般对程序员说来有2个目标。一个是做架构设计-将来可以做产品的规划,或者项目规划和指导。另一个往管理发展,将来可能涉及的不知是单纯的技术。以下的步骤只是一些常规的做法。

目标。

架构方向。

第一步。

1、基础必备:至少看过2本语言基础书和一本领域技术书。

2、部分参与项目1-2个。

所需时间:3-12个月。

第二步。

1、行业知识领悟、扩展相关应用知识。

2、完整参与项目1-2个。

3、可以指导新人完成工作。

所需时间:6-12个月。

第三步。

1、深刻理解面对对象知识。熟悉常用架构,对公司采用的架构能提出改善意见。

2、参与需求讨论并能提出简化方案。

3、能为决策提出一些建议。

第四步。

1、能够对整体需求方案做出精确描述。

2、运用一种架构对项目、产品进行设计。

3、评估项目风险、以及预留方案。

4、实现核心组件、技术难关。

5、行业技术指导。

第五步。

艺术领域。

管理方向。

第一步。

1、学习常用项目管理工具。

2、学会人际交往、协助项目管理。

3、和三教九流交朋友学会喝酒。

第二步。

1、熟练运用一种项目管理工具。

2、能采用非技术手段实现需求(不用写代码的)。

3、了解行业动向。

上表中第一步、第二步是基础阶段,都可以在制定的时间内明确的达到目标。当你进入第三步的时候,应该就有点主要开发人员或管理助理的意思。等到第四步的时候就应该上位,如果一直不上位也很难发展。至于怎么上位,也许还得学习一些其他方面的知识。后两步都跟具体的成长环境和个人领悟相关,更多地是需要你学习本行业的知识,然后运用你所学到的技能将他用软件的形式表述,具体的做法也只有到自己领悟了。到了最后就达到了艺术的领域。我的上图给出的一些知识点,关于企业级应用开发说的比较多一点。这些也最多只能让你达到第3步,如果和你所从事的领域一点不沾边,你需要针对自己所从事的行业,列出能解决自己行业需求的技能,划出主次,针对不同的步骤,找出重点学习的知识点。

和人相处、与人沟通是当中隐含的,但非常重要的一个因素,只有掌握了这一点,才有可能达到艺术的领域。

最后还是强调那句话,能够解决问题才是王道。

二、树立自己的品牌形象。

这一点必须是在你经历了一定的磨练之后再能够进展,至少你应该在原先的企业内已经完成了前三步的目标。已经积累了很多的行业经验。

如果你从开始就考虑要自己干,就要从上述表格第一步的时候开始准备。要将自己本身就看做是一个品牌。在和客户、和同行、和老板沟通的时候要处处注意维护你的形象。即使你没有任何产品,你的名字就是最好的产品,把自己推销出去。很多时候客户买你的产品不是因为你们的产品有多么的好,而是认可你的公司,或者是认可你们老板,或者单纯的喜欢你。所以一定要培养自己的行业名气,最重要的是合作机会。说不定就因为某个客户的一个单子,你就起来了。

一旦你树立了自己的形象,你还需要一个属于你自己的团队。得要有一些人愿意跟着你干。你需要一个很强的可以搞业务的伙伴,也后可能你从此再没机会写代码了。有更重要的事情等着你去做。

不能总是在等待时机,永远没有1%的把握!一定要自己为自己创造条件。要闯出自己的事业,就不要彷徨、不要犹豫。

具体的做什么,我觉得行业软件还是最有利可图的。至于开源项目、自己做控件、或者开发个什么小众软件、以及轮子工具,都似乎有些不靠谱,结合自己的经验做跟行业,企业打交道的产品。

三、其他道路。

好多人在感慨,程序员路在何方。路永远就在脚下,看我们怎么走。鲁迅说的,踩也要,踩他一条路出来。

当你有了一定的项目经验,并积累了一定数量的代码,不妨可以在网上找找有什么外包项目。但是我个人觉得私活很难做,通常你能够接到手的项目都是一些很小的不够塞牙的项目,即使有大点项目也一定是别人都挑剩下的,有的可能是二手、三手的项目。在这这种项目,你的利润又有多大,多半的利润是被一层层的拨掉了。即使有,你还是否还需要一个小小的团队。另外,你可以上英文网站上看看,很有可能能找见不错的项目。

行业顾问是个不错的营生,在实际中,行业顾问还是兼职的好,因为只有你真正在这个行业里从业,人家觉得你才更可信。一般来说,这需要的不仅仅是行业知识,而且需要你有很好的人缘,不管是从客户方,还是你的委托方。你都是熟人,那就要办事了。有时候委托方需要的不是一个顾问,而是一个和他的客户协调关系的人,而正好你和双方都很熟,那你就不顾而问了。

很多高手都写书,也书不仅能成就自己,而且能帮助他人,是非常好的一件事。对于写书来说,我觉得现在很缺关于行业内解决方案的书。也许是因为业务太过繁杂,没有统一规范吧。新手的书最多,因为需求最大。从一个读者的角度出发,我希望看到这样的书。1、经验类的如:《2.编程珠玑》、《走出软件作坊》。2、对于某种技术的整体介绍如:《expertc#25businessobjects中文版》这本就是作者为自己的开源框架csla所写的介绍。3、领域领导者的高手书:象martin_fowler、jeffrey_richter的书。我不喜欢的书是这样的:1、伪文档书,一般书上千页,就是官方帮助的翻版。2、故弄玄虚:名字挺花,一看才知道都是被人写滥了的东西。3、教课书:这是比喻的说法,意思是作者的口吻太僵硬、学术化,即使作者的水平再高,我希望作者写作的口气能活泼一点,口语话一点。最后说的事,不一定我不喜欢的就赚不了钱。写书也需要名气和口碑,再加上一点宣传,就差不多了。有写书计划可与博客园联系。

路肯定不止这些,这些也只是为你的职业规划所提出的一点点的建议。

1、如何成为高手。

答:把手放在头上,你就是高手了。

2、先就业还是先择业。

答:如果你有明确的目标,已经对这个行业有了一定的了解,一定要慎重选择。一定要高起点,一步走错,以后不好回头了。如果你什么都不知道,那随便选择个工作,看看形势吧。

3、我现在从事的工作不是我的兴趣。

答:明确目标,如果你的工作能促进你目标的达成,忘掉你的兴趣吧。(呵呵,我的兴趣是游戏开发,可是我做企业应用的)。

4、我想换工作了。

答:1)为钱?

我没法建议。

2)离家远:

想好是不是要回家的,还是决定在这个城市发展。早点决定。

3)我现在的公司没发展:

小公司也是很有发展前途的,你能很快的进入更高一级目标。

4)公司环境不好,人都很垃圾:

先学好跟人相处吧,那的人都差不多。

5)得罪了老板、老板对我有成见:

这混不下去了,早点撤。

)领导水平一般,我学不了东西:

自己学了,不要老乞求别人帮你。

7)其他原因:

辞吧,你去意已决。

5、c#orjava。

答:c#.

6、要学silverlight/html5吗。

答:这个现在火,你工作要是能用到,就学吧。如果你靠这个找工作,也学吧。

7、英语?

答:这个永远放到第一。

8、怎样推销自己。

答:学会喝酒,加入微软社区精英计划。

9、黑客、破解有搞头吗?

答:有、耐得住寂寞再说。

1、经常看博客能增长知识吗?

答:悄悄告诉你,经常看博客是浪费时间,读好的书和实践才是王道。博客是扩展你的知识面,一般时效性比较高,如果没有相应的书,可以从博客中找到一些资料,如果想系统的学习一门技术,还是找本好书吧。

11、我技术水平高工资低。

答:逐渐克服自己的心里弱点和性格缺陷!多疑,敏感,天真(贬义,并不可爱),犹豫不决,胆怯,多虑,脸皮太薄,心不够黑,教条式思维。。。只在床上想一想当然不可能,去帮朋友守一个月地摊,包准有效果,去实践,而不要只想!不克服这些缺点,一切不可能,甚至连项目经理都当不好--尽管你可能技术不错!

12、要学的东西太多了,不知道从何开始。

答:针对目标,划一条主线上面是必须要掌握的知识和工作中最需要的知识,先学。然后向两边扩充。

程序员职业规划篇八

程序员一直被认为是吃青春饭的职业,随着年龄的增长,程序员可能会受到知识结构陈旧、体力下降、分心家庭等各种原因的影响,逐渐在职场竞争中落于下风。做好职业生涯规划,给自己定一条路线,让自己在这条路线上一步一步走下去,才是好职业好发展的前提。今天小编就提供一下一位失业程序员的职业规划问范文:

作为年轻人,我们苦心经营的无非两样——爱情和事业,拥有一份甜蜜的爱情能够为发展事业提供动力;而具有良好的事业更能为爱情提供保障,又或是成为追求爱情的资本。

我们渴望着自己心仪的事业,或收入丰硕,或工作轻松,或增长见识,或结交人际。但是在很多时候,我们起初选择的工作并不是自己希望的,它们可能是走错的岔路,也可能是通往最终目标的阶梯。而在结束一份工作到选择一份新的工作的阶段这个必经过程就是失业。

有些人的失业不过是预料之中的短暂过程:“下家我都找好了,这面完事简单准备下我就过那头入职了……”

有些人的失业完全是不能选择的无奈:“我知道你工作挺努力,做事也很认真,但是公司现在不景气,需要一些人做出牺牲。你还年轻,有的是机会……”

而有些人的失业其实是一时的冲动:“m d别和我说那些没用的废话,告诉你老子不干了,你爱找谁找谁去……”当然也可能是长久的积怨。

…………

“说说你为什么要辞职。是薪水问题?”

“不是,我只是觉得一直写一些脚本得不到提高,想趁年轻学习写更深入的东西。”

“那也不用辞职啊?你这么干着,找时间不一样学吗?”

“……我是觉得工作中实践效果更好些,而且我也知道目前项目是后期,不会让我来练手,况且我手头还有工作的话时间上也不好分配。”

“那你找到下家了?”

“没有!”

“要不你先继续干着,真是有更好的机会我也不勉强。”

“很感谢,但是我觉得先离职更符合我的情况,我可能需要用一些时间来复习其他知识,然后才能去找工作。”

“你这样其实有些极端,而且结果未必会像你想的那样。一个稳妥的方式是你等这个项目完成,大概半年左右吧,这样你或是在下个项目里接触些别的,或是再去找工作,这样有个完整的项目经验可能更好些。”

“……半年我不能说我有多大提高,但我这个阶段还能学习的半年其实也没几个了。风险我也考虑过了,既然是自己的选择,我想我不会后悔。”

…………

“既然你已经决定了,我也没办法,准备下交接工作。要是你改主意了,我们再谈。”

“好的。”

一个月后,我离开了这家工作了一年半的公司,在我离开的前一天很多同事还不知道第二天我就不会来了,只有少数的一些人简单的聊了聊。我也不会像一些人那样 搞个离别聚餐,本来我在公司也属于比较低调那种。况且我认为也没必要,因为像我这样项目做一半过来,没多久闪人的家伙,想来就像是各自航行的过程中,在一 个码头停靠的船。短暂的相识后又会继续各自的航线。当然,有些可能还有机会相遇合作。

离职对于我来说是预料之中的,好像是我计划了的,但又不知何时计划的。大学那时觉得自己喜欢做游戏,毕业后应该找份游戏开发的工作,但是门槛比较高,所以 凭借对游戏的了解,加之学的程序找了份策划工作。后来公司程序人手不足,我就被临时调去帮忙,拐了个弯回到技术路线上来了。那时啥也不知道,看人家有经验 的牛人真是不一样,于是立志要三五年也成为那种独当一面的游戏程序员。

为了更好的发展,工作不到一年来到北京,但是仍是局限于做一些界面工作。不过想想,刚来不久机会还多,慢慢来。转眼一年半过去了,貌似没有太大的提高,每天早上起来都觉得时间流逝。觉得应该辞去这份工作,继续我成为合格游戏程序员的计划。

就这样,累计入行两年多了,不满足于只做界面工作的我,在计划之中,却又完全没有下一步计划的情况下选择了辞职。所以我的失业是预料之中,却又充满未知的。

今天起来很晚,上午已经被睡过去了,睡醒了第一感觉是有点饿了,于是收拾了一下出门。来到附近的一家小吃,平时都是晚上下班的时候来吃,人很多,有时没座 位而且要等很久,而这个时候里面就我自己;路上的人也不像上下班高峰期那么多,觉得路好宽敞,人车都不慌不忙的走着。顺路去了附近的超市,里面人也不多, 不是周末买东西结账都不用排队,一种悠闲的感觉油然而生。

最近各种电影电视剧是各种看啊,每天就是吃零食看电影,要说唯一的几次户外活动那就是出去吃饭,顺便再买点零食~~看的太多了,搞得上网都是找了半天,找出一个想看的。

下午收到同学信息,问十一能不能回来,有个哥们结婚。我怎么回不去,我一个无业游民想回就回去,正好最近在这面也呆的无聊了,早些回家,免得十一不好买票。

程序员职业规划篇九

1、基础必备:至少看过2本语言基础书和一本领域技术书。

2、部分参与项目1-2个。

所需时间:3-12个月。

1、行业知识领悟、扩展相关应用知识。

2、完整参与项目1-2个。

3、可以指导新人完成工作。

所需时间:6-12个月。

1、深刻理解面对对象知识。熟悉常用架构,对公司采用的架构能提出改善意见。

2、参与需求讨论并能提出简化方案。

3、能为决策提出一些建议。

1、能够对整体需求方案做出精确描述。

2、运用一种架构对项目、产品进行设计。

3、评估项目风险、以及预留方案。

4、实现核心组件、技术难关。

5、行业技术指导。

(1)只会编程是不够的。

仔细思考在哪个商业领域投入时间。软件工程师(软件工程培训)不能只会开发软件,应该要成为这个业务领域的专家。你的行业经历应该成为你的重要才能。有机会多与公司行业内人士接触,选择一本与你公司行业有关的杂志,找一个行业网站。只有了解了一个行业后,你才能创造性地有所建树。学习行业是如何运转的,了解一些财务基本知识。

(2)在思维上投资。

要学会抓住机遇。多学习新的技术,编程语言,可以改变你的思维方式。

(3)做一名通才。

你的技术水平应该超越技术平台。经常学习一些新技术。

(4)成为一名专家。

不仅应该会处理高端抽象,同时也应该了解实现高端抽象的低端细节。

(5)切忌孤注一掷。

不要把自己的职业发展完全依赖于一家技术公司。

(6)寻找良师。

可以依赖别人,但要确保这个人是靠得住的。良师的首要任务是榜样作用,还可以将你的学习过程形成体系,也是值得信任的朋友,可以帮助你作出职业导向,帮助你磨练技术。

(7)安分守己。

要有雄心,但不必路人皆知。专注于现在的工作,不仅让你更加快乐,也会让你身边的人更加快乐。你的同事,上司和客户都能感觉到。你的工作成绩会反映出你的态度。放弃你想要成功的期望可以提高你的能力,让你走向成功。不要关注结果,要关注做事的过程。

(8)每天都有进步。

如果在改善自己的道路上,每一天都比昨天多作出一点改变,就会发现—拥有卓越的职业生涯,越来越容易达成,而不再像汪洋大海一样没有边际。

程序员职业规划篇十

导语:小编为您推荐程序员职业规划范文,欢迎阅读!

在就业压力日趋激烈的今天,一个良好的职业规划无疑增加了一份自信.而如今,身为大学生的我们,在一天天消磨时光的日子里,不如多学习点知识来充实自己.未来掌握在自己手中,趁现在还年轻,赶紧为自己的未来之路定好一个方向,一个好的规划就像灯塔一样为我们指明了方向,我们可以按照这个方向前进!

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个月,最多是一年,否则到时候市场离你的创意已经很远了。

再次,关键还是找适合自己的公司,特别是那些很有希望马上上市的公司。不过,这又谈何容易呢?一个在校学生,根本不了解国内外业内的一些动态,根本不了解国内牛人的公布情况,拿不到任何相关的数据,凭什么东西做分析?凭一时意气用事吗?这个到时候肯定会挂得很惨。当然,这是我的想法,这也是一个非常痛苦的过程,寂寞、压力、疲劳会时刻伴随着我们,但如果你明白,我们做为一个打工人,我们在这个时期是没有退路可言的,只有向前,才能看到阳光、蓝天、白云!

总之,我有一个观点,最好就是去一些大公司实习,了解一下业内的动态和国内外牛人的分布情况,尽可能积累一点人脉。至于以后怎么选择,做技术还是不做技术,做技术是做研究还是做工程,是想办法往全的方向发展还是往专的方向发展,这都是要权衡的问题。以后的事情说不准,下个学期的计划出了,先做好眼前的事,然后每天过得开心点,也希望以后也会过得很开心!

适合的岗位性质:

·工作环境稳定,不需要太多的冒险和变动,最好依照经验和规律解决事情

程序员职业规划篇十一

程序员的职业规划其实是一个很好做的东西,因为程序员不像是一般的职业那样那么的复杂,其实一个公司非常的有逻辑,要想做到程序员的职业规划,那么就根据我们的公司的不复杂的程度来制定我们的职业生涯计划!

首先程序员的职业规划其实是对于我们的程序员的一种帮助,当然了有些时候我们可能会觉得很麻烦,因为这是要话费很多的时间还有精力来完成的事情,有些时候不是一个人就能够独立的完成的,还的征求很多的意见,这是我们很难去接受的事情,但是如果我们真的不去做的话,概念又不会一样了,所以这个时候需要的使我们的不断的努力,去探索,最后找到一条我们能够使用的道路,这一条道路记录下来就是这个职业生涯规划!

那么程序员的职业规划第二点就是对于我们目前的职位的冲击,没有错,但是这不是一天就能够完成的事情,是需要更多的努力的,对于我们的职位的规划,一般来说都是按照年龄来计算的,有的时候可能会少一点,但是这也是没有关系的!

当然了程序员的职业规划使我们每一个程序员都要做的事情,几乎没有人能够逃避,所以这就需要我们的认真的对待还有对于程序员这个职位的努力,就算我们能够逃过这里,但是下一次呢,下一次说不定就不能够逃过了!

程序员职业规划篇十二

既然必须做出选择,如何选择就是关键。总不能写几个纸条,靠抓阄来决定自己以后的命运。从众多成功者的经历来看,成功的一个关键因素就是做自己感兴趣的和最擅长的事情。如果没有兴趣,就没有百分之百的激情与动力,如果不擅长,就不可能把一件事情做到最好。

刘翔是短跑冠军,王励勤是乒乓球冠军,乔丹是飞人,巴菲特是股神……他们之所以成为英雄,正在于他们都是在做自己最擅长的事情,都是在拿自己的长处和别人的短处较量。他们本来是普通的常人,但因为在某一点上超过了所有的人,因而获得了成功。

职业规划的目的,不是要你变成另外一个人,而是要你变成最好的自己。搞清楚自己的优势在什么地方。做自己喜欢和最擅长的工作。不要羡慕别人的长处,不要绞尽脑汁地琢磨怎样才能像别人那样擅长某方面,不要幻想成为别人--做最好的自己!

成为行业专家。

通常说到程序员的发展前景,一般是指如项目经理、软件架构师之类的,这种规划主要是在it行业内就业发展的规划,更像一个职位的规划。所以,无论是就职资源还是职业前景都包含一定的局限性。随着it行业的竞争加剧和其他传统行业的信息化进程,如今的程序员职业规划发展目标应该超越本职业概念的"行业专家",这里所指的行业,并不是指编程的语言,而是比如电信、互联网、银行、电子商务之类的行业,成为一个领域在行业中应用的专家。而在现实招聘的需求中也大量地体现了这方面的要求,具有某一行业多年从业经验的开发人员一直是众多企业苦苦追寻的香饽饽。

坚持到底。

除了选择,最终要想获得成功,唯一的办法就是"专注".技术是层出不穷的,而人的精力却是有限的,怎样把有限的精力用到刀口上去,那就得认准了某个领域和某个行业坚持不懈地做下去,不但要成为这个领域的技术专家,还要成为这些行业的业务专家,你能熟知这个领域的点点滴滴,并能在这个领域的行业应用上发展创新,这样的人才,我想才是目前最需要的人才。我的一个同学,毕业的时候被公认为是编程水平最高的,但3年来他换了6次工作,他总是对这个感兴趣,对那个感兴趣,做过很多,每换一个工作几乎都是做的全新的东西,总在抱怨工作不如意,其实他换来换去,却始终是在起点上转。而另一个非常坚持的朋友,10年只跳了三次槽,第一个是程序员,第二个是部门经理,第三个是技术总监,不为什么,就因为他是专家,10年来他只做一个行业。用10年来做一件事情,不成功都难。

世界上没有完美的公司,重要的是,你要有自己的目标。知道你自己要的是什么。有些人习惯不满意就跳槽,跳槽可能会增加你的收入,但这种个人收入的增长,与一家企业由小到大而给员工带来的成长是无法相提并论的。职业规划就是要搞清楚自己的优势在什么地方,自己最适合做什么。当有了自己坚定的目标和定位,打工就不再是为别人卖命,而是为了自己的目标在奋斗!用这样的标准来衡量自己的成长和进步,那样的人生也会变得轻松而快乐。

程序员职业规划篇十三

在中国有很多人都认为it行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!那么程序员怎么做职业规划?程序员的职业规划怎么做呢?下面不妨看看小编整理的文章吧。

明确入行的目的

很多人干it这一行都冲着“收入高”这一点的,因为只要学会一点html、p+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可能更重视的是技术层面,讲求与团队之间的互动合作性,更注重的是开发的完善。而一个技术总监就无需要直接参加某个项目的开发,而注意的是开发的效率与成果,如何合理使用有限的开发资源,控制开发的风险和可能带来的效果。

发展感受

程序员职业规划篇十四

1、线性级:编程的时候好比低着头走路,脑子里完全不进行规划。就像盖房子的时候,一块砖一块砖的垒,想到哪就干到哪。结果越垒越庞大,后面的代码管理越来越混乱。这一境界相当于生产车间里的操作工,按照图纸根据工艺要求操作机器进行部件加工,至于零件在于整个设备中的功能和作用不了解,也不去考虑。这一境界的目标是把本工序工作做好。

2、逻辑级:掌握了一定算法经验,对于现实业务比较了解,能够撰写出一些模块和函数。逻辑比较严密,bug比较少。这一境界相当于生产车间里面的车间主任,需要对本车间的生产加工业务比较熟悉,还能自己设计出一些便利的工装器具,便于重复生产加工的时候,加快生产速度,保证加工质量。这一境界的目标是快速的高质量的把本车间工作做好。

3、架构级:掌握算法,熟悉现实业务。对软件进行架构,进行分层,指导团队成员按照统一的目标进行工作。这一境界相当于制造本部长,对于整个产品的生产过程都非常熟悉,协调各个车间的生产进度,按照一致的交付目标进行生产加工。这一境界的目标是把产品按质保量的做好。

4、工程级:按照项目管理的理念,对软件过程进行项目级管理。需要协调内外部各种资源进行统一工作。这一境界相当于事业部老总,需要协调市场销售、材料供应、内部生产等内外部多方面的资源实现经营目标。这一境界的目标是低成本、快速的交付产品让客户满意,实现营业利润。

程序员职业规划篇十五

程序员一般指利用计算机机进行程序设计开发的技术人员。程序员包括程序设计师和程序编码员。

按水平来分程序员一般分为初级程序员,中级程序员,高级程序员,系统架构师等。

按照所使用的编程语言来分,程序员又分为:c/c++程序员、php程序员、java程序员、delphi程序员、net程序员、asp程序员等。

按照面向的开发平台来划分,程序员可以分为web程序员、移动开发程序员,对进行移动设备程序开发的人员来说,针对的操作系统不同,还可以分为针对苹果ios程序员以及针对安卓andriod程序员。

程序员从技能的角度来讲,从初级程序员,通过不断学习,发展为中级高级程序员,甚至是系统架构师,是技术路线。如果一个程序员的水平不断进步,在高级程序员或架构师之后,可以尝试开发经理以及技术总监类管理职位,其中开发经理的管理职能并不突出,而技术总监就是一个比较重要的部门管理岗位了。

如果换行业,程序员最适合的行业,一是产品经理类职位,二是项目管理类职位,程序员改做产品经理,因为对技术对程序有比较好的理解,在以后的工作中,和技术部门进行的沟通会更好,能够在产品设计之前,考虑到技术方面可能遇到的问题,提高效率。

一个计算机系学生坐在树下学习,又有一个计算机系学生骑着一辆很炫的自行车经过。前一个学生问道:“你的车从哪儿弄来的?”骑车的回答说:“我在外面学习的时候,一个漂亮的mm骑着车过来,她脱光了所有的衣服对我说,‘你想要什么我都给你’。”“明智的选择!你穿她的衣服肯定不合适的。”前一个学生说道。

一男子在路边一根接着一根地抽烟。一个女士走过来对他说:“嘿,你不知道你是在慢性自杀吗?注意看看烟盒上的警告信息。”“没关系”,男子悠然自得地又吸了一口:“我是个程序员。”“嗯?这和你是程序员有什么关系?”“我们一点儿也不在乎警告(warning),我们只在乎错误(error)。”

一百万只猴子,给他们一百万个键盘,其中的一个会写出java程序,其它的写的都是perl程序。

十个顶尖软件工程师参加培训管理人员的课程。老师提出了这样一个问题:“假如你供职的公司是为航空电子设备提供软件的。有一天你乘飞机出差,当你上了飞机后你发现一个牌子上写着这个飞机用的是你的团队开发的beta版软件,你会下飞机吗?”

九个软件工程师举了手。老师看着第十个问道:“你为什么愿意留在飞机上?”这人回答说:“如果是我的团队写的这个软件,飞机根本无法起飞,根本谈不上坠毁。”

为什么程序员总是分不清万圣节和圣诞节?因为oct31==dec25。

换一个电灯泡需要几个微软程序员?一个也不要,他们会把黑暗变成标准然后告诉每个人:“我们就是这么设计的。”

一个微软工程师正走在路上,突然听到一只青蛙说:“如果你吻我一下的话,我就会变成漂亮的女人,我们可以结婚,从此幸福地生活在一起。”工程师看着青蛙想了一下,抓起它轻轻地放在自己的上衣口袋里。青蛙把头伸出来说:“怎么,你不准备吻我吗?”“是的”,工程师说:“我在微软工作,没有时间娶妻——不过有一只会说话的青蛙还是挺酷的。”

换一个电灯泡需要几个c++程序员?你还在用面向过程的思维考虑问题。一个设计良好的电灯泡类必然封装了换灯泡的方法,所以你要做的就是调用“换电灯泡”方法。

两个程序员在聊天:“我昨天碰到个辣妹。我把她带回家,马上就开始如饥似渴地亲吻,她就坐在我的键盘上,然后……”“你在家里也有台电脑?cpu是什么型号的?”

一个存放了一半数据的数组:悲观的程序员觉得数组是半空的。乐观的程序员觉得数组是半满的。真正的程序员?觉得数组占用的空间过大,需要调用realloc()。

那条狗就进去申请,但是被拒绝了。

我不能雇一条狗在公司里做事。」经理说。

狗不服气,指着告示上「均等机会」几字抗议。

经理没法,叹了口气,不屑地问道:「你会编程吗?」。

那条狗默默地走到电脑前,编了个程序,运作准确。

「你有团队精神吗?」经理问。

那条狗掉头看了看门外,一大群野狗在外面虎视耽耽。

「我真的不能雇狗做这份工作。」经理气急败坏地说。

「就算会编程、有团队精神,但是我需要的雇员至少要能精通两种语言。」。

那条狗抬头看着经理说:「喵-汪。」。

您可能关注的文档