程序员个人简历模板。

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

4、对代码的信任

作为项目管理者,你怎么相信他们的代码。有些程序员,你可以对他们说:我星期五就要结果.--星期五到了,你收到了这样的Email:代码我都已经检查过了,现在就等着测试了。你很放心,只会有很少的瑕疵在质量确保的团队被查到。当然,还有些轻率的例子,一些程序员在邮件里是这样说的:我还没弄完,星期一上午我会最先完成它.你不太确信这东西,发现很多Bug,很长时间基本上不能用。又得花上几个星期清理代码中的Bug.

关键:你对一个开发人员越有信心,他离成为一个伟大的程序员的距离就越近。想象你是你的管理者,如果他并不担心你的代码,会给你多少信心和勇气!

5、对方案的信任

和对代码的信任是一回事--如果你手上有伟大的程序员,你就会对解决方案有信心。这些程序员同时也是伟大的建筑师。他们剖析整个问题,指出问题需要怎样去解决。这就不只是用伟大的代码编程的问题了,很大程度取决于你怎样构筑解决方案。这是关键,而且会让你在软件世界里出类拔萃。

6、满足客户需求

一天下来,你写出了最棒的代码、用了最好的框架和最好的解决方案,但这真的能迎合用户的需求吗?恐怕根本不是那么回事儿。你搞砸了。尽管现在多次失手,一个伟大的程序员还是会正中靶心,找出客户需要的,给用户逐步展示他们所需要的无bug的最终版本。需求正中靶心的同时,用户满意了。

7、不断升级

伟大的程序员会积极主动地把自己的技术升级。他们对知识的态度就像饿猫见着了牛奶,他们从不用上级催促给自己设定目标、不用经理要求他们完成任务,因为他们自己就已经安排OK了。

他们发现自己想要参加的大会就会给公司写Email本人非常想参加今年的Tech-Ed大会。我将用心研习,并对作出贡献。我预计这可节省金钱/其他原因.如果可行,不知公司是否帮我支付此行?如果我收到这样的邮件,我不仅会帮他支付参会费用,他的路费我也会全程买单。

伟大的程序员们永远会关注例如。net用户组或Java用户组的所有用户群体。他们参加本地的技术会议,并从中汲取知识。你会看所有最新博客和最新的杂志吗?现在列出你最喜欢的前5个开发博客。你能做到吗?你应该像参加基督教青年会那样轻松做到。做到这些,可以很好的帮助你延伸你的思路!你将会不断获得更好的点子!你会得到更好的回报!WWw.ZC530.com

zc530.cOm编辑推荐

如何从优秀的程序员成为伟大的程序员[3]


8、团队奉献

你可以是团队中最棒的那个人,可是如果你不是最好的程序员、不是建筑师、不是团队里最有活力的人,那么对我来说,如果你不能分享或对你的团队有帮助,你的价值就会大打折扣。一个好的程序员会使自己周围的人同样强大起来。试想一下,好程序员会不断完善自己的知识和能力,如果他们不和周围的人分享他们的知识,他们从哪儿能获得更多呢?

他们不断学习新东西,发掘新技术,但是不会让其他人知道他们这么做了。一个好的程序员会准时完成方案,但是那是在催促和团队得不到休息的前提下。然而一个伟大的程序员则会与团队中所有的项目保持联系,在需要的时候还可以出手帮忙。他们会如是说:我注意到A团队的项目进行到xx进度了,如果不介意的话,我想我可以帮忙?

9、做好会议记录

做好会议记录绝对至关重要!开会期间,大家花大量时间来说明了新观点、新主张、集体讨论还有提出了新设计方案,可是会议结束后却没有人可以拿得出会议记录,简直没什么比这更糟糕的事情了。即使你有会议大纲,我还是期望见到参会的每一个人员都可以带着纸和笔(当然对于程序员来说笔记本则堪称完美).一个伟大的程序员会注意到这点。他们会记下所有的会议记录,并且在会议结束的的时候说:就刚才的会议,我着重记录了几点:XX 我是否记录全了呢?

接下来,伟大的程序员就会把他做好的会议记录分发给项目管理者,列出会议时间、会议主题和参会者。接下来,是会议项目的标题和重要条目。在这之后,就是这些议题的详细记录。一个好的程序员没有做会议记录,并在会议上对提出的每项事宜都点头称是,那只能寄希望于他的记忆力足够好了。随后,他会给你发邮件让你看看他的改动,你得回头提醒他忘记的不多,百分之九十的都没错。--这不是浪费时间嘛!根本不是这么回事!所以,做好你的会议记录。

