范文 > 范文大全 > 职业规划 > 导航 > 程序员的职业规划心得

职业规划

程序员的职业规划心得。

在平时的学习生活中,我们可能会按照个人习惯写一些文章,掌握范文的撰写对自己会有很大的帮助,你是否在寻找高质量的范文呢?由此,有请你读一下以下的“程序员的职业规划心得”,相信能对大家有所帮助。

程序工作二三年后,基本上都会考虑自己以后怎么发展。发展的路径不外乎程序员-系统分析员-架构师-技术经理-CTO,程序员-项目组长-项目经理-项目总监-CTO,程序员-产品设计师-产品经理-CTO.哪一条发展的路线更加适合你?

程序员职业生涯发展到一定程度都会面临一个选择,是走业务+技术方向,还是选择纯钻研技术。程序员职业生涯 发展的问题,这是所有程序员都在关心的问题,未来究竟要怎么走,30岁之后还能不能再做程序员。

绝大多数程序员最终的职业目标可能都是CTO,做到CEO的人估计会比较少,也有一少部分人自己去创业创业去当老板,也有部分人说我转行去做业务 了,对于当老板的人毕竟是少数,对于转行的人来说,都不在这行做了,自然没什么好说的了。一般来说,程序员的发展基本上都会经历这么几条路径。程序员-系 统分析员-架构师-技术经理-CTO,程序员-项目组长-项目经理-项目总监-CTO,程序员-产品设计师-产品经理-CTO.

当然这只是一个大致的路径,不是所有程序员都必需要这么经历的,有些人可能跳过其中的一些步骤,也可能有些人会把中间的很多职位都做了。而最终做到 CTO的程序员,也是非常少的一部分,原因很简单,这个世界上不许要那么多的CTO和CXO.

也就是说,许多的程序员最终可能是做技术经理、项目经理或者项目总监之类的,那么到底我们职业生涯要选择哪一种呢?我觉得这个问题没有一个统一的答 案,因为每个人的性格不一样,际遇也不一样,就像你从小希望当贪官,可是命运却偏偏让你做了一个程序员。所以应该根据你的兴趣、性格与际遇选择一条道路, 比如说你正好有机会带一个项目,而你又不是很讨厌项目经理这个位置,那么你就可以选择向项目经理方向发展。

实际上很多时候,国内并没有明确的技术经理、项目经理、产品经理之分,在许多的公司里,他们经常是由一个人承担。在外包公司里,通常会有项目经理和 系统分析员(也可能是技术经理)。在一些非IT公司里,可能会有部门经理,而做自己产品的公司可能会分得比较详细一些。我大致说一下这三个职位的区别,让 正在徘徊的程序员有一个大致的了解。

项目经理是项目的直接负责人,这个角色相当于一个中间接口,不管是团队成员还是需求方(客户),或者是上级领导,有事都直接找他,所以这个职位着重 于管理与沟通。一般来说,项目经理的工作重点在同客户沟通需求、项目进度的把控、团队的沟通方面,有些公司也会需要项目经理承担团队建设的工作,不过貌似 很多国内公司都忽略了团队建设这个工作了。对于项目经理来说,重点会要求沟通能力、协调能力、危机把控能力、执行力、团队管理能力,着重于沟通、管理与计 划。当然也有些公司还要求项目经历要参与招标谈判,这就要求项目经理有一定的商务谈判能力。

技术经理有时候也可能叫系统分析员,一些小公司可能会整个公司或者部门有一个技术经理。技术经理承担的角色主要是系统分析、架构搭建、系统构建、代 码走查等工作,如果说项目经理是总统,那么技术经理就是总理。当然不是所有公司都是这样的,有些公司项目经理是不管技术团队的,只做需求、进度和同客户沟 通,那么这个时候的项目经理就好像工厂里的跟单人员了,这种情况在外包公司比较多。对于技术经理来说,着重于技术方面,你需要知道某种功能用哪些技术合 适,需要知道某项功能需要多长的开发时间等。同时,技术经理也应该承担提高团队整体技术水平的工作。

产品经理这个职位一般在有自己产品(不管是软件还是网站产品)的公司比较常见,产品经理主要会负责产品的设计、产品的改良等工作。需要注意的是,产 品设计与设计师是两个不一样的工作,产品设计主要会从用户体验、业务需要等层面去设计产品,而设计师更多是从用户的视觉上去做。产品经理应该是最懂业务的 人,比如说你在设计一个微博的产品,就要求你对微博这个东西非常熟悉,从用户习惯、用户体验、公司的发展战略上去设计这个产品,还要对比同类产品会有什么 优势等等。

