职业规划就是对职业生涯乃至人生进行持续的系统的计划的过程。一个完整的职业规划由职业定位、目标设定和通道设计三个要素构成。

我们听得最多的误解莫过于软件开发职业是青春饭这句话了,这样的说法在人们中间很流行。

这种说法意思是说,只能在年轻的时候从事软件开发工作,当然这个年轻也给出了一个具体的年龄,就是30岁以前,30岁以后就不能搞开发工作了,肯定转行做其他工作去了。

这种说法的理论依据是,做软件开发非常的用脑子,而且都是代码的工作,只有年轻人才能有这个精力去投入软件的开发工作中去,年龄大了就干不了啦。

很显然,这个误解理论来自于外行人,但是,这个外行理论却时不常的成为新程序员前进的障碍。原因就是,新程序员们看不到职业的发展方向,搞不清楚自己的发展路径。

1 不必为30岁以后烦恼

我们在前面章节和大家说过程序员修炼三境界,关于软件开发职业是不是青春饭的问题,我们在那个章节中,从程序员的发展路径中我们基本上可以比较清晰的看到了答案。

这个路径告诉我们,初级程序员,程序员,软件工程师并不是软件开发职业的唯一表现形式,这仅仅是职业的初级形式,大约在三年内完成进阶任务。这个误解估计主要来自于对软件开发职业的理解,认为软件开发职业仅仅是指初级程序员,程序员,软件工程师,所以,都是年轻人在做这个职位。

我们要充分理解程序员未来的光明性和曲折性,程序员职业发展的曲折性也会表现为一定的活跃性,即,部分人会在进阶过程中掉队,虽然程序员工作三年可以进阶为开发经理,但是,这个过程是曲折的并不是一夜之间完成的。

2 30岁以后照样可以编程序

不管你在30岁以后是否已经进阶为开发经理还是继续做程序员,一样都可以做编程序的工作。认为在30岁以后应该专门做管理工作的观点同样是错误的。30岁以后,虽然做初级程序员的可能性不大了,但是,核心编码工作,尤其是难度较大的那部分编码工作,还是较多涉及的。

3 50多岁的程序员多的是

据美国调查企业Evansdata公司发表的调查报告显示:

从事软件软件开发的程序员中女性比例逐渐减少,现在仅占9%,大部分开发程序员都是36-50的男性,平均年收入在5.5万美元以上。Evansdata公司的调查报告搜集了全球1.4万名软件开发程序员回答信息。

这种情况之所以没有在中国出现,其主要原因是中国的信息技术起步较晚,在中国信息技术大面积普及的时间大约是1990年以后,那个时候的年轻人,现在也只不过是30多岁,至多40岁。

在国内找到50多岁的程序员有点难,主要是中国软件开发行业的起步比较晚。但也不是不可能,我就认识这么一位前辈,他目前是一家小公司的老板,他的公司有程序员,但据我所知,个别的程序他也会自己去调试调试,他的这个精神是我等后辈应该学习的。

4 点评青春饭

软件开发职业不仅不是青春饭,而且这个职业会让你永葆青春呦!呵呵。

青春饭:

职业本身并没有对年龄的限制,如果你愿意可以一直干下去。

延伸阅读

软件开发专业职业生涯规划书


职业规划就是对职业生涯乃至人生进行持续的系统的计划的过程。一个完整的职业规划由职业定位、目标设定和通道设计三个要素构成。

软件开发专业职业生涯规划书

前言

里士多德曾经说过:人是一种寻找目标的动物,他生活的意义仅仅在于是否正在寻找和追求自己的目标。而这目标有大有小,有短期的也有用尽一生去完成的。目标也有多方面的有涉及学业、家庭、工作等。如今我们正处于20岁左右,无论根据萨帕的职业生涯发展五阶段理论,即成长期(1-14岁)、探索期(15-24岁)、确立期(25-44岁)、维持期(45-64岁)、衰退期(65岁以上),还是《黄帝内经》第一篇《上古天真论》中对人体的的成长与衰老作了阶段性划分的女子二七、男子二八后后天生命的开始,都说明现在是进行职业目标寻找即职业生涯规划的黄金时期。

什么叫职业生涯规划?从广义上来说,生涯即是指一个人的一生从始到终的整个经历。而我们在职业方面所说的生涯,更多的是指狭义的生涯概念。从狭义上来说,职业生涯规划是指个人发展与组织发展相结合,通过对职业生涯的主客观因素分析、总结和测定,确定一个人的奋斗目标,并为实现这一事业职业目标,而预先进行生涯系统安排的过程。在今天这个人才竞争的时代,职业生涯规划开始成为在人争夺战中的另一重要利器。对企业而言,如何体现公司以人为本 的人才理念,关注员工的人才理念,关注员工的持续成长,职业生涯规划是一种有效的手段;而对每个人而言,职业生命是有限的,如果不进行有效的规划,势必会造成生命和时间的浪费。作为当代大学生,若是带着一脸茫然,踏入这个拥挤的社会怎能满足社会的需要,使自己占有一席之地?因此,我试着为自己拟定一份职业生涯规划,将自己的未来好好的设计一下。有了目标,才会有动力。

第一章节 自我认知

一、自我认知

自我心理:

良好的身体素质,精神饱满,朝气蓬勃。喜欢运动,如足球、羽毛球、乒乓球。

我的个性

优点:有责任感,诚实守信,有一定的洞察能力,较体贴。善于与进行沟通,有良好的团队合作精神;做事有条不紊。虚心好学,善于吸收别人的优点,知错就改。心态乐观,积极主动。勇于挑战自我,在困难中茁壮成长,充满活力。

缺点:临场应变能力欠佳,胆小,不善于表达,不够果断。有时自己有一点小气。本人很粗心,让人看着有点不负责的状态。

自我兴趣:

人文素质方面:从小受到家人的耳濡目染,对书有独特的亲近感。

学习方面:喜欢与书本打交道,能够独立的学习,有良好的学习动力,经常与同学、老师探讨深究问题。和别人合作完成项目更是有一种无比自豪的感觉。

政治修养方面:对于党派上,有着自己的看法,从不盲目地跟从任何一个党派。更不盲目相信任何一个党派。对党派是一个讨厌的态度。

工作方面: 有条不紊地处理事情是一种享受,和伙伴一同做项目更是一种乐趣。团队合作是协调能力的一种体现,是对自己的一种肯定。

二、他人评价(360C分析)

除了对自己的全面分析外,我还结合了360C的多角度来做客观的分析,从而能够较全面、客观地了解有关自己优缺点、能力等信息,以作为制定个人未来职业生涯及能力发展的参考。

三、综合评价

通过多角度对自己兴趣、个性的剖析,对自己的认识还应该从自己的综合素质和实际能力来了解自己。

工作经历介绍:

实践能力介绍 专业技能介绍

四、个人分析小结

小结

第二章节 职业认知

所谓知己知彼,百战百胜。那么自己除了要了解自己的自身素质外,还需要了解对自身造成影响的外界因素。

一、外部环境分析

1、社会环境分析:

介绍:IT就是Information Technology,也就是信息技术,不过行业内的人也经常谈笑自己是挨踢行业的人,可见这个行业竞争之激烈,变化之迅速.

IT行业主要从事3C产品的研发,生产和销售,相对传统行业,他算是高科技企业,然而IT页发展到现在,主要的行业核心技术仍然掌握在美国少数几个公司手中.行业分工也比较明确.