10、孺子可教和接受批评

如果你读到这儿了,就表明你有希望接受这些建议,并在以后的开发行动中尝试执行。对,程序员的另一项重要能力就是向他人学习并且能够接受批评。通过把自己变为一个虚心受教的人,像海绵一样快速吸收大量知识,毕竟在编程的路上你还有很多前辈。当然,也许他们在写代码的岁月里慢慢生了锈,甚至伤痕累累,但是他们毕竟曾披荆斩棘跨过无数的坎儿。对于做出正确决定,他们又着瞬间的本能,让你不得不服。处于他们这个位置,很乐于见到你的成长和成功。

所以,只要你是个伟大的程序员,就会理所当然的拥有理想的工作环境。如果你不断改善技能、虚心好学、在别人给出的意见和批评中总结错误并得以改善,我向你保证你将会成为一个伟大的程序员而不只是想象自己变得伟大而已。如果你总把自己想象成为精英而不进步,那你只是自欺欺人。如果你不成长,你甚至不能停留到原地,等待你的只有灭亡!

如何从优秀的程序员成为伟大的程序员[4]


11、公司需要的时候总能出现

这如同等价交易。如果你为一家伟大的公司工作,他们会给你足够的弹性。公司不会限制你如何工作,不限制你开始或结束的时间,也不会限制你什么时候停下来歇歇。公司会鼓励你在休息时间做做操,甚至会在你和团队成员出去吃饭的时候为你们买单在繁复大量而紧张的工作后,公司会放你几天小假。诸如此类。

然而,毫无疑问,与前面的这些美事儿随之而来的是责任。如果赶上时间紧还得出活儿,伟大的程序员则建议你即使在周末也要加班。即使干得再晚也得把活儿干完。你看,伟大的程序员是要为自己的创作负责的。这虽不是必需的,但这是伟大程序员的标志之一。有些人只想朝九晚五的上班,他们可能不错,但是成不了伟大的程序员。伟大的程序员是团队中干到最后的那个,把作品视为完美的艺术,与团队成员亲如一家。

12、衣着职业化

你永远也不知道一个客户会什么时候突然拜访。你也永远不会预知什么时候突然要参加一个会议,不是每一件事都在计划中的。你得随时准备好展现自己。一个好的程序员周一到周五穿着普普通通,甚至有可能穿牛仔装和运动鞋来上班。在某些周五,他们穿着T恤,短裤和运动鞋出现。当一个客户突然在周五出现,要谈一个大项目,你没法把衣衫不整的他一块儿叫上。

一个伟大的程序员周一到周五都穿着职业化,衣服也能带来成绩。如果你不在意穿着,你也会因为穿的太奇怪而得不到晋升。毫无疑问,套装和领带还是很能提升你自己的。我向你保证,一套得体大方的西服套装会让你在今年就觉的物超所值。

13、沟通能力

这是另外的判定条件。这世上有太多优秀程序员,却没几个伟大的程序员。为什么呢?因为大多数程序员不善交流。交流的层次很多:从发电子邮件、参加小型SCRUM开发小组会议到大一些的主管会议,水平逐渐提升。这样你就能在数百人参加的会议上自如地展示你的软件。在会议上你不需要有好演技,但是至少要清晰明了地表达你的观点。你的沟通能力越强,你的职业道路就会走得越远!

概要:想要成为管理人员,你的沟通能力得分至少要打到9到10分。甚至你在会议上只讲了几分钟,或只一个小汇报,你都需要非常好的表达能力。别只是在你的每天的工作日志寥寥写上修补1371个bug,你要做的是尽可能描述清楚如何在这么艰难的情况下解决了问题。阐明你的方法,说明你如何保证这个bug不再出现。你就不再为你的日志发愁了。这会是你向经理展示自己的精彩演出。

14、目标设定的技巧

好的程序员日复一日的做你安排给他们做的事情,贯穿始终。他们并不往远看,不对明年、5年甚至10年后作打算。一些好程序员虽然知道自己想要什么,却没有具体计划去实现。伟大的程序员则给自己订立年度、未来5年的目标,而且大概预期到自己10年后的发展。

伟大的程序员有了目标不会只是想象,他们会具体实施。他们会根据具体情况,在预期的时间做具体的事情。他们会详细地制订明年的计划,包括要上的课程、要完成的项目甚至包括他们需要建立的人际关系。