不管是项目经理还是技术经理与产品经理,都要求要熟悉业务,业务是需求的来源,没有不谈业务的技术,所以不管你从哪个方向发展,都要求对业务熟悉。 产品经理要求对业务最熟悉,项目经理次之,技术经理排最后。对于程序员来说,刚开始工作的前几年可以埋头扎到技术里面,一般这个时间在2-3年的时间,然 后就应该多关注业务了。这个业务不一定是指某个具体的业务,因为具体的业务的范围太少,而且也需要机遇。

我见过许多的程序员,他们是做Web开发的,但对互联网很不熟悉,对于互联网流行的趋势基本上不闻不问。不知道现在大家都在使用微博,也不知道SNS,也 可能从不使用网银。我觉得这样很不好,程序员应该多多去关注互联网的发展,多多去玩一些新的网站。

Fwr816.coM精心推荐

程序员的职业规划


明确入行的目的
很多人干IT这一行都冲着收入高这一点的,因为只要学会一点HTML、p+CSS,要做一个页面开发人员并不是一件难事,而且做一个页面开 发人员更容易找到工作,收入比普通的工作还要高一些,所以成为了很多高校毕业生的选择。如果您只是抱着这样一个心态来入行的话,那阁下可真的要小心。因为 干IT这一行竞争本来就比较激烈,特别是页面设计这方面,能够开发的人很多,所以为了节省成本在大部分公司都会在需要的时候才是世界上人口最多的国家,国内人才众多,所以人才滥用的情况经常可以看到。一个小公司的开发部里面经常会见到新面孔,但 pM却不会常换。因为做老板的对技术是一窍不通,依他们看来只到拉住pM的心,那技术方面方面就能搞得定,至于技术部要换人,他们根本不需要费力气去管。
所以从一个技术员过渡到一个pM是一条向前发展的一个选择,但开发人员也需要知道,要成为一个pM不单单是使用技术,而更重要的是对管理方面认识。一个 pM主要的工作是组织团队,控制成本,管理业务,控制项目进度,与客户进行沟通,协调工作,定期进行工作报告等。所以要成为一个成功的pM更要重视组织能 力,pM必须能提高团队的积极性,发挥团队所长,在有限的开发资源前提下为公司得到最大程度上的利润。成为一个pM后,通常不需要直接接触技术开发,而着 重管理的是业务发展,但pM对技术也需要有一定的了解(在下曾经为pM对技术了解的必要性写过一篇文章,得到很多支持但也惹来不少的争议)。在这里我还是 要强调自己的观点:要成为一个成功pM最重视的是管理能力,但对技术也应该有足够的了解,因为这是与团队成员沟通的桥梁,只有这样才能与整个团队的成员有 着紧密的结合,让团队成员感觉到他们自己存在的意义,从而调动团队的积极性,而不是漠视技术人员的存在。技术并非成为一个成功pM的充分条件但却是必要条件!

程序员职业规划范文


一、软件工程师的职业优势

1、最具增值潜力的职业,掌握企业核心数据、软件技术,具有不可替代的竞争优势。

2、新型软件人才缺口大,27%的行业增长速度导致软件人才年缺口达30万,高薪高福利成为必然。

3、可实现专业零基础入行,6-18个月的强化训练和职业化引导,就可成为企业急需的技能型软件人才。

4、就业面广,一专多能,实践经验适用于各个领域。

5、增值潜力大,职业价值随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨。

6、职业发展前景广阔、软件工程师到项目经理仅一步之遥,从容晋升Manager。

二、软件工程师解读

何谓软件工程师,软件工程师是通过学习和训练,掌握软件技术的理论知识和操作技能的软件技术人员。软件工程师能够从事计算机软件、网站的设计、开发、维护和测试工作。

具体来说,我们可以从企业技术部的岗位体系中作一些了解。企业(或政府)信息化过程中需要以下四种人:

1、企业信息化管理:负责信息化建设中的目标与方案决策,信息化建设、升级、更新;

2、工程技术人员:负责软件系统的分析、设计、开发、数据库、使用、维护和升级;

3、运行维护岗位:负责软件开发代码的编写以及基本的开发和测试;

4、操作应用人员操作应用人员:主要应用软件进行日常的管理工作。

一般来说,IT企业的IT技术职位根据职能可以分为管理岗位:企业信息主管CIO、总监、IT经理、项目经理等;

工程技术岗位:规划设计师、网络工程师、系统工程师、软件工程师和数据库工程师等;

运行维护岗位:数据库管理员、系统管理员、程序员等;