3C产品指计算机(Compter),通讯(Commucation)和消费类电子(Consumer electronics).其实这种划分也只是按照产品种类来划分的,企业真正在研发、生产和销售中区别不大,就像我本来从事电脑主板的研发,现在却进入了通讯行业。对研发来说,3C产品都是由硬件、软件和测试人员组成,技术相差不大.

IT行业按照产品化的过程.分为研发,如intel(其实他不完全做研发);生产,如台资的代工厂;市场品牌,如DELL,HP和Lenovo.但是各个环节又可分为上游企业,如intel;中游企业,如很多台资;下游企业,很多杂牌厂商.

3C产品代表性企业:

计算机(Compter):主要产品是提供通用PC机,服务器,笔记本电脑等.芯片厂商intel,AMD,VIA,nVadia,Ati,SIS,ALI等.板卡厂商ASUS,微星,技嘉,升技等,软件厂商微软,SAP,甲骨文,AMI,Phoenix等.品牌厂商DELL,HP和Lenovo.集成方案提供商IBM等.

社会主要行业招聘

通讯(Commucation):主要产品是电信和企业网络产品和终端设备,如路由器、交换机、手记等.又可分为数通网络、固定网络、无线网络.不过现在的通讯企业产品一般都覆盖了3个方面.如Cisco(主要做数通,全球最大)、juniper(主要做数通)、Nortel(北电,综合厂商)、Siemens、阿尔卡特、朗讯、Moto、Nokia、索爱、华为、中兴等.

消费类电子(Consumer electronics) :主要是数码产品,如MP3、MP4、数码相机、数码摄像机、摄像头.这方面的企业比较杂,除数码相机和摄像机,由于技术含量比较高,如CCD器件,目前基本上被日本企业所垄断.其他产品的技术含量不高,所以进入的企业比较多。

现状:(IT行业地位)具有高技术含量、高附加值特点的信息产业已成为众多发达国家保持经济持续增长的最重要手段。而作为信息产业中最活跃、最智力密集也是发展最快的软件产业,更是成为各国政府关注的焦点。软件业的发展关系到一个国家的政治和未来,软件产业将成为21世纪拥有最大产业规模和最具广阔前景的新兴产业之一。作为信息产业的核心,作为国家经济和社会发展的战略性基础,软件的价值及其所具有的巨大辐射性和带动性作用将得到社会各方面的足够重视,软件市场的进一步培育和完善将成为必然。预计到2011年该市场将形成超过1300亿元的市场规模。软件产业链环节的全面创新将共谱推动未来软件市场可持续发展的协奏曲。中国在软件总体设计、软件项目管理、软件研发等方面缺乏高层次人才,整体上存在结构不合理,知识更新速度慢,不适应国际化要求的弊端。在软件人才输出方面,在基础程序端缺乏熟练编程的技术工人,在结合应用端缺乏了解业务需求的项目管理人员;在软件人才培养方面,传统的模式与企业发展需求之间的矛盾逐渐加深。随着我国信息产业的高速发展,应用型专门人才变得较为缺乏,从最近关于基础软软件人才供不应求的新闻来看,软件研发人才的匮乏已成为我国基础软件业发展缓慢的一大瓶颈。

空姐有望不吃“青春饭”


职业规划怎么写,相信很多朋友们对这个问题很感兴趣,下面给大家介绍一下。第一部分,前言即总论;第二部分,自我分析,包括业余爱好、性格、价值观、专业技能等;

以后超龄不能当空姐了,我还有机会从事其他管理工作。华南师范大学三年级研究生卢卉从小就有一个飞翔蓝天的梦想,而南航刚刚推出的超前职业规划吸引住了她和同宿舍女孩子的眼球,在讨论了5分钟后,3个女孩子决定参加2008中国新空姐招募大汇。

4月26日、27日,2008年中国新空姐招募大汇正式进入招募程序。近日,推广组进入广州及周边的星海音乐学院、广东外语外贸大学、华南师范大学、广东中医药大学等30余所高校,进行校园推广。记者发现除了五官端庄、外形亮丽、身材高挑的女生踊跃报名外,拥有本科、研究生学历的报名者也不在少数。

卢卉说,初三填志愿时,曾向父母提出要报考航天职业学校,但被父母一口否决,一定要考高中,然后上大学,在飞机上端茶送水有啥好的。考上大学后,卢卉又觉得,很多空姐十八九岁就可以上岗了,自己23岁大学毕业再去当空姐,要等待的时间太长了。

成为空姐几乎是每个女生的梦想,然而,吃青春饭似乎也成了不少女生在选择空姐工作时的隐忧,其中有不少女生在考虑再三后最终放弃了这个美丽的梦想。以前想过,现在不想了。觉得空姐始终是空姐,服务性行业,吃青春饭。我宁愿选择干一些更有技术含量的工作。大一女生周嘉玲表示。

大四女生陈文妍坦言自己并不会选择当空姐:即使我有空姐般的身材、相貌和气质,我也不会首选空姐,因为工作技能不高,没有太多个人能力发挥的空间,说白了就是端茶倒水的,不同的是在天空上端茶倒水而已。同时,陈文妍表示空姐的素质主要体现在个人魅力上,但由于工作技能不高,没有太多个人能力发挥的空间。

记者发现,周嘉玲和陈文妍的意见代表了很多女生的想法,学生们普遍认为,空姐虽然是一个高薪、风光的工作,但也因为对于年龄的严格限制,被公认为是一个吃青春饭的职业。同时,因为空姐招聘要求较高以及工作环境高辐射、高风险等特殊性,空姐成了她们可望而不可即的职业选择。

为解决女生们在选择空姐工作的后顾之忧,南航在今年的空中乘务员招募中,首先在国内民航界提出超前职业规划的理念。即在招聘过程中以未来职业拓展,未来岗位提升为视角对选手进行考核,根据应聘者的个性和特长,有针对性地在日后的培训和工作中培养乘务员的多项职业技能,让她们不但能够为旅客提供优质服务,还能在时机成熟时适应多重岗位需要,为走上其他工作岗位,甚至是企业管理层铺就道路。

南航股份公司党委书记谭万庚表示,在今年的空姐招聘中,南航格外注重报考选手的综合素质。并将根据选手表现出的个性特点,提供长远的职业规划,让选手得到的不仅仅是一份工作,还有职业生涯的上升空间。

程序员你真的只是程序员吗[1]


你是不是感觉标题有点矛盾啊,是啊,程序员当然就只是程序员而已嘛,还会有其他什么吗?

No,No,No,如果你以前是如此认为的,那看完这篇文章后,请从此打消这个念头,因为你要改变成一个不一样的程序员(怎么还是程序员?)

虽然我工作经验也就6年左右,但经历了很多,也自己创业过,也是从一个初级程序员走起,因为看的比较多了,某些东西也普遍存在着很多程序员身上,希望自己的经验能帮助你们。

当刚踏入程序员这条路的时候,有幸为一家公司开发一个大型的电子商务网站,因为这篇领域当时还算刚刚起步,自己的编程能力还不太好,所以做起来就比较吃力,每天重复着做完PM给的工作,但是做了大概几个星期,我发觉某些地方真的不合理,但自己又仅仅是一个程序员而已,怎么办呢?我还是按照PM的任务一步一步来做,私下里我用了大量的时间去尝试着我的做法,在接下来的几个星期,我试着跟我的PM进行沟通,他也发觉不错,所以一并写了方案提交给上级领导,很好的是,我们的领导发觉建议还不错,所以改变了原先的策略,对我们的网站原先的设计进行了彻底的推翻,一套新的理念就此诞生了。