如何从优秀的程序员成为伟大的程序员[1]


怎样评定一名软件开发人员?这是一个颇为奇怪的问题。现在已经有了很多的理论和形式来做这件事,人力资源部门也试着帮你管理和反省自己的行为。然而,怎样才是一个伟大的软件开发人员,在今天,你该怎样发展你的职业生涯?以下是我评定团队中软件开发人员的军规.按照这些技巧和规则,你可以改善你的现状,由一个优秀的程序员,成为一名伟大的程序员。

1、时间花在写精彩的代码上

这里说的不是数量,而是质量。对此,一种歪曲是:要数量,也要质量。你也许会很多次的遇到以下的两种情境:

情境A:你有一个发疯似的能写代码的程序员,事情似乎在进展中然后,Bug开始不断出现,你们也不知道为什么,好像永远补不完。补完十个,又出来五个,现在你手里的,就是一大堆代码

情境B:你现在有一个看起来很聪明的程序员,你面试他的时候,他似乎无所不知,能把理论说的头头是道。然而,你留给他三个任务,三个星期以后,他还在做一些三天就该干完的事。这下该你困惑了,他这么聪明,他知道generics(详见备注),多线程的一切事情,甚至还能给祖母级的人讲解什么是指针,让老太太兴奋的想去编程。可是--怎么什么都没完成?

于是,在梦境中--你写出了堪称伟大的代码,--伟大的代码是伟大的程序员写出来的,他睿智,明白代码的真正品质所在。写代码就像托尼?霍克在玩滑板一样自然优美,看上去就令人愉快。这些程序员以让你眼花的速度搞定一切,他们知道每个问题应该处理多长时间,也不会追捧寻觅所谓的世界最好解决方案,弄很多线程很多层来写一个简单的游戏。他们写的程序没有Bug,因为写的时候自己测试过了,在睡觉时也在写代码说的就是这样的人。这些程序员太宝贵了。

2、阐明问题

可以明确的是:即使有问题暂时处理不了,还有成百上千的方法去解决。有些人反应很迅速,很快就能提出多种解决方案。然而,一个伟大的程序员应该在做出行动以前清晰阐明问题--创建文档或用白板表达出来。他们写邮件给项目的管理者,这样表述:我想和你说说我是怎么理解这个问题的,我们能这样处理吗?然后他们就会动手给你多种方案。

对,这些人明白自己看问题和阐明立场的方式,而这理解方式大概不会是问题创建者所想要被理解的。请牢记这就是关键所在。一名伟大的程序员在尝试解决问题以前,一定要完全的理解它。你百分百搞明白了吗?没有?百分之九十九?--回去再多问些问题,确保百分之百理解清楚了。

3、怎样着手解决问题

那一搞明白了问题,就开始动手写代码?错!一个伟大的程序员应该按照规划,开始思考面临的多种选择,基于问题开始考虑最好的解决方案。我觉的这像一场国际象棋比赛。你知道每个棋可以怎么走,知道所有的游戏规则。但是你会马上走棋吗?不,你要审时度势,制订计划,紧盯对手,分析其通常的做法。和这一样,在你coding解决问题以前,你也要这么做。

看看问题,计算出需要怎样的结果,你的时间能怎么安排,预期的质量,你必须用的工具,好了,开工吧!

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


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

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

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

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

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

如何成为卓有成效的程序员[2]


The Productive Programmer则会教导你:

多用宏吧,启动它,你就可以迅速完成大量重复的工作;

多用脚本吧,你可以提高运行的效率,避免变数和误差;

多用自动化测试吧,你可以迅速定位问题,保证质量;

多用管道吧,这样多个程序就可以无缝结合成一条生产线;

没错,学习宏、脚本、自动化测试、管道(Shell),不是容易的事情。但别忘了,身为技术人员,了解技术,学习技术,运用技术,正是你的职业,你的优势,也是你的责任,你的生产力(所谓productive)所在。随便举个例子吧,在本书中文版的第196页有这么一段话:

在我刚才提到的例子中,开发人员用了1小时58分建立正确的语法,然后用了不足两分钟运行。在一些未曾培训过的人眼里,他的大多数时间都没有效率(这就是为什么他们反对使用正则表达式的原因),但最后,他节省的是几天的时间!

我还要补充的是,解决好这样的问题,现在能节省几天的时间,将来,更可以节省无穷无尽的时间!就我的开发经历来说,平时多注重这样的细节,做些 没效率的事情,积累起来,就可以节省大量的时间和精力至少至少,你不会抱怨,自己终日被一大堆简单重复劳动所困扰。