操作岗位:办公文员、CAD设计员、网页制作员、多媒体制作员等。

根据企业规模大小,规模较小的企业,一个岗位可能涵盖几个岗位的内容,系统管理员既要负责系统管理,又要承担网络管理;大企业则会分的比较专业,有软件设计师、系统集成工程师、网络工程师、程序员和系统测试工程师等。

软件工程师的三个进阶:

阶段 职称 岗位 前景和待遇

程序员 初级 程序员 专业软件工程师必经阶段

网页制作 工程师

中级 普通的软件设计人员 软件公司/企事业单位/数据中心

普通的系统分析人员 软件公司/大公司/外包公司

软件系统分析师 工资过万

软件系统设计师 需求量60万,缺口极大,当前最极缺

软件工程师职业规划过程主要有以下几步:

两年以上的小型企业四年左右的中型企业大型企业或跨国集团公司

第一步,小企业的软件开发设计编程人员;

第二步,进入大中型企业,同样的软件开发设计编程工作,工资就可能完全不同了,一般都在3000元以上。做了部门经理时,还可以高达5000元或以上;

第三步,学习更全面的知识成为普通的软件工程师工资就高达3500元以上;第四步,学习更全面的知识成为专业的软件工程师,如软件设计工程师,系统分析工程师的工资就可以达8000元以上,做大型企业或专业软件公司IT经理的工资就更高了,基本在万元以上。

Ⅰ、程序员

工作职责描述:

编写计算机程序,开发软件包,调试并执行计算机应用程序,负责计算机程序的维护工作,为用户提供计算机维修服务。

职位要求:熟练的代码编写能力熟悉一些常用数据库软件

能独立承担企业网站或门户网站系统开发

具有良好的沟通、协调及组织能力,有钻研精神,有工作责任心和良好的团队合作精神及表达能力。

具有良好的撰写需求分析、解决方案、ppT、系统软硬件配置等方案的能力

就业前景:

国内每年所需的IT人才在100万以上,每年还在以20%的速度增长;随着大学和职业的扩招和培养,弥补了一定的缺口,而目前国内缺口还是极大。随着IT信息产业的日益普及,此类人才在未来几年中的需求将持续攀升,专业的软件开发和管理人才的工资标准可能还要远高于硬件开发人员。

Ⅱ、软件工程师

工作职责描述:

(1)参与项目研发的技术,估算成本、制定预算,评估项目的可行性;

(2)参与新品开发和建设公司产品库;

(3)开发公司系统集成项目中的软件系统以及公司开发产品中的软件等;

(4)软件外包项目的开发、测试等工作;

(5)负责产品的设计、开发、测试和维护工作,并进行相关文档的编写。

工作要求:

有多年的软件设计和开发经验

熟悉多种编程语言,对各种主流的技术有较好的理论基础和实践经验;精通熟悉各种常用设计模式;

。对技术有强烈的兴趣,喜欢钻研,具有良好的学习能力;。良好的沟通技能,团队合作能力。

就业前景:当前最急缺的人才,工资增长幅度大

Ⅲ、专家

职称:高级

工作在大的软件公司、或研究所主要是技术主管、项目经理、技术专家

①、技术专家

工作描述:

(1)、某一行业的专家、顾问、权威;

(2)、如果的确非常喜爱技术工作,而不擅长和喜欢与人沟通,则可以完全专注于自身的领域,以发展成为行业资深专家为方向和目标

(3)、发展过程比较漫长,任何一个领域的顶尖技术人才都需要长期的行业经验的累积和个人孜孜不倦的投入;

(4)、优势是越老越吃香,当别人随着年龄的逐步增长而开始担心饭碗问题时,你则渐入佳境,开始进入职业发展的黄金时期。

工作要求:全面的软件技术

对新技术有深刻的认识,所以要求有极强的学习能力

就业前景:待遇很高,技术人员到30岁后的发展目标之一

②、项目经理

工作内容:

(1)、融合技术和管理的复合性人才

(2)、参与项目谈判

(3)、项目目标和项目财务指标

(4)、划分工作内容并合理分配

(5)、指导软件工程师

(6)、控制工作的进度,按计划完成项目

(7)、组织项目会议

职位要求:

多年的软件工程师经验希望做管理

需要自己学习项目管理知识

就业前景:

技术人员到35岁后的发展目标之一待遇高,可晋升企业核心管理层

③、技术主管

工作任务描述:

(1)、带领技术团队创造更多的价值

(2)、在信息方面参与公司的规划和计划

职位要求:技术全面;有管理能力