这只是一个小例子,并不是炫耀自己的能力,我只是想说,程序员,你其实不仅仅是worker,更应该是Ideaer。当你选择程序员这条路时,如果你仅仅为了工作而选择的,我想你的人生真的很灰暗,为什么这么说呢?我面试过很多人,大多都是从培训中心出来的,虽然我也是从那里走出来的,不过我当时是为了学习编程而去培训,但现在更多的人会为了工作而去培训。其实如果你是真正的选择程序员这条路,我想你的思维能力一定不错,因为一般程序员大多是理科出生,理科靠的就是你的思维能力,在某些时候或许你的思维还不够敏捷,但我知道,每个人在接受了一段时间的工作后,就会产生各类的想法,或许某个想法你会改变你公司的命运,可为什么提出观点的人就寥寥无几呢?

我想可能是因为性格吧,因为很多程序员都是内向型,因为我们需要花一定的时间,去沉醉在代码中,因为这是一个奇妙的世界,无法自拔,所以很多时候就忽略了沟通,因为我们打交道最多的是abcd。如果你正是如此,希望你快点走出来吧,分清楚何时沉醉,何时交流才是最好的。我的偶像-唐骏,我看过他的访谈,他在大学时还是一个不会沟通的人,只是偏执于技术,而且和大多人一样,都会觉得自己什么都会,什么都行,是个天才,但在他大三的时候,他意识到了错误,花了几年的时间去学习交流、沟通,在宁愿委屈自己进入微软做程序员,再到无数次发意见给Bill,一步一步成就了这位打工皇帝。

所以,我们每个程序员要做的是,技术和沟通并行提高。在唐骏的话中,我会学到很多东西,他能从容应对每一次挑战,当时有幸成为唐骏的下属,见证过他的能力,虽然他当时只是个技术总监,但他的想法、创意给盛大带来了无比的利益,我不得不佩服他的胆大,不得不佩服他的能力。从他身上还学到了专一,其实很多程序员会在编程的道路上三心二意,这是很正常的,不过我相信一段时间以后你会学会专一的,因为程序真的很美,带来的不仅仅是工作和薪资。

我这里又不得不批判一些年轻程序员了,他们仅仅看中的是工资、福利等,没错,这是考虑工作的一点,但你要知道,有些时候,你第一点的工资,或许你会学到更多的东西呢?我经历过很多,经历过1年工资翻几番,又经历过折一倍,又经历过小公司,又经历过大公司,各种各样看的实在是很多,但我不会说我自己半途而废,因为每次我会把事情做的觉得自己可以了,我才会选择更好的发展前景。我面试过一些人,工作也就2,3年,做过的东西也很多偏向于OA、ERM等项目,就觉得自己很了不起了,工资也是漫天要价,可真正面谈的时候,我才得知,你仅仅是其中的一个小模块,但当我问其项目的整个运维的时候,就会楞个半天,最后来一句,这个模块不是我负责的,敷衍了事。那好,我问你自己负责的模块,如何具体写的,用了何种方式等,基本都会回答,三层架构,什么什么,My god 三层架构是你一个模块就能体现的吗?那好,既然你说三层,何为三层,三层的优点,缺点在哪里?诶~~~~~前几天首页那篇批判大学生的文章,我觉得写的太好了,你们这是在沉醉吗?如果你不喜欢,你为什么非要选择程序员这条路呢?

何谓程序员?何谓中国的程序员?


程序员,曾经是很多人尤其是计算机初学者为之崇尚的一个职业,仿佛就是理想、激情和事业的象征,从此就开始了IT白领人生。计算机技术发展之初,几乎就是一个个人英雄主义时代。一个天才的程序员,几乎就可以主宰一个计算机时代,创造出无数奇迹和梦想。

今天,计算机技术的发展日新月异,技术朝着愈加复杂和简单的两个看似矛盾其实一致的方向发展。计算机技术越加普及,无数非计算机专业的人群,出于爱好或者生存的需要,也加入了这个程序开发大军,并且都称之为程序员。

软件技术的发展,已经进入了一个大分工、大整合的时代,由此导致了软件开发工作的分层和分类越加细致复杂,同为程序员,彼此之间工作的技术含量可以说有天壤之别。系统软件、应用软件,是一个大的分水岭,几乎大多数程序员,都在应用软件这个层次进行开发,国内的程序员更是几乎全部如此。

既然是应用软件,就必然要和实际应用结合,而实际应用,是非常复杂多变的,尤其是具有中国特色的国内应用。于是乎,大多数程序员都在为开发应用层面的软件忙得不亦乐乎,财务软件、ERP、CRM、OA等等,几乎成了国内软件开发的主流方向,更不用说电信、石化、铁路、电力等具体行业应用软件的开发了,这些早已被称为项目了。国外的应用软件,除了以上业务应用之外,尚且还有像CAD、3D等专业领用的软件,具有一定的核心技术。

很多工作了多年的程序员们,在回首往事的时候突然发现,自己依然是一个辛苦的打工者,一个IT行业的苦力。反思一下,我们这些自认为程序员的工作者,其实是在核心技术的外围做一些表面工作,和那些非软件开发人员相比,我们觉得自己有技术,其实我们到底掌握了多少核心技术呢?现在的很多程序员,连数据结构、编译原理、操作系统等这些基本的知识都掌握得模棱两可,天天跟着老外的屁股后面追捧所谓的新技术、新框架。其实,又有多少是我们自己的呢?作为JAVA程序员,经常听到很多人自称精通Spring、Struts、Hibernate等主流框架,并有大型项目的开发经验,其实我们只不过比那些初学者多干了几年,使用这些框架更加熟练而已。国内软件行业的面试经常有此类现象,一个面试者可能这次面试不合格,但是他回去看一下书之后,再来面试,很可能就通过了。为什么?因为我们的面试太初级,太表象化。

我们经常接触IBM、微软等公司的面试,他们一般情况下是不会考核面试者具体掌握了什么框架、什么语言的,一般都是考核的面试者最基本的逻辑思维能力和分析判断能力。这也说明了,同为程序员,其间的差别是如此之大。

作为一名程序员,尤其是国内的程序员,应该对自己有一个清醒的认识,不要被表面的感觉所迷惑。到了这个时代,不是说程序员已经失去了光彩,而是我们所从事的层次,技术门槛已经大大降低,很多人处于同质化竞争。

怎么办?很多人说软件行业是个辛苦活,国内的很多软件公司更把程序员当牲口使用。其实,根本上还是怪我们自己没有很好的反思和调整。一方面,如果对技术真的有浓厚兴趣和激情,那就不妨向软件的底层核心技术迈进,另一方面,如果觉得自己真的缺乏这方面的潜力,那就努力适应国内环境,实现技术与应用的完美结合,争取向公司的中高层发展,如果不给与机会,那就自己创业,选择好技术和市场的切入点。

此外,一名优秀的程序员,一定不能是一个唯技术论者,如果持这样的观点,即使专心做个技术专家,也会存在发展障碍。微软的例子,sun公司的例子,都生动地说明了技术与市场的辩证关系。

当然,每个人的成败观是不一样的。如果始终把技术追求放在首位,追求技术完美的境界,并以此为乐,也未尝不是一道美丽的风景。

从程序员到软件工程师[1]


看了程序员系列文章,颇多同感。做为一个从业13年,一直做软件开发的人,我想给那些已经、将要和有志于走上这条路的朋友一点点忠告。