类似的例子,在书中随处可见,譬如作者讲到,几乎每个*nix用户,都会有自己的shell alias,真是于我心有戚戚焉:我自己积累了一大堆alias,喜欢用grep color把要找的内容标成高亮,也喜欢在统计脚本里用不同的颜色标注不同的状态在Shell下干活,更加简单、利索,一目了然,这种流畅和效率,也可算专属于程序员的宝贵财富。

当然,也有读者会觉得很烦:作者几乎讲一个很小的例子,几乎都要强调一遍:简单重复劳动是低效的(程序员不应该这么干)。不过,我丝毫没有觉得罗嗦,反而因此喜欢上这本一个下午就能看完的轻量级小书:阅读它,你并不需要太多的期望,权当一次愉快的思维体操吧你会发现,专属于自己的高效率,就来自书中提到的点点滴滴。

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


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

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

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

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

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

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

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

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

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

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

如何计算程序员自身的价值[2]


另外一种情况,当一个程序员的市场价值达到一定数值的时候,如50万、100万的时候,而收入价值处在较低的水平,例如,5万,6万,程序员往往会产生单干的念头,以期获取更大的收入价值。但是,程序员往往会忘记市场价值的实现并不仅仅在于软件本身,还涉及到资金、资质、市场、销售、安装、维护、服务等各种环节。所以个人开软件公司人数挺多的,但是成功的并不占多数。好的程序员往往不是好的老板,就是这个道理。

现实当中,大学生程序员年收入在2万元比比皆是,普通程序员年收入在4-5万居多,高级程序员在10万以上也不在少数,超过20万年收入的程序员也时有耳闻。

如果我们平均一下程序员的年收入,估计在5万左右。假定公司的利润率为50%,全部由程序员贡献,那么程序员的市场价值也就在7-8万之间。这就意味着程序员一生(35年计)市场价值也就280万。这与比尔盖茨巨大财富相比是多么的渺小呀!这同时意味着中国程序员市场价值有很大的增长空间。

认识程序员的自身价值的目的。

第一,就是希望程序员不要单看自己的收入价值,不要埋怨自己的收入低,而是要更多看看自己的市场价值到底有多高。

第二,市场价值就是编制满足用户需求的软件,如果这个软件销售不出去,程序员再辛苦都白费,市场价值为0。程序员应该争做具有市场价值的软件,同时尽力帮助软件实现销售。

第三,市场价值最大化就是多编制可复用的程序,以提高单个软件开发效率,以降低人力成本,提高利润率。

第四,市场价值最大化就是多编制商品化软件,在编制定制软件还是通用软件选择中,它可以成倍地提高程序员的市场化价值。

第五,有了程序员市场化价值认识后,程序员和公司可以共同地为促进市场化价值作出贡献,并到达员工提高收入,公司提高利润的双赢局面。

中国的程序员市场化价值相对较低,导致程序员收入不高,程序员技术水平降低,最终导致软件质量下降。我们要关注程序员市场价值的提高,技术水平的提高,使得软件行业通用能软件所占的比重大大增加,软件公司的收入大大增加,只有这样我们的程序员的收入大大增加,我们的软件才有更高的质量和更大的市场。

优秀程序员应该具备哪些素质[2]


六、面向对象

很多人都是从面向过程思维方式开始学习编程的,随后也学了面向对象编程方法,也用了面向对象开发工具和语言,但是,真正的用面向对象方法来编程、来设计编程构架、来进行功能分析、来需求分析还是很少的。优秀的程序员一定具备面向对象的思维方式,从设计到编程都贯彻着面向对象的痕迹,他们把面向对象作为思维的日常化。具有面向对象思维方式的人,可以对复杂混乱的事物进行抽象,具有很强的分类能力,化繁为简,程序更加模块化,程序共享度更加提高,具有大程序、超大程序开发能力。有关面向对象的问题,我在前面的文章中已经阐述很多了,这里就不在重复了。

七、基础扎实

要想自己编程能力有一个持续的提高,我们就必须要注重自己的基础建设,让自己能力的提高都建筑在每一层的坚实基础之上,即使能力再高,也不会被风吹得摇晃,尽显强者的刚毅不摧。我们不要小看已经学过的操作系统原理、编译原理、程序设计原理、数据库设计、数据结构设计、甚至计算机英语。这些基础是否扎实直接影响到以后的各种应用技术的掌握和掌握的程度。而大多数新的技术都是在原有技术的发展,因此掌握好原有的技术对最快掌握新技术是有很大的帮助的。此外,扎实的基础也使程序员把精力放在创新和解决疑难问题上,这样优秀程序员的处理能力将会大大增强。