就业前景:是网络工程师30岁后的发展方向

程序员的职业生涯规划

一、前言

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

二、自我剖析

1)兴趣爱好:

看书,听音乐,下棋,photoshop,网页设计,计算机信息管理,软件测试,编程

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

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

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

三、职业倾向分析

适合的岗位性质:

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

有较多的独立工作时间,可以专心的完成整个项目或任务

较多使用事实、细节和运用实际经验的技术性工作,能够充分发挥自己精细、准确、逻辑性强的才能

工作对象是具体的产品或服务,工作成果要有形并且可以衡量

要有明确的工作目标和清晰的组织结构层次

工作有足够的准备和实施时间,在交付成果之前能够进行自我成就评估

四、职业目标选择

根据我的个人兴趣和适合我的岗位性质,我初步定下适合我的职业有这些:

1、DBA:目前我已经考过OCA、OCp 证书,专业是数据库管理专业,英语大学四级水平,能够做一个数据库管理员(DBA)

2、C#软件工程师:比较数据库管理而言我更喜爱编程,在大学期间学习几种语言,但对C#情有独钟,并且用C#作了一些项目参加学院创新杯获得二等奖,最重要的是我太爱编程啦

3、程序员:熟悉各种程序语言,有很好的逻辑 IQ:121,喜欢编程。

4、网站设计师:我个人爱好网页设计,photoshop

5、php、.NET开发工程师:如今技术能够独立运用php以及asp.net完成一个小型的网站

6、宣传部文员:自幼爱好文学,且在班级以及甲骨文俱乐部做宣传这一块的工作,对宣传有一定的经验

7、软件测试员:学过软件测试,对数据库以及编程都很熟悉或者说是精通,然而不是太有耐心,对这个行业不是太感兴趣。

五、未来十年职业规划

20xx-20xx学好专业知识,认真看高数、英语、马克思理论、数据结构、计算机组成与原理为考深大做准备

20xx-20xx年从深圳职业技术学院毕业考入深圳大学计算机科学与技术专业本科插班生学习两年

20xx年7月开始工作的职位是数据库设计人员,积累经验。

20xx年成为中级技术工程师

20xx年后成为高级技术工程师

20xx年后朝管理方向发展

六、总结

任何目标,只说不做到头来都会是一场空。然而,现实是未知多变的,定出的目标计划随时都可能遭遇问题,要求有清醒的头脑。一个人,若要获得成功,必须拿出勇气,付出努力、拼搏、奋斗。成功,不相信眼泪;未来,要靠自己去打拼!实现目标的历程需要付出艰辛的汗水和不懈的追求,不要因为挫折而畏缩不前,不要因为失败而一蹶不振;要有屡败屡战的精神,要有越挫越勇的气魄;成功最终会属于你的,每天要对自己说:我一定能成功,我一定按照目标的规划行动,坚持直到胜利的那一天。既然选择了认准了是正确的,就要一直走下去。在这里,这份职业生涯规划也差不多落入尾声了,然而,我的真正行动才仅仅开始。现在我要做的是,迈出艰难的一步,朝着这个规划的目标前进,要以满腔的热情去获取最后的胜利。

程序员的职业规划范文


在有很多人都认为IT行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,在下从事。NET及JAVA方面的开发的也有8年的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下。
明确入行的目的
很多人干IT这一行都冲着收入高这一点的,因为只要学会一点HTML、p+CSS,要做一个页面开发人员并不是一件难事,而且做一个页面开 发人员更容易找到工作,收入比普通的工作还要高一些,所以成为了很多高校毕业生的选择。如果您只是抱着这样一个心态来入行的话,那阁下可真的要小心。因为 干IT这一行竞争本来就比较激烈,特别是页面设计这方面,能够开发的人很多,所以为了节省成本在大部分公司都会在需要的时候才是世界上人口最多的国家,国内人才众多,所以人才滥用的情况经常可以看到。一个小公司的开发部里面经常会见到新面孔,但 pM却不会常换。因为做老板的对技术是一窍不通,依他们看来只到拉住pM的心,那技术方面方面就能搞得定,至于技术部要换人,他们根本不需要费力气去管。 所以从一个技术员过渡到一个pM是一条向前发展的一个选择,但开发人员也需要知道,要成为一个pM不单单是使用技术,而更重要的是对管理方面认识。一个 pM主要的工作是组织团队,控制成本,管理业务,控制项目进度,与客户进行沟通,协调工作,定期进行工作报告等。所以要成为一个成功的pM更要重视组织能 力,pM必须能提高团队的积极性,发挥团队所长,在有限的开发资源前提下为公司得到最大程度上的利润。成为一个pM后,通常不需要直接接触技术开发,而着 重管理的是业务发展,但pM对技术也需要有一定的了解(在下曾经为pM对技术了解的必要性写过一篇文章,得到很多支持但也惹来不少的争议)。在这里我还是 要强调自己的观点:要成为一个成功pM最重视的是管理能力,但对技术也应该有足够的了解,因为这是与团队成员沟通的桥梁,只有这样才能与整个团队的成员有 着紧密的结合,让团队成员感觉到他们自己存在的意义,从而调动团队的积极性,而不是漠视技术人员的存在。技术并非成为一个成功pM的充分条件但却是必要条件!