首先,说说程序员和软件工程师。虽说都是编程的干活,但是还是有一点高下区别。

主要说来区别是程序员programmer是将程序(已经有流程,伪代码或设计模板)写成代码;需要熟练掌握至少一门编程语言。而软件工程师则要将目的描述成程序语言并实现的能力。例如将数学算法、自然语言、思维模式描述成程序算法,程序流程/类或/和人工智能,并写成代码的能力。

对初入行的人,当然重在语言,要做一个合格的程序员,首先要熟练掌握语言。包括语言特性和实现的能力。例如使用尽量中文说的面试题,就要求面试对象掌握C++中的类的封装;构造函数的重载和运算符重载。

做过一两年后,要想继续吃这碗饭就必须提高自己,首先当然是深入了解语言,特别是语言的思维方式,编译器的工作方式和常用设计模板。就拿C++的多态性来说,很多公司面试就会问什么是虚函数/纯虚函数(思维方式)?用C如何实现函数重载(函数指针和了解编译过程)?接口类/工具类/工厂类和 Sigleton类的实现(常用设计模板)。另外还有一大块就是内存管理了。

如果能做到深入了解语言本身,那么恭喜你,你现在Title至少是高级程序员了。

在对自己的语言有信心后,下一步就想一想自己要想哪方面发展。是管理方面(项目经理)还是技术方面(软件工程师)。既然这里讨论编程,我们就先不考虑项目经理。想发展为一个软件工程师其实也有两条路。一条是走系统软件工程师或者叫架构工程师的路;另一条就是算法工程师。

在国内的朋友我建议走架构工程师的路。要求就是知识面广,对整个系统熟悉,能很快了解和分析客户/设计需求,很快估计工作量、风险和所需要的资源(承担相当部分项目经理的任务),能根据现有技术人员储备提供一个解决方案。当然还需要一定的表达能力和文档写作能力。例如我当年走访某省农行,和对方聊了银行卡和医院医疗卡的联网,当天晚上就和市场部的人合作,搞了一个通宵,写出了60页的技术方案和外加40页的基于此方案的标书。

一般来讲,要做到对整体系统的深入了解,没有两三年的时间是做不到的。所以给国内程序员的建议是不要频繁跳槽,尤其是不要频繁跨行业跳槽。踏踏实实地将本行业的软件吃透,最好每个部门或模块都工作过。如果有这个想法,一般情况下你可以和项目经理沟通,通常他们会鼓励你这样到各个部门/模块工作。

我出国后,发现情况有点变化,由于语言和文化的区别,对自己走系统工程师的路没有很大的信心。只好转向走算法工程师的路了。

确定了这条路后,突然发现自己的数学能力太差了。不得不重新恶补线性代数,概率和数理统计等高等数学。同时将《数据结构与算法:C++版》好好从头到尾读了一遍。然后终于蒙混到了一个职位。

当时第一个任务就是在一个嵌入系统中写一段程序将bmp压缩为jpg。各位可能会问了,这个在网上满大街都是源代码,为啥还要自己写呢?其实这就是我不太建议国内工程师走算法这条路的原因。除非你是数学大牛,有自己原创的算法。否则在国内实在没有算法工程师很大的生存空间。但是在国外有很大的不同,稍正式的公司基本上都禁止使用open source。因为open source也是有版权的,有的是不能商用,更有的copy left是那些公司碰都不敢碰的。因为copy left要求你使用了他的代码,你也必须公开你的代码。

当然,我们可以看那些open source,然后自己重写。不过相信我,通常情况下如果你不是想简单做些变量替换就交差的话,看原代码不如看这个算法文档本身。

程序员的职业发展


程序员这个职业到底是不是吃青春饭,这个问题可能一直是每个初入职场的程序员心头挥之不去的阴影。最近看到一篇关于程序员生涯规划的奇文,也许能解答这个问题。

在IT行业由超常趋向平常的阶段,社会关注热点转移,程序员的社会平均薪资水平由高向低回落,引起了许多人对程序员前程的思考。按专家或行业资深人士的说法,程序员有两条进阶路线。一条是技术路线,由程序员,经系统分析师、系统设计师、项目经理、产品经理,直到架构设计师为归宿。另一条是领导路线,由程序员,经开发小组负责人、工程负责人,奋斗到项目经理。

勿庸置疑,每种说法都有存在的个例支持。实际上,能走常规进阶路线的毕竟是少数人,大多数程序员在吃过青春饭后,面临着前途选择问题。这与运动员、航空乘务员、舞蹈演员等的职业境遇是类似的。相比之下,程序员是种新生职业,而且是多数人认为更高尚的脑力劳动,如果能看到更好的转型方向,还可以心理平衡。现在面临困境的程序员们,在未看到明朗前途时,迷茫,焦灼,敏感,难容对自己不利的言语(哪怕是真实的)。

站在企业主的立场,希望能保持IT业的狂热,既能保障程序员的高待遇,又能获得企业的高收益。问题是市场不接受,IT产品和服务的价格越来越低,企业出低价又招得到人,程序员的薪资水平下降是自然的事。对于程序员的辛苦和劳动与收入的不公平感觉只能表示理解。

从程序员的角度,可以发现更好的方向,IT业不断有新东西出现。用J系列语言比用C系列语言更时尚,用面向对象(或构件)的方法比面向过程的方法更先进,还有Delphi、。net、eLearning等开发工具,更有ERP(企业资源计划)、CRM(客户关系管理)、SCM(供应链管理)、CPC(协同产品商务)、BIS(商业智能系统)、EAI(企业应用集成)、EIP(企业信息门户)等层出不穷的新概念。如果你能不断与时俱进,追着新东西走还行,但毕竟是年龄不饶人,三、四十岁的肯定不如一、二十岁的记性好、反应快,长江后浪推前浪本是自然规律。

从经济发展规律来看,每个新生的行业都要经历高潮、低谷、平常的时期。IT业从社会热潮地位到现在的社会平常地位是很正常的事。只不过我们习惯于接受地位不断上涨,对回落难以接受。这只说明我们的教育有缺陷,心智不健全。

对于程序员个体,只能适应社会状态。如果你是天才、精英,不会有职业的烦恼。如果你是平常的程序员,或自认有才但运气不好,就应该思考前程的问题。

一般来讲,社会对程序员的定位是满足技术需求,程序员自身所受的教育和积累的经验也使自主前程意识局限于技术路线。实际上,我们所看到的在技术方面有建树的前辈多是综合型的人才,单纯局限于技术思维的多有行为局限,也难看出自身的幸福感。其实,人有多方面的属性,除非你是极少数的天才,在某一方面特别突出 (相应地在其它方面就很脆弱),大多数人是多种属性综合发展,而且各属性间相互促进。所以,在考虑程序员的前程时,有必要分析程序员的主要属性及其可能产生的影响。

技术属性

从表面上看,程序员是会使用计算机语言编写程序的群体。实质上,程序员是联结精神世界与物质世界的最有效的中介,将人语转变为物语创造财富。以前我们所说的技术,是分科的技术,或物理,或化学,或生物,程序员的技术是全面涵盖的技术。从人的意识到物的结果的全面流程看,程序员所用的从应用层到物理层的分层次体系(如ISO/OSI网络模型)是一种严密有效的逻辑结构,这正是经济建设需要而传统文化沉淀缺乏的要素。

高尚属性