八、条理清楚

普通的程序员则不太注重条理问题,他们对可并行处理的语句从来不进行次序的考虑;对语句使用没有一致性地使用,显得很随意;对处理流程往往一气呵成,一个函数能有上百上千条语句。他们最大的特点就是从来不多问一个为什么!而优秀程序员更注重程序条理,每个语句、语句的先后、语句的行数、函数命名等等他们都能说出为什么这样做。这种条理清楚地素质使得程序员能够把控程序的制作时间进度,也有利于大程序的任务的分隔。大凡程序员编写的程序能被其他人看懂的,基本上都是条理很清楚的。程序有条理,说明程序员的思维很有逻辑性,优秀程序员是最讲究逻辑的。一个优秀的程序员能把一个庞大复杂的程序说的有条有理,并且在程序上也显得可读性极强。条理清楚地表现形式之一,就是程序函数多,函数中的语句少。从这个意义上来说,优秀程序员也是优秀的设计师,项目经理。因为他们的逻辑是一脉相承的。

九、全面细致

我这里说的全面有五个方面的含义:第一、程序员要在编程过程中要全面细致,不要有遗漏,而这些遗漏往往造成了编译错误,需要花费大量不必要的时间去查改。第二,程序员要在设计过程中要全面细致,不要在功能设计方面有遗漏,尤其不要忘记例外情况的处理,许多功能上运行出错都是这种原因造成的。第三、程序员的编程技术要全面,要尽可能多掌握各种编成技术,例如,程序员不但要掌握前台开发技术,也要掌握后台开发技术,既要会文件处理,也要会数据库处理,既要会编写程序也要会制作安装盘,等等。第四、程序员的业务知识要全面,程序员不但要掌握编程技术,而且要主动学习和掌握用户的业务知识,通过对业务知识的掌握,才能更好地理解功能的意义,有助于编写更使用的程序。第五,程序员的知识面要广。优秀的程序员不但要掌握编程知识和用户业务知识,而且要有意识地拓宽自己的知识面,多关心新闻、时事、时尚、经济、技术、文艺、文学等各种知识领域,在知识的海洋中去畅游工作的轨迹,你就会有万事相同的感觉,这些知识会潜移默化地影响你编程的风格和效率。

十、求新求精

IT发展之迅速、技术更新之快捷,使得IT成为公认的追逐潮流的行业,因循守旧,固步自封,甚至年龄的增长都会导致程序员被这个行业所淘汰。有时候叹息行业无情也是情理之中。面对潮流的挑战,优秀程序员应该是无所畏惧的,他们应该始终怀有一种追求新技术的愿望,有一种追赶潮流,伴随潮流的勇气和胆识。因为这个职业就注定了这样的工作方式。当然,在新技术满天飞的情况下,我们不能也不可能有什么新技术就去学什么新技术,我们可以花很少的时间去浏览和关注各种技术的发展状况,但是对于自己所要掌握的新技术则要不惜代价,花大力气去学习它掌握它。掌握新技术的价值评判是用于软件的开发,用于更好地解决以往程序中存在不可解决的问题,用于所开发软件的销售价值。优秀的程序员会很好的选择新技术,并利用新技术立即去革新自己的程序,并使程序投向市场产生价值。那种以学习、知识储存的态度对待新技术都是不成熟的程序员。

我们常以新为炫耀,但是我们更以精为实力。优秀的程序员不但要求新,更要求精,使得自己在编程的某个方面成为专家和高手,让普通的程序员敬仰。例如,精通客户的业务知识、精通程序构架、精通某种语言、精通数据库、精通模块化设计、精通三层结构、精通界面设计、精通接口程序、精通安装盘制作、精通等等。程序员可以精通的领域和内容是非常之多的,关键是程序员对自己的要求。很多程序员满足于会,而不追求于精,使得自己变成什么都懂,什么都不精的,任何人都能取代的普通程序员。这样的程序员怎么能可能获得更高的报酬,又怎么可能变成优秀呢。

程序员如何踏上社会[2]


不过,这里提示大家一点。任何东东,价格和价值是不等的,价值取决与这个东东本身值多少钱,价格则更多地取决与市场需求。大家可以想象一下,目前100个培训班,90个都在教Java,这意味着什么?是不是以后Java程序员暴多。暴多的结果是什么?肯定是跌价啦,因此,我曾经推论,Java程序员以后的薪情堪忧。