更多职业规划范文推荐:
职业生涯规划书的格式
机械系职业生涯规划范文
最新个人职业生涯规划书
职业生涯规划书基本格式

谈程序员的职业规划


越多的人加入程序员这个行业,程序员已经不是以前人们向往的白领职业了,要想在这个行业有所发展,至少在中国,想有所成就,就应该有一技之长,对某一领域有所精通。

随着计算机行业的不断发展和分支学科的不断出现,很难像以前再出现一个对计算机各个领域都很精通的人了,所以,对某一方向有所精通很重要。很多人夸夸其谈,乍一听对于计算机各个方面都知道,但仔细一问他就说不出什么了。

随着软件流水线般的进行生产,程序员(我是指之会写程序的人)越来越成为工厂里面流水线上的操作工人,依靠越来越强大和方便的开发工具和越来越容易上手的开发语言。这些人拼得是自己的经历和体力,他们是软件开发的最底层人员,即使干的好也不过是熟练的操作技工而已,因为他们只会使用别人开发出来的工具,自己甚至只知道怎么用,而不知道为什么和具体实现。造成这种情况的主要原因是开发工具的自动化和教育上的失误,特别是一些短期的软件培训机构,他们只教会了学生如何使用.Net或者Eclipse这样的容易上手的开发工具,最多再学习一下语言,有些人甚至连语言和开发工具都分不清楚(例如C++和VC++)这些都是软件行业迅速发展所造成的一些不良的影响和某些人急于求成的心理。很多人的基础不扎实就去写程序,它们对多线程,语言的底层实现和算法都不了解,这样,很难写出结构良好,效率高的程序。

所以,总结我以往写程序的经验和教训,我觉得:

1。打好基础,学好本质的东西,分清什么是科学,什么是技术,什么是应用。最上层的东西是会经常变化的,不要把时间大都花在那上面。

2。精通而不是什么都知道,却什么也不熟悉。后者是大忽悠。前者在有可能从程序员过渡到技术主管或者研发核心人员。

3。不要总用别人的东西,要有自己的成果。

4。学计算机不要急,慢慢来,一步一步,不要追求新技术名词,一位会几个新名词就来不得了,高手对底层都很熟悉的。不要浮躁。

5。要理论联系实际,学到的理论要知道有什么应用和怎么实现,到动手编程。

6。要有毅力,真正的工作很枯燥,但如果你投入进去就会很有趣。要珍惜每一分每一秒。

程序员职业规划心得分享


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

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

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

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

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

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

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

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

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

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

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

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

如果你要走技术路线,那么就深入某一领域,培养程序员以下几个基本素质。

1.团队精神和协作能力;

2.良好的文档习惯;

3.规范化、标准化的代码编写习惯;

4.需求理解能力;

5.复用性、模块化的思维能力;

6.测试习惯;

7.学习和总结能力。

如果你要走管理路线,那么你首先需要向一个pM的目标前进,然后成为总监乃至CTO。我这里讲讲要成为一个pM需要哪些能力。

先看看下面的招聘启事吧,这只不过是一家几十人公司的一个招聘广告:

招聘职位1:软件项目经理

职位描述:

1、带领实施团队完成某软件项目;

2、制定项目计划和实施部署;项目进度、质量及范围管理与控制。

3、负责软件实施过程中与各方的沟通、关系协调与维护;以及实施人员的安排与管理

4、负责了解客户对软件的业务需求及意见,及时反馈、跟踪开发人员解决问题。

5、及时、有效协调资料解决项目实施过程中出现的疑难问题;

职位要求:

1、具备优秀的团队协作精神,良好的沟通能力,有较强的口头/书面表达能力;

2、熟悉企业信息化业务,百万企业信息化项目经验;

3、精通数据库系统和项目管理工具;

4、熟悉XYZ行业相关业务知识;有财务背景知识,快速理解和学习能力;