文化素质高,与IT精英接近,感受的文明信息量大,经济基础较好(与一般劳动阶层相比),决定了程序员的生活方式、趣味、格调更高尚,表征一种社会文明的指向。如果程序员介入到其它行业,为了保持生活的水准,也是保持勤奋的工作习惯,表现得非常努力,传播积极向上的精神。这如同在先进国家或大城市生活过一段时间的人,再回到相对较落后的地方,会作为文明种子,产生积极的作用。

人生属性

当你把程序当作异物看待时,编程是一种负担,是劳累的事儿,需要在工作之外得到补偿。如果程序员能把自己作为一个具有个性的人的主体存在,程序就只是人的属性的延伸。这时,程序就不会作为人的负担,就象人不会把自己的肢体作为负担一样。这样的人会不断努力,不断学习新知识,把程序作为人生奋进的载体,创造性地使用程序,会把编程中的普遍东西升华成一种精神,主动地影响其它领域。

面对工作人们通常有三种态度,一种是把自己放在利益的案板上任人宰割,把工作当作获取利益的工具;另一种是跟着兴趣走,视工作为玩乐;第三种是把工作当作展现人生的载体,将工作视为实现人生使命的阶梯。

我们提倡程序员热爱本职工作,在本行内不断进阶。但也应正视现实,看到人的当前选择并非都是适合自身的条件的,以程序员的基本素质,在技术路线以外也可以有更大的作为。程序员应勇敢尝试更多的选择,在选择中认识自我,找到适合自身发展的方向。

人有外职业和内职业,外职业是你现在从事的职业,是可以改变的。内职业是适合你自身条件的职业,在一定程度上难以改变,它可以升华成一种精神,产生更大的影响。

程序员是一种当前社会稀缺的人力资源,程序员应该是播种机,将理性思想,工程手段普及到更多的方面,为经济建设提供更大的力量。

在工业社会,工人阶级因其无产性,成为对资产阶级最革命的力量。在信息社会,程序员因其学习性和与时俱进性,会成为对懒惰阶层的强大革命力量。所以,从社会负于程序员的职责来讲,程序员肩负重任,前途无量。

如果你一时没有读懂,建议再仔细看看,也许它能改变你对程序员职业生涯的看法。就我对这篇文章的理解而言,这篇文章主要阐述了程序员是信息时代先进生产力的代表,程序员的职业决定了程序员站在信息变革的最前沿,比社会的其他阶层能更早的感知到信息社会的每一个变革的发生,程序员职业要求的学习能力、综合素质、与时俱进性是把握这种变革的能力保障,当然这并不是说任何程序员都能够把握这种变革,开创自己的事业,对于大多数人而言,必须培养自己的综合能力,而不是仅仅局限于技术路线,才能真正把握住机会。每个人都有自己的解读,你的想法是什么?

程序员你真的只是程序员吗[2]


或许上面写的比较偏激,但真的是很普遍,我想告诉你们,你们虽然只是负责一个模块,但无论如何,请要知道你的项目到底是什么,如何运转,哪些地方好,哪些地方不好,因为这是对你自己的一个提升,也是对公司的一个负责。说到负责,我不得不说责任感,很多人就是缺少了责任感,以为完成了任务就可以了,但你要知道,你的公司或许等的不是你的完成呢?

请您拿到项目需求的时候,分析一下您要做的东西,用你敏捷的思维想一下,该如何去做,还请您多想想下一步,如果扩展了,我要改哪些地方,最重要的是,请您想想,这个任务对公司是否有利,或许你会说你只是个程序员,我没有权利去改变任务,没有错,你是个程序员,首先请你完成你的任务,在完成任务的同时,想想任务的完成对公司的运营是否起到反作用,因为有时你会比你的老板更了解项目对公司的利弊。如果你真的觉得不太好,不要怕,提出你的观点,但一定要想好你观点的描述,尽可能的表达清楚,让你的老板知道你的意思,因为老板他不一定懂技术,所以一定要白话一点。如果你的观点是正确的,你们老板也听明白你的意思了,那样你们老板会更加的器重你,而不会不可理喻的让你完成他所要的东西了。毕竟这是对他好的建议,也是对公司发展好的建议,如果你的观点不好,那样老板也会给你一定的提点,何乐而不为呢?

下班后,请你抽空想想公司的发展吧,因为你是公司中的一员,公司发展前景好也代表着你的发展前景好,如果你的想法给公司带来了好的前景,那也是对你能力的一种肯定。

最后说说面试,我也经历过很多面试,同样也面试过很多人,刚开始也会为工作着急,到处找面经,但最好的面经是无法从其他地方找来的,因为面试是一个展示自己的机会,而不是一再的ctrl+v 。刚开始我也会紧张,但马上,我调整了自己,每次面试就当自己一种磨练,一种交流、沟通、展示的机会,随后的几次面试都比较成功,再随后的几年,我回到了老公司进行面试,显然他们对我的能力已经是一个肯定了,最后我还是没有选择他们,因为我回去面试只是为了看看公司的发展进行的如何了,因为这一切也有着自己的一份努力。最好玩的是一次邮件面试,对方给了很多题目,大多是网上都有的,我也没有baidu,用自己的想法回答了所有的问题,并提出了很多意见,没想到对方回错了邮件,把他给人事的邮件发给了我,貌似是说面试还可以,就是工资高了点之类的话,我也懒得继续往下看,回信给对方,发错邮件了。过后不久收到对方的面试通知,更确切的说是offer,不过在他电话中我直接给回绝了,因为我已经在一家自己喜欢的地方就职了。

我爱我的公司,我爱我的程序,我也爱我的老婆和家人,因为他们给了我快乐,也给了我支持,让我能更全身心的去投入到代码之美中,我更相信公司能异军突起,成为IT界的领军人物,因为我看到了一群为公司孜孜不倦,辛苦能力的同事,我很爱这种氛围,我相信我们的努力一定会给自己带来收获,就算没有收获,我也没有任何怨言,因为我沉醉了,因为我快乐,因为我是个快乐的程序员。

java程序员职业规划


职业规划是对职业生涯乃至人生计划的过程,职业生涯规划的好坏可能将影响整个生命历程。感谢您阅读《java程序员职业规划》内容,职场资讯网小编向您推荐一些职业规划知识,欢迎参考,希望能帮到你。

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%至50%.

而微软早在2011年年中便计划为员工加薪,并提高薪酬中现金部分的比例。在发给员工的一封电子邮件中,微软CEO史蒂夫。鲍尔默表示将为发展最快的市场上的部分员工加薪,其中包括研发部门的中高级员工,以及某些地区的所有中级员工。为了更好地奖励出色的员工,微软将使受奖员工比例由之前的50%提高到80%.鲍尔默在电子邮件中称,这将是我们有史以来幅度最大的一次加薪。

不仅是硅谷,去年一整年,这股相互挖角的风气还刮到了世界各地的就业市场,中国也不例外。近日发布的《2011中国企业招聘现状调研报告》显示,高科技行业2012年招聘需求将呈现大幅反弹,较2011年将增加近2.3倍,增加幅度位于各个行业榜首该报告是人力资源公司CHINAHRKEY针对167家企业招聘调查的结果。前程无忧(51job)的统计也指出,2011年,计算机/通信/电子行业的招聘职位数排行第一。

而韬睿惠悦发布的薪酬调研报告中,高科技行业在2011年的实际加薪率仅次于银行业,而在2012年的预期加薪率则与银行业持平,皆为10.7%的幅度。2012年全球经济形势并不明朗,中国市场也会延续高通胀预期。如何在此种情况下吸引、保留人才,将会是中国企业的一大挑战。韬睿惠悦全球数据服务咨询中国区总经理许文宗表示,为了让核心岗位具备竞争力,在高科技行业,研发、销售这些关键岗位的年度总现金收入就比该行业平均水平分别高出18%和10%.