反过来,C和C++,如果我们自己肯钻研,钻出成绩来,前景还是很可观的。我们要坚信,C和C++的市场需求还是有的,在游戏业,在通信业,在很多嵌入式场合,C和C++语言都有不可替代的作用,程序员少而市场大,大家知道意味着什么吗?薪水高是不?呵呵,这是肖老师自己YY,乱讲的,大家可以自己想。

反过来说,C和C++的培训班少,我们找不到,清华北大的同学出来,是不是也找不到?这是不是说,在C和C++这条路上,我们和他们又站在一个起跑线上了?呵呵,可能有人会说,那些名校毕业,不需要培训班,当然。但是,名校毕业,我想也不会成为大师,他们工作一开始,还是得老老实实地学,大家说是不?

最后一个问题,去深圳发展。我的建议是不要去了,深圳目前已经比较成熟了,相对来说,机会比起刚刚改革开放时,已经少多了,我们贸然过去,期待有个好的工作,这是不了解导致的幻想。深圳工资高,相对物价也高,大家找工作,不要单纯比较工资绝对值,好好比较一下两地的房价,会发现,深圳的工作,性价比不高的。

深圳还好点,北京上海,就更过分,房价高不说,把个户口看得跟什么似的,外地人过去,很难在当地买房,落户,扎下根来的,会有很多看不见的杠杠在阻碍你。我是这么看的,打工者和城市是互动的,诚然,打工者需要城市提供的环境赚钱,而城市也需要打工者增加税收和消费,进一步增加城市收入。一个城市把自己看的太高傲,不是好的合作伙伴,也不是适合长期呆的地方。我自己就是这么看的,从成都出来,没有选择那些一线城市,选择了西安,主要就是看城市的包容度,基本的物价指数。

嗯,还有个很具体的问题,就是找对象结婚。大家不要笑啊,人之常情,谁也不想一辈子当和尚。 据我所知,越是大城市,北京、上海,甚至成都、西安也有,很多女孩,很浮,看重表面的东东,看不起外地来打工的人。这也没办法,这个社会随着商品化思维的加深,每个人都有一种交易心态,女孩希望嫁好一点,无可厚非。但是,由于她们这个心态,一般都看重一个男人有什么,而不是很细心地观察这个男人的潜力如何,因此,大家就算专业技术再有优势,但只要手边没有现金,没有房子,车子这些硬件,恐怕过去找媳妇,也很困难。大家刚毕业可能感觉不明显,不过,我想过几年,大家就有感觉了。

当然,有人说,我大学里面有女朋友,或者说,我过去也找打工的。完全可以,不过,两个人都是打工的,处于一个陌生的环境,奋斗起来,可能会比较艰难一点。建议大家做好思想准备。

这个话可能某些同学不爱听,不过我放在这里,欢迎PK.

因此,我最后的建议:人一生是很复杂的,和邓大爷一样,三起三落不到头,现在我们看到的,不一定就是一生中最重要的。仔细去看一些最古老的道理,有时候反而更有用。

关键是,这辈子给自己一个目标,定一个计划,只要能坚持走,最后一般都能成功。这个计划,可能很小,比如我一定要成为C和C++的高手,也可能很大,我要成为某方面的专家,我要成为北京人,上海人,甚至我要出国等等,都可以。

关键是,你现在准备做什么?你能坚持多久?

程序员的时空定理[2]


营销法略的法,将产品营销拆解为面向机构客户采用一目标(CUTE)、二手段(建网10-30-60法则、达情1-3-6法则)、三宗案(赖式、袁式、牟式)的国情式流程,面向大众客户采用美式营销的普遍真理(6大要素、经典8P、当今新法)与中国市场的具体实际(本土特征、本土各P)及IT特殊的鸿沟现象相结合的差异定位专业式流程,以及不收客户的钱还能赚钱的出奇守正的第三方流程。

关于为将者的产品人修炼,智(坐知立行)、信(合作共赢)、仁(客户至上)、勇(勇于创新)、严(品质保障)五大素养,在成就企业产品的同时,也成就自我人生的成功。

程序员第二定理,不妨俗称为看远定理,或时间定理,即程序员应就职涯之世论技术之时.古人云,不谋万世者不足以谋一时,这个世就是职业生涯的全景,这个时就是当前的技术实现。反映到程序员需要做的心智模式的第二个战略转变是就职涯(世)论技术(时).