5、良好的客户服务意识,负责、敬业、细心。

6、有软件大项目管理经验或N年以上项目管理经历优先;

那么,让我们看一下这个招聘启事对软件项目经理能力的描述吧:

团队协作精神 高

沟通能力 高

口头表达能力 高

书面表达能力 高

IT技术 高

XYZ行业知识 高

理解和学习能力 高

服务意识 高

项目经验 高

我们概括一下,是不是差不多就5类:沟通(口头表达能力,书面表达能力,沟通能力,服务意识)、管理(团队协作精神)、技术(IT技术)、成本控制、行业(XYZ行业知识)。理解和学习能力是很综合的,无论是在学习过程还是生活中都能体现。最后一点,项目经验,这东西是学不来的,只有踏踏实实跟着团队做几个项目才能积累起来的。

如果你想成为一个项目经理,那么首先就要把自己定位成一个项目经理,拿项目经理的水准来严格要求自己。比如沟通,平时应该多锻炼和他的的沟通能力,不一定非要在项目中和客户沟通。还有如果没有技术,那么谁都不会信服你的。

从技术和非技术的角度来向项目经理看齐。

技术

1.有着一定的技术广度。首先你需要对现在有的技术有一定的了解。我认为,好的pM不一定是团队中技术最强的,但是一定能知道这些技术能拿来干什么。如果你不懂JAVA,你一定不知道你手下有没有偷懒,明明一个礼拜就可以完成的事情,他两个礼拜都没有搞定,导致你的计划全乱掉了。

其次你需要对新兴的技术有所了解 。IT行业每时每刻都会涌现出很多新兴的技术,谁也不知道某一项技术的出现会不会能改变IT发展的趋势。就如java语言刚出现的时候,谁也不会知道它会那么流行。

2.有着一定的技术深度。深入了解一门技术。这门技术是你的敲门砖,是你打开pM大门必须的钥匙。在网上那些当上项目经理,在IT行业走的很远的人都会对我们说,作为一个pM,技术不是最重要的,重要的是那些非技术的东西。可作为一个科班出生的程序员,我真的无法透过那层雾来看他们描述的pM的世界。直到后来,我和一个当过项目经理的老师谈话才明白。技术,其实是个敲门砖,当敲开这扇们之前,他还是挺重要的。可是当敲开后,那些非技术的东西才是pM的精髓。

3.了解技术发展的历史。个人认为技术发展有一种趋势,当我们能通过过去和现在之间的联系,推算未来技术发展的潮流。

非技术

作为一个pM,你的最终目的是:替老板赚钱。别说我庸俗,也许以后你成为首席技术总监以后你有资格谈技术本身,不然老板是你的衣食父母,你必须替他想。围绕着这个目的我们通过技术知道,达到技术设计最优化;通过管理团队,达到团队产出最大化;通过成本控制,达到经济效益最大化;通过和用户沟通交流,达到用户满意最大化。这一切一切概括的说就是你领导一个团队,使用一些掌握的技术,作出一个项目,使得客户满意,然后老板开心。老板一开心,也许你就升职加薪,那么你就开心了。

所以,pM要学习的非技术的东西很多,大致分为以下几个方面:

1.产品市场

2.产品设计

3.团队管理

其中里面又有很多相关的内容,比如拥有好的人脉也是很重要的。比如学习如何培养自己的创新思维等等。你需要学习营销和推广,需要了解消费心理学、行为心理学等等。

我无法告诉你具体该怎么学习,因为我自己也没有达到那个高度。以上这些内容也是借鉴一些行业的前辈的指导,以及自己的一些独特体会,所以难免见解有些狭隘。但是如果文中的某一点能给你一些启发,那么也不枉我写了那么多了。

程序员的职业规划分享


1. 稳定成熟的技术还是未成熟的技术

无论哪种选择技术,最终的目的是产生利润。

2. 供应和需求

善于发现市场上技术的不平衡,找到外包公司无能为力的工作(高要求)。

3. 只会编程是不够的

仔细思考在哪个商业领域投入时间。

软件工程师不能只会开发软件,应该要成为这个业务领域的专家。

你的行业经历应该成为你的重要才能。

有机会多与公司行业内人士接触,选择一本与你公司行业有关的杂志,找一个行业网站。

只有了解了一个行业后,你才能创造性地有所建树。

学习行业是如何运转的,了解一些财务基本知识,推荐一本商业教程: The Ten-Day MBA。

4. 在思维上投资

要学会抓住机遇。

多学习新的技术,编程语言,可以改变你的思维方式。

5. 不要听从父母