事实上,高科技行业的人才争夺战从未停止。在这个领域,近期最引人注目的莫过于去哪儿和携程的人才争夺了。经历了10年的发展,在线旅游网站的战火已经从用户、流量和资源竞争燃烧到了人才领域。去年底,去哪儿CEO庄辰超甚至在微博中称:携程12周年庆当天我在携程总部办公楼各个办公室挖人,收获颇丰啊。

对此,携程人力资源部总经理施琦不愿置评。但他坦言,随着进入中国在线旅游业的公司越来越多,这个行业的人才竞争变得空前激烈起来。实际上,携程每年都会参与薪资调查,并根据调查报告对员工和经理人的薪酬进行相应的调整,所以携程每年重要骨干的流失率都是个位数。

相比之下,去哪儿的招聘和留人策略则更为激进。2011年,去哪儿的员工数从200多人一下子扩张到1000多人,其中,从校园招聘的毕业生达200人左右,核心员工的离职率约为5%.随着部门的扩张和架构的调整,每个部门的主管都需要发动各种资源和渠道进行招聘。

为了吸引人才,目前公司经理级以上的员工都持有股权。2010年7月前,去哪儿实施了全员持股政策。去哪儿网副总经理钱臻表示。毕竟,在线旅游业的从业人员本身并不多,富有经验的人才就更加稀缺了。今后一段时间,旅游电子商务公司的人才质量很可能成为企业间竞争的关键。

除了OTA领域,各大门户网站也纷纷祭出薪酬的手段保留人才。2011年春节后,搜狐几乎全员提薪10%左右;腾讯在去年4月人均涨薪9.3%;新浪去年5月的提薪幅度大约为14%;网易门户在6月的调薪覆盖了60%的员工,综合调薪幅度平均为25%.

这是因为,眼下的门户正处于第二轮扩张阶段,很多旗下的频道希望分拆上市,于是缺人成了普遍现象。另一厢,IT企业的从业者大多数为年轻人,他们普遍加班多、压力大,流动性也大,而涨薪是最直接的留人方式。

腾讯的HR负责人此前对媒体表示,互联网行业的人才非常稀缺和宝贵,真正好的人才不多,且都去创业了。为此,新进入到这个领域的人才,企业都会用超常规的办法去保留。

不过,施琦并不完全认同始终向市场看齐的薪酬管理方式。去年,不少人都见识过了某些公司高调地用2至3倍的薪酬挖人,但过了没多久,又很高调地裁员。

2011年年中开始,电商业就陆续传出有企业倒闭的信息,例如金光集团投资的百货B2C网站大货栈,以及我友网、飞虎乐购等网站也在进行业务和人员的大调整。而B2C网购平台品聚网也发布官方公告称,由于公司资金链断裂,将开始准备进行清算,并暂停公司相关业务。而团购网站的裁员信息也是接连不断,有员工甚至表示2011年年终奖将一无所获。

施琦认为,当前浮躁和混乱的市场环境下,公司除了提供更具竞争力的薪酬外,为员工提供更多的发展机会,让他们找到真正的归属感很重要。

吃青春饭的十大职业


第三部分,未来职业生涯规划、家庭环境分析、例如经济状况,家人期望等。感谢您阅读《吃青春饭的十大职业》内容,职场资讯网小编向您推荐一些职业规划知识,欢迎参考,希望能帮到你。

职场中职位性质的不同,对员工的要求也会不同。有的需要年轻的,有的则需要成熟经验多的人。还有的职业会挑性别,外貌,体型等。现在越来越多的行业被划入吃青春饭的行列,今天为大家整理了前十名。对于吃青春饭的行业来说大家要尽快规划自己的职业生涯啊。

吃青春饭的十大职业

十、保镖人员

我们经常在电视上看到穿黑色西装的保镖,个子都很高,通常戴着黑色太阳镜,看上去很吓人,小心发现这些人一般都是年轻人,这不难不年轻的优势,所以排名第10位。

九、餐饮界服务员

各类酒店,食品店服务员谁是年轻漂亮的女孩,个个年轻漂亮的女孩时尚,让客户很对年轻人的心令人欣慰的是行业的优势,它被列为第九。

八、年轻貌美的空姐

空姐这个职业,一般在高三开始选拔..年轻漂亮的外表,甜美的微笑,非常周到的服务,但年龄,没有优势,或无法避免失业的风险,所以排名第八。

七、导游从业者

我相信大家都有过跟团旅行,在我们的脑海中,在服务大多是年轻男女,并为你马不停蹄,在这项工作中,不是年龄要求的经验,身体的考验是非常大的考验。谁已经转向物流较大的导游一般年龄;因此被列为第七。

六、模特从业者

在模特界,人们不仅需要长得漂亮,还需要身材高大,才能上台表演。 我相信每个人都发现,模特舞台上几乎没有年长的女孩,再加上每年进入这个行业的年轻女孩的数量,当你稍微年长一点的时候,你就有丢掉工作的危险,所以你排在第六位。

五、媒体工作人员

新闻媒体行业的人们往往因为新闻的无效而不得不首先获得信息,这是一项非常艰苦的工作。往往以同样的速度,每天带着相机到处跑,比较正常,长时间的加班和疲劳,到了身体中间就会受不了,所以对媒体记者的年龄要求也比较高,到了30岁就避开了转场,所以排名第五..

四、文职人员

女性候选人店员的位置,一般的招聘门槛相对较低,一些没有技术含量的工作,年轻的女孩更合适,因为年龄比较小思维敏捷,聪明,不会受家庭生活,对工资没有很高的要求,因此适用于只是女大学生毕业。但随着年龄的增长,就会被淘汰,因此被列为第四。

三、公关从业人员

公共关系的工作就是和各种各样的人打交道。 在社会上,年轻漂亮的人有很好的形象感。 因此,公关人员必须年轻漂亮,不仅要年轻,还要有很好的谈判技巧。 所以他排在第三位。

二、文秘工作者

一般公司在招聘文秘的时候,都要求年龄在28岁以下,还要有一个好看的..在工作中经常为上司或领导处理一些断章取义的工作,负责公司沟通..秘书工作也定期与领导一起参加各种会议和聚会,认真决定秘书一定是一个漂亮的年轻女孩,这也是公司的形象,所以列为第二位。

一、互联网IT行业

我相信大家都知道,我国大部分的互联网行业,都是996工作制,甚至经常工作到深夜,也是非常普遍的,长期高压力的工作强度,对员工的年龄有很大的影响; 30岁以上的人往往厌倦熬夜工作。 在当今社会,人们在30岁就开始组建家庭,他们的工作很容易受到家庭的影响。 在 it 行业,技术变化非常快,员工需要学习新知识,即使它很容易被行业淘汰。 面对迅速退化和紧张的工作压力,越来越多的年轻人进入了这个行业,如果他们到了30岁还不进入管理层,他们就有失去工作的危险,因此排名第一。

程序员职业规划之我见


职业规划怎么写,相信很多朋友们对这个问题很感兴趣,下面给大家介绍一下。第一部分,前言即总论;第二部分,自我分析,包括业余爱好、性格、价值观、专业技能等;