程序员可以选择职业路径,始终做工程技术,其职涯大致的到达路径是研发、技术方面的首席技术官CTO或工程、项目管理方面的工程管理副总VP Engineering;也可以选择职业路径二,从技术端向商业端走,其职涯大致的到达路径是首席产品官CPO、首席营销官CMO或销售副总VP of Sales.一般情况下,这几个职务中能到达CEO的只有从CPO、CMO或VP of Sales上去,从CTO和VP Engineering一般上不到CEO,即CEO更偏向商业,这大抵也是商业驱动技术的写照,美国的CEO九成以上是从有过销售经验的营销或产品人员中产生。

长江后浪推前浪,创新的技术、产品和企业不断涌现,IT行业最大的敌人是周期性的创新衰减,或曰创造性毁灭,即你可以通过创新毁灭别人,新企业也同样通过创新来毁灭你,如微软之于IBM、Google之于雅虎,以及现在打得火热的微软和Google.

企业如斯,人亦如是。IT业人的最大的敌人是因年龄增长引发的激情与创新的衰减,随着年龄的增大,谈婚论嫁、成家生子,你会发觉刚毕业时整晚都可以呆在电脑前的激情逐渐消失了,曾经被自己嘲弄的没有志向的朝九晚六之人,现在又多了一位,而在你心有旁骛之时,长江后浪滚滚而来,就要把你拍死在沙滩之上。

企业应对周期性衰减有三类方法,第一类是依靠技术性垄断延长生命,如微软;第二类是阶段性自我颠覆,如IBM的老沃森、小沃森、郭士纳等领导的三次战略转型;第三类是通过兼并完成自我重塑,如思科。

IT业人亦然,第一种,用人单位就只有你能搞定这个产品或技术,地球离开你就不转,你就是微软,号令天下,莫敢不从,倚天不出,谁与争锋;第二种,跟着新技术潮流,不断学习,与时俱进,完成阶段性的自我颠覆,如原来在DOS下编程,后来Windows,再后来。Net、SOA、云计算等;第三种,从技术领域通过兼收并蓄其他领域的知识和技能,完成自我重塑,如成为PM、成为产品经理、成为营销业务人员。

不谋全局者不足以谋一域,不谋万世者不足以谋一时,这就是程序员的时空定理。

寻找自己的程序员之路[2]


在技术的选择上,是敏捷敏捷再敏捷!数据库尽量db4o,前台尽量sl/flex(面向最终客户的就不能选择sl).工具软件尽量用C#开发。尽量只做自己擅长的,不做别人擅长的。

我有一个特点,就是会一大票语言,能用来干活的就有C,C++,C#,Java,Python,matlab,actionscript,javascript,tcl.去上班的话,这是缺点--泛而不精。自己干的话,这反而成了优点了。因为我接的项目,很多属于偏门项目,这些项目往往都有开源的实现,但这种实现,要么只有C版本,要么只有Matlab的,要么只有Java的,会这些语言可以最大范围的参考,降低技术风险。缺点在不同环境下可以成为优点。

第五关:团队

通过前面的不断切入,形成了一系列案例,也积累了良好的信用,业务量是翻番的在长,最后自己的时间成了瓶颈。前两天小试了一把,谈了5个项目(2个flex,2个图像处理,那2个flex项目的核心也是图像处理),4个有合作意向,自己干不完,没办法,只能选择1个。

这就到了第五关了--一个人干不过来,得团队了。

但我前面说过,本地是人才沙漠。我的观点是宁缺勿滥,仔细挑选,从头培养。俺的挑选标准是:有激情、品德要好、数学基础要好、有自学能力。目前在带徒弟,看成长情况怎么样。

不着急,用不着太多的人,培养团队的同时开始摸索渠道。那个也得时间。

第六关:渠道

我最终想做的是产品。而在偏远地区做产品,想做成功,渠道和推广非常重要,不然的话,就算做出来了,也只能拿小头。在国内,还要考虑盗版因素。我现在只是有大致的产品方向,做也是玩票性质的,目的是摸索渠道和商业模式,想摸摸国内的和国外的两种市场。国外的只有试探性的探索。国内的,嘿嘿,前面的开发已经形成了一系列的推广工具了。

第七关:产品

做了这么多年项目,累死了。最终的目的还是产品和平台。我的征途是星辰大海(搞技术的,也得有技术的浪漫)目标是5-10年后,互联网3D化之后的虚拟现实(切入点?俺已有一个初步考虑的切入点).短期(5年内)是开发一些工具类型的产品和推广平台。