在职业道路上,需要一些有目的性的冒险.不要让恐惧征服了你.跳槽可以让你从各个角度了解这个行业。

如果工作中没有感到乐趣,就不可能出色地工作。

6. 做一名通才

你的技术水平应该超越技术平台。

经常学习一些新技术。

7. 成为一名专家

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

8. 切忌孤注一掷

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

9. 热爱它,不然离开它

一门技术或者一个商业领域可能使你感到兴奋,相反,它们也可能拖累了你.想想自己到底适合什么。

找一份自己真正有激情去做的工作。

第2章 在产品上投资

10. 学习钓鱼

要了解 如何和为什么。

要主动问,不要等着别人来告诉你。

11. 寻找良师

可以依赖别人,但要确保这个人是靠得住的。

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

12. 做一名良师

想要弄明白自己是不是真正懂得某一知识,那就把它讲给其他人听。

通过传授知识学习.通过讲授,我们的那些知识死角就会暴露出来。

做别人的导师也会产生积极的社交效果,在这种关系网中,可以很好地解决难题或者寻找工作。

找一个网络论坛,挑选主题,开始帮助别人。

13. 练习,练习,再联系

开源社区是找到用来练习的代码的绝佳场所.浏览一个开源软件的待实现的功能,给自己规定时间来实现这个新功能.首先是要快速读懂正在看的代码。

要寻找不同风格,不同编程语言的软件进行练习。

训练思维敏捷和提高即兴编码技术的好方法是通过自我限制(限制变量个数,限制程序大小,限制开发时间)的方式来练习。

在极限处练习.练习一些功能强大但很少人使用的编程功能。

14. 做事的方法

一个使你的团队工作更有效率,帮助你们生产出更好的产品的步骤就是最好的方法.在实践中不断提炼总结。

选择一些软件开发方法论,讨论它们的优势和弱点,考虑如何将它们结合起来。

15. 站在巨人的肩膀上

从已有代码中得到领悟,从已有代码来反思自己的代码。

可以研究一些开源软件,从批判的视角看这些程序。

16. 在工作中,将自己自动化

挑选经常重复做的工作,看看能否把它自动化.(比如代码生成器)。

研究模型驱动架构(MDA)。

17. 就是现在

如果把自己做的项目当作是一个竞赛,你就可以更快地完成工作。开始行动,不要总是安于现状,要做推动者。

18. 读心术

读心术用的好,人们就会信任你。

开始下一个项目的时候,记录下你认为用户和经理想要让你做的事情。有点创造性,试着从他们的角度看问题。记录下这些可能会被提出的不太明显的功能之后,想想如何才能最有效地实现它们。

19. 每日成绩

每日都有可汇报的成绩。经常记录工作成绩可以确保你不会停滞不前。

20. 别忘了你在为谁工作

经理的目标,就是整个团队的目标。经理的成功就是你们的成功。

21. 安分守己

要有雄心,但不必路人皆知。

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

不要关注结果,要关注做事的过程。

22. 今天我能把工作做到多好

试试把无聊的工作做到100分,做到最好。

23. 你的价值是多少

问自己:今天实现自己的价值了吗?问自己今天又新增加了多少价值?

24. 一桶水中的鹅卵石

感觉自己无可替代是一个不好的征兆。

要让自己不可替代,就要建立一种友好的工作关系。

25. 爱上维护

维护也可以成为自由和创造的沃土。

评估,改进,评估---在所维护的程序中,把所有可以评估程序质量的元素列举出来,如响应时间,未处理的异常数量。从中挑选最重要的特征,确定可实现的目标,对其进行改进。

26. 8小时激情燃烧

当工作时间非常充裕的时候,工作的时间价值就会降低。好好规划工作时间,减少工作时间,你的收获会更多。当你离开工作一段时间后,才会更喜欢工作。

27. 学习如何失败

带着防御性措施进行编程很重要。出现问题的时候,才是考验软件质量的时候。

发现问题后第一时间提出,不要企图隐瞒错误。接受批评。提供解决方法,或者一份有计划性的进程。寻求帮助。

充满压力的时候是赢得忠诚的最好时机。

28. 说不

为了避免失望而说是,就是在说谎。要勇于诚实。

29. 说出来,行动,展示

制作计划,执行计划以及与上司就计划进行沟通都会帮助你找到工作的独立性和归属感。

状态报告可以帮助你推销自己。

计划不一定非得是大计划,也不需要有很长的延续性。一天的计划,可以非常详细,也可以是泛泛的。