如果把你的职业人生想象成为一个你正在开发的软件产品的生命周期,现在你的所有需求都已经明确(有车,有房,有钱,有公司等等),接下来我们就要开始为自己做职业规划了,在制定这个职业规划的时候,我们要重要的注意以下4个方面的内容,这个四个方面运用到整个人职业的生命周期中。

一、选择市场。

一定要谨慎的挑选你要关注的技术和商业领域。如何权衡风险和收益?

都是做软件开发,你究竟要做与硬件相关的还是与网络相关的?与手机相关的还是与汽车相关的?每一个分支都有专家和权威,你要确认自己想站在哪一个分支的顶点。在深圳很多程序员,为了生存,先入行再转行。程序员需要积累,面试官不喜欢一张白纸上满是编程理念的空头支票。

二、投资

做生意哪有不投资就赚钱的好事,你的知识和技术就是你这件生意的基础。所以你要在这两个方面合理的投资,时间,金钱。只知道在理论上使用VB或者Java已经远远不够了,那么在新的环境下,新的平台下,又有哪些新的技术你应该具备的呢?

三、执行力

用我老板的话来说单纯有技术出色的员工,并不能给公司带来利益。员工必须要有产出才行。有的时候一名优秀的员工产出远远不及一名普通的员工,反而有时候会让简单的事情变的一团糟糕,2分钟一个简单的算法,被花上2天时间提高0.001%的效率这种事情也是经常发生的。所以我们应该考虑的是能否创造最有利的价值而不是完美,

四、团队

程序员孤军奋战成不了大事。一个再优秀的程序员也完成不了整个windows操作系统的工作,虽然我见过一个人是可以独立完成破解windows的工作的。所以如果不想过于孤单和山寨,请找到一支正规军加入他们。

五、又是市场

你们肯定会说,你开始写循环了是吧?怎么又是市场?

一个人选对了市场,投资技术,有了回报,有了产出,有了自己的团队,恭喜你,你离出产品的日子不远了。但是你有没有考虑一下你的产品的市场,若是无人知晓,毫无用途,又怎么会有利润呢?你的成绩又怎么会被老板和同行认可呢?请记住:一个团队奋斗了1个月写出来一个:Helloworld!是赚不了钱的。

从程序员到软件工程师[2]


当时看算法本身的文档,然后又回头看线性代数,终于理解了算法,并用程序表达了出来。由于是嵌入式用的,又花了大量时间进行算法优化。

后来跳槽时终于尝到甜头:

1。薪水高,基本上一应聘就是Senior的职位

2。稳定,这个一般大街上招一个程序员是做不来的

3。机会多,这个怎么说呢,反正只要是大公司招人,象微软、Google等,除了问一些语言本身的问题外,基本上就是算法和数据结构的问题。

通常面试那些时间你写源代码是来不及的,基本上就是写伪代码。或说明你的算法基础和思路。答的好一两句话就解决了。

想走这条路的朋友,我首先建议好好读读《数据结构与算法:C++版》,里面所有常用算法和经典算法及数据结构必须烂熟。其次,建议将大学课本找回来,几本高数好好复习复习。《线性代数》《概率和数理统计》《微积分》《常微分》等等。

我们不是大牛,基本上创造不出新算法,但是我们能够将别人的算法实现或者能把一个具体问题分解成已知的算法,那么你就是一个很不错的算法工程师了。

说实在话,语言只是工具,是很容易掌握的。99年2000年泡沫时期,不是很多人突击那么三个月就可以上路做programmer么。就象刀法是很容易学会的。要应用精熟,也不过是长时间的积累而已。

对语言的理解实际上就是对刀法的领悟,有人是顿悟。但是多用总是会渐悟的。

最重要的是基础,就是数学能力,那可是内功。可以这样说,你要想真正和其他程序员拉来差距就在这里。

我朋友的孩子想走计算机编程这条路,考大学我就推荐考数学系!

再有就是多做那些大公司的面试题,一是锻炼自己的大脑,二是熟悉这些算法的应用。

好了,现在能想到的就这几点,这里给几个面试的例子,看看能不能用最简单的描述解答

1.如何生成一组正态分布的随机数?

2.有一个二维迷宫,如何找到出口路径?

3.有数据库存储一股票每五分钟的实时报价,如何生成每小时,每天,每周的股票价格变动曲线?

====我的建议答案

1。生成二维随机数,只取落在正态分布包络线内的数

2。二维连通图深度优先遍历

3。傅利叶变换

程序员六大职业素养


第三部分,未来职业生涯规划、家庭环境分析、例如经济状况,家人期望等。感谢您阅读《程序员六大职业素养》内容,职场资讯网小编向您推荐一些职业规划知识,欢迎参考,希望能帮到你。

说起职业素养,可能大家脑子里马上反映出来的是西服领带公文包的精干白领形象,其实作为程序员来说,外在可能没有那么重要,更多的是内在职业素养,本期调查分享了两个研发小组的故事,让大家在统计数据的基础上进一步了解什么是程序员需要的职业素养?

案例一:问题团队A

D公司是个在发展壮大中的贸易公司,由于业务发展员工从刚开始的10人两年内增加到150多人,管理上出现了沟通效率低、对员工工作难以监控的现象。公司想近期上OA系统,以加强公司的工作效率、支持快速增长的业务。经过几次与F开发公司的沟通后,双方确定了合作意向。安排有两年开发经验的开发工程师苏成,作为项目经理带领三个开发人员,开始了D公司的OA项目。

因项目不大,没有特别安排需求工程师,而由项目经理与客户确认需求后进行开发,初为项目经理的苏成信心爆棚:对外,他想当然地按照合同后附的简单需求说明草率开发;对内,他认为项目经理拥有绝对权力,任何关于开发的不同意见都听不进去。在第一期快结束时,苏成已与项目组成员发生了N次争吵,大家纷纷要求调离项目组,团队面临崩溃。

在两个月未与客户沟通的状态下,苏成项目组向D提供了OA系统一期产品,按合同规定包括了:员工管理一项功能和其中四个子项。看完基本功能演示后,D公司的HR经理Helen几乎崩溃OA系统中员工管理没与考勤部分联系起来,而且在系统中增加一个新用户需要五步,十分繁琐,很多功能也与公司需求相差极大。

但是苏成却认为这些都是小问题,更让Helen气结的是要求增加一个小的统计功能时,他居然说做不了。后来才了解到,原来在开发时,项目组并没有留下文档,加之团队其它几个成员均已准备离开项目组,任何在此模块中的小小变化都会面临所有代码重新开发的局面,更不用说要新增什么功能了。

最终苏成辛苦开发了几个月却没有得到相应地回报,客户不满意,项目组成员不满意,研发部总监更是对他的能力产生了怀疑,在几经努力拿到D公司的第二期项目开发合同之后,更换了项目经理。

点评:程序员如何以明确需求为基础与客户沟通?

如果有专门掌握需求编写技术和经验的需求工程师作为客户和程序员之间的桥梁是最理想的状态。但以国内目前的国情,每个项目组都配有需求工程师的并不多。因此,正确地帮客户表达需求、正确地理解需求就成了程序员的基本素质之一。在此次调查中66.67%的被访者认为能帮助客户正确提出需求是程序员职业素养之一,可见在程序员内部已就此达成了相当的共识。认为能使客户需求更完善是程序员看重的职业素养之一,占到此次调查的55.13%,这说明超过一半的程序员认识到,帮助客户完善需求会节省双方的时间和精力。

那么如何才能提高自己的需求分析能力呢?以下分享几个有关需求的小技巧:

1.尽量提高自己的表达和沟通能力。良好的表达和沟通能力能在客户不能清楚表达需求时,融入到客户组织内部,了解客户的工作流程,与客户共同更好地、更准确地定义和分析需求。此次调查中60.90%的被访者认为沟通能力是程序员应具备的基本能力,但只有28.85%的程序员认为表达能力是程序员必备的基本能力。沟通固然很重要,但我们更应该进一步认识到准确表达自己的观点和意见也是成功沟通的基础之一。如果只沟而不通仍然是在浪费方面宝贵的时间。

2.应用多种方式了解需求。常用的方法有:问题分析法和建模分析法以及几种方法的结合。比如在问题分析法中应用面向对象的思想,与客户的员工谈话,访谈首先要面向工作流程,面向任务,面向角色,也就是用面向对象的思想帮助客户理清思路。

3.不臆测需求。如果有专门的需求工程师,有一点要特别强调,就是在编码过程中当需求不明确时,必须与项目经理或需求工程师及时沟通,程序员不能自作主张地猜测客户的需求。

4.不过度承诺。很多销售人员拿到项目,向客户大包大揽,甚至完全不顾公司的现有开发能力向客户承诺很多功能。在定义需求阶段,一定要向客户说明什么是我们能做的,什么是我们应该做的,什么是我们不能做的。很多时候过度承诺导致了新功能无法实现的同时,原有功能也受到影响。在此次调查中,有59.62%(近六成)的被访者正确地认识到对客户提出的不合理需求拒绝得当也是程序员职业素养的一个重要方面,这是非常难得的。

案例二:严格开发流程的团队B

国资委某下属集团公司要上OA系统,C公司在研发能力、价格两个方面以综合分第一的成绩竞标成功。拥有10年项目管理经验的李石被任命为项目经理,并由他组建团队。李石对团队成员只有三个要求:分析能力、产品意识、较强的团队意识。

初选方案

需求确定后,项目有两个方案:更流行的BS模式和传统的CS模式。李石安排两个程序员前期负责选方案,分别基于两种模式开发用户权限管理系统的原型,给大家做演示,并结合客户特别评估每一个架构的优劣。

分析了BS/CS的特点、结合客户的需求,他们发现:

1.从流程的定制来看CS结构更加利于客户方便地进行可视化定制;

2.从公文的不可修改、保密性以及电子图章的不可诋毁性需求来看,CS框架更加利于实现DRM技术和数字指纹技术实现;

3.从公文的打印需求与一般WEB报表的差异性来看,CS框架更加适合对打印格式的定制与控制;

4.从客户提出的内部电子会议的实时性来看,CS框架明显优于BS框架的非状态性,能够做到更顺畅、更及时的沟通;

5.从系统的安全性来讲,CS框架更加适合硬加密系统(如加密狗、U盘Key)与系统的对接。

产品开发

在开发过程中李石强调了每个程序员的产品意识,取得了不错的效果。比如客户要求一个能上传文件的功能时,并没有提出UI需求,团队的B程序员并没有简单完成任务了事,而是做出一次能同时选取上传5个文件的程序。这种产品意识为客户使用带来方便,弥补了需求的不足。

团队配合

在团队B中,每个程序员都做到了做完一个功能后与项目经理沟通进度、结果,并与负责测试的同事沟通,及时检测Bug,及时修改并及时回归。每个功能的实现都相对完善。及时的沟通与相互学习,还促进了团队磨合。

经过8个月的开发,OA项目第一期完成基本功能顺利上线。C公司已顺利拿到了客户第二期的开发合同。

点评:成功的开发需要这样的程序员

通过上面的案例,我们为程序员总结出如下素养:

1.学习和分析能力。每个团队都在成长,作为程序员这个群体就更需要与时俱进。尤其是在开发这个知识日新月异的行业里。同时分析能力也是必不要少的。在调查中71.15%的程序员认为,学习能力非常重要,同时有57.69%的程序员认为,在技术方面有不同的意见时,处理妥当是程序员应该具有的职业素养。相信这个案例为我们提供了新的思路。

2.与内外保持良好的沟通,永远是成功的保证。及时汇报、沟通进展也可以在第一时间发现自己的偏差。数据证明59.62%的程序员认为汇报项目进展时明确及时是重要的职业素养。

3.产品意识。良好的产品意识可以大幅度提高开发效率,也能有效的弥补需求不足。例如,在案例二中,在做文件上传功能时,充分考虑了客户使用的方便性,弥补了需求中被忽略的细节。

4.团队意识。强烈的团队意识能帮助自己和整个团队更快成长,因为知识的分享是知识学习中一个最有效的方法,尤其是在程序员这个行当里。

5.编码规范和文档规范。据调查显示有分别由80.77%和68.59%的程序员认为编码规范和文档规范是程序员的必备职业素养之一。

女程序员的职业规划


职业规划就是对职业生涯乃至人生进行持续的系统的计划的过程。一个完整的职业规划由职业定位、目标设定和通道设计三个要素构成。

很多女学员对于自己的程序员职业都抱有怀疑的态度, 在此小编一篇女程序员的职业规划,供参考。

规划路线

范范的讲,老四样路线:1.技术线路。2.业务路线。 3.实施路线。4、销售路线。

女程序员的优势在哪里

IT这个行业技术更新很快,技能永远没有最高。挖掘和发挥女性自身的优势,才能立足于这个看起来男性主导的IT圈,当然,同时也需要自身不断的学习、积累和提高。

那女IT的优势在哪里呢?女性在细心和耐力方面比男性表现得更为突出。女性在技术管理方面更有优势。女性完全可以胜任上述规划路线的2、3、4。

很明显的一点,男性往往追求的是技巧(skill)的提升,而女性的优势则是ability(能力)。我周围的男IT们大多都有过或长或短的那么一段热血情长的编程经历。他们是IT界的钢铁战士,打了鸡血一般天天只睡3、4个小时,写代码,钻研技术,精神食粮远远重于物质食粮。但是女性对于技术钻研的狂热,似乎没有男性那么持久。这里不除去一些外界因素:比如家庭、身体状况等等。拼技术精通程度也许我们没有胜算,但是我们完全可以撑起那另外半边天。

在起步作软件工程师的3-5年里,自我学习,收集信息完善大脑知识网络。自我领导,诚信自律,沟通协作,不懂得协作又怎能妥善管理团队?通过作软件工程师的磨练,以一个崭新的面貌迎接职业生涯的重要拐点。发挥我们的团队领导力,转型的工作方向可大致分为:项目管理、测试管理和实施管理等。在领导团队的同时,在不断的平衡和协调中,自己的造诣也会得到大幅提升。到达业务领导的范畴时,依据个人能力的长处和兴趣而定到底可以胜任什么岗位。

谁老说女程序员不仅脾气大还拖后腿?在这里我要给还没毕业的准女程们一些信心:我所在的团队里3个妞妞都是主力,经常帮男程们解决各种各样的问题。对了,不知你知道否?世界上第一个程序员是女的。英国著名诗人拜伦的女儿Ada Lovelace曾设计了巴贝奇分析机上解伯努利方程的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。不管你信不信,反正我是信了~

不可否认的事实是,女性是这个行业里不可缺少的一分子,我们创造的价值也在继续让团队乃至整个行业受益。

以上《程序员误区:软件开发职业是青春饭》一文,由编辑精心撰写而成,希望对您的职业规划有所帮助,更多精彩请访问“程序员职业规划”专题!

相关文章

最新更新