我是学材料的,在纳米材料界有一个名言--Build The World Atom By Atom.那么,在可见的未来,虚拟世界就是--Build The World Bit By Bit. 协议、图像、机器视觉、3D、语音,正是构成虚拟世界的因素,前面的种种,都是为这个做铺垫。未来的制造业将是分子制造,于是Atom和Bit将会碰撞--Build The World Atom By Atom, Bit By Bit!

但还是那句话,只做小,不做大,做点做线不做面。

什么程序员30岁之后转行之类的鬼话。俺到今年,才开始感觉进入了程序开发的大门,写程序时开始有一种美感,有那种几十人骑着战马冲击奥山大桥的壮烈。做一辈子的技术又何妨。

上述路径相当保守,指导思想不是胜利,而是避免失败。无恃其不来,恃吾有以待之,无恃其不攻,恃吾有所不可攻也。

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


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

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

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

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

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

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

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

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

关于女生的程序员之路[2]


第二个提法,我觉得目前女性就业困难,关键还在女性自己。

目前大学里面有句话:干得好不如嫁得好!,我想大家都听说过。其实是人就有惰性,也有一些劣根性,都想找一些活少拿钱多的工作,舒舒服服地赚钱,这种思想,其实不管男人女人都有。我自己也有,呵呵。

关键是,社会是公平的,一分贡献,一分收获,哪有那么多不劳而获的事情。但现在的女生,我觉得普遍有点问题,都想走捷径,都想一次革命成功,目前大学校园中,傍大款的不少,很多女生一门心思嫁个好老公,认为这辈子就有靠了,不需要奋斗了。

因此,在求职市场上,很多女生不是找不到工作,是根本没有一心一意地去找,因为对女生而言,通常都有第二选择,可以靠家里,靠男朋友,等等。这种求职态度上的不坚决,其实无形中,已经给自己关闭了很多企业的大门。有个现象,同等条件的两名女生都面试,一名犹犹豫豫的,一名态度极其坚决,一定要拿到这份工作,通常都是后者获胜,因为企业认为这个人既然这么需要这份工作,那不管能力怎么样,进来后起码会拼命做事。

那我们再来比较男生和女生,就可以看出显著差异了,其实男生有时候也想靠,但是没得靠啊,反而,还有个女生在靠自己,自己还要撑起一片家庭,那么,你说男生求职拼命不?

但我还是得说,前面女生的这种思维是严重错误的,夫妻也是经济共同体,双方需要共同完成家庭建设,这样的家庭才稳定。一个女性,如果觉得职场艰难,就打退堂鼓,那,不管是不是程序员,其实我觉得她什么职位都找不到的。

这样还有潜在的恶果,现在有很多闪婚族,出了校门就结婚,我认为和女性的这种依赖思想有一定关系,但这样的婚姻,是不是稳定呢?

其实我不讲,大家都应该清楚,女性凭借个人的外貌实现魅力,男人更多的是凭个人的内涵和事业的成就实现魅力,这就决定了,一个女人,魅力最大的时候,是18~28这个年龄段,而男人恰好相反,一个男人最有魅力的时候,是35~45岁这个年龄段。这中间有落差。

一个女性,如果坚持以漂亮为本钱,早早地就嫁人,在家里相夫教子,那么,在她30多岁,年华老去的时候,情况就比较危险了。首先,男方逐渐进入事业巅峰,很多更为年轻漂亮的女性,会青睐这种男人,男人面临的诱惑在加大,其次,这个家庭,十几年其实都是男方一点点赚出来的,女方是享受者,不是建设者,在这个家庭里面渐渐就没有发言权,经济基础决定上层建筑,不要说对方爱你就会一辈子听你话,很多事会变的。

如果此时女性再不注意,试图通过控制经济等手段压制男人不会变心,或者采用跟踪,哭闹等极端方法,往往适得其反,最终导致男人离他而去。一旦出现这个问题,女性的问题就比较危险了,十几年没有上过班,自己的专业能力,恐怕仅仅剩下一张文凭了,知识都还给老师了,那她在社会上可以说没有任何竞争力可言。那么,她以后靠什么生存?

以上《如何从优秀的程序员成为伟大的程序员[2]》一文,由编辑精心撰写而成,希望对您的职业规划有所帮助,更多精彩请访问“程序员个人简历模板”专题!