通过计划,不仅知道今天要做什么事情,也可以看到自己已经做了什么。如果没有完成计划上的所有事情,可以把今天未完成的工作添加到明天的计划中(如果这些工作仍然需要完成)。当一天的计划按节奏完成后,可能想制定一周甚至是一个月的计划,当然这样做计划的水平要更高。

做计划时要谨记,出现在计划上的每一项工作必须要与后续工作相关,要么被完成,推迟,去除,或者被替代。

30. 不要忽视感觉

绩效考核永远都不会是客观的。

应该在乎别人的看法,别人对你的认识就是现实,好好解决它。

在人际交往中,要弄清楚哪一因素对哪一种关系圈是重要的,这样就可以给你周围的人留下可靠的感觉。

31. 探险向导

沟通很重要,要站在经理和客户的立场上思考问题。

做客户的IT向导。

32. 学会沟通,善于写作

文字表达能力非常重要。沟通,特别是以文字形式进行的沟通,是你所有绝妙想法必须要通过的瓶颈。

开始记录开发日记。每天写一点,记录你做了什么工作,解释你的设计决定,检查棘手的技术和专业决策。

33. 到场

能够与上司和客户面对面地沟通是你的优势,不要浪费这个机会。

通过有效,高带宽的交流建立的团队关系可以更快更好地生产软件。

如果方便,尽量用电话而不是邮件与别人交流。

34. 适当的语言

请用行业术语推销你的成就。

作为软件工程师,要把你完成的工作放在你所服务的行业的框架里。

35. 改变世界

带着任务去上班,并确保别人知道你的任务。

36. 让人们听到你的声音

把目光放得更远一些,不要把自己局限在某一特定公司中的程序员。

人际关系网络非常重要,认识的人越多,得到好工作的机会就越大。

如何从一名程序员到出版作品再到公众演讲:阅读网络日志,挑选几位最喜欢的技术类书籍作者的网络日志,订阅这些日志,以及相关的日志,你的日志链接列表也会不断增加;开始撰写自己的网络日志,进一步可以将这些文章发表在社区网站,杂志甚至书籍上;可以在当地开发小组会议上开始你的演讲生涯。

尽早行动,而不是一味地去想自己是否已经做好了准备。你一定有某种可以传授给他人的东西。不用做好100%的准备,现在就开始行动。

挑选自己最好的文章,提交到类似Digg和Reddit这类由用户审查文章的网站上。

37. 发布你编写的程序

对开源软件有所建树是一种技术的展示。领导一个开源项目展现的能力远不止技术能力,还有领导能力,版本管理,编制软件以及支持产品和团体的技巧。

开源社区是全球性的人际关系网络。

38. 变为卓越的能力

从小事做起,但是要在你现在的项目或者工作中做一些卓越的事情。比如力争卓越的效率。

要想卓越,就必须和周围的人大相径庭。

39. 已经过时的技术

你引以为傲的技术可能已经过时了。必须认识到,即使你现在处于当今潮流的尖端,也极有可能已经在下一个潮流之后了。学习前要先动动脑子,现在看起来不可能的事情,2年间会发生什么变化呢?向前看,清楚地知道你的技术发展方向。

每周找出时间来研究尖端技术,并动手尝试。将正在以当前技术做的项目,用新技术作出原型,理解它们的不同之处。在日程安排中加入这项工作的时间。

要自我反省,弄清楚自己的盲点。

40. 你已经失去工作了

把自己与现在的工作过于紧密地联系起来已经不安全了。尝试不同的角色,看看自己的工作方式发生什么变化。

41. 给自己做一份蓝图

个人的产品路线蓝图是用来判断你是否在不断向前发展的依据。

没有蓝图,就无法形成一个逻辑上相关联的整体,你可能会迷失方向。

清楚地列出职业发展的时间表,标注从哪里开始,以及每一阶段的技术和工作是什么。注意哪一个阶段你在持续进步,又在哪一个阶段取得了重大进展。注意每一次取得重大进步需要的平均时间。展望职业发展时,以这份蓝图作为参考。清楚地了解过去取得的进步,可以帮助你制定出更加实际的目标。要根据实际情况不断更新蓝图。当你不断向新目标前进的时候,这种方法可以很好地反映你的进步。

42. 要注意观察市场变化

留意那些技术达人。可以大致了解将来的热门技术或者两年后的热门。

注意技术方面的新闻,不管是商业方面还是纯技术方面的。

43. 南印度捉猴陷阱

坚持固执的价值观念使你脆弱。

了解自己的技术强项和弱项,试着用最讨厌的技术开发一个程序。

44. 每天都有进步

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

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)每天都有进步

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

  网站地图