‘壹’ 程序员简历怎么写应届生没太多实践项目经验怎么办
软件公司通常很看重程序员的实践经历,许多毕业生,苦于自己没有多少在开发团队工作的经历,总认为这是自己的“死穴”,所以在简历中试图避免提到相关的内容。其实工作经历匮乏并没到无药可救的地步,反倒是“避而不谈”才真的点了求职的“死穴”。
毕业生在学校期间,阅读过哪方面的书籍,在哪方面进行过深入研究及简要过程,以及做过的每一项目中采用的软件产品与工具(如数据库、开发工具、语言等)、自己的职责、在哪些开发论坛活动过等等都是招聘者很关心的,都可以作为自己的经历好好表述一番的另外也是招聘单位比较看重的。
更多的你可以看看这里,还有程序员简历模板 http://www.0577job.com/news/article_19168.html
还有一点,应聘者通常喜欢列出“精通XXX、熟悉XXX”等内容来展现自己的能力。但要注意不要流水帐般列得太多,有两三条,并与其经历结合起来验证一下就很不错了。
‘贰’ 一个程序员所要经历的步骤
程序员应具备的12种能力
毕业四年来,感觉自己也是从一名不合格的程序员一步步走过来的。回头反思一下,合格的程序员有很多标准和要求,下面是我总结的一个合格程序员应该具备的12种能力。中国软件行业的崛起,靠的是合格的程序员。任何华丽的管理制度都不能保证软件项目的成功交付,合格的程序员就是有力的保证,是项目成功的基础。写下这些,是为了给刚刚进入程序员这个职业的新同学们一点参考。我一直以为,当程序员是很辛苦的,如果不是真正的喜欢,很难坚持下去。如果真的不喜欢这个职业,也该尊重这个职业,尊重自己,赶紧改行。
1. 编程语言能力
不用多说,作为合格的程序员,精通一门语言是必须的。这种精通,不是说看了一本《24小时精通XXX》,抄了几个程序就能说精通的,要靠长时间的积累和浸淫。
2.编码能力
我曾经看多很多程序员写的代码,在同一个jsp或者java源文件里,出现了三种以上的对方法的命名方式,有下划线间隔的,有全大写的,有拼音首字母的。就像一个菜市场,杂乱无比,估计10天后,他自己都无法看的懂。遵守编码规范,是一个程序员最基本的要求,可悲的是,很多程序员根本没有意识到这个问题的严重性。随意堆砌网上搜来的代码,根本不管可读性和可维护性,只要能实现功能就行了,心想做完这个项目,就拍拍屁股走人了,缺少最基本的职责素养。我经常把代码必须成程序员的孩子,你就是是孩子他爹,孩子他妈,是有感情的。对你自己的孩子,你能不仔细呵护吗?你是称职的父母吗?这是我编写的一个Java编码规范,供大家参考,这里可以下载http://gurudk.javaeye.com/blog/111734
另外一个就是注释,要注意不是为了注释而注释。对类,以说明职责为主;对方法,以说明意图为主;对方法体,以说明实现思路为主。对于大段大段的代码,要分段,使用空行隔开,并使用行内注释进行说明。
思维的条理性,写代码之前,先简单计划一下,用自然语言把流程写下来,用于整理实现思路。不要看了需求或设计之后,马上就敲代码了,敲完代码马上就debug。花点时间思考,敲代码只是最后一个很简单的工作,不要把自己变成一个代码打字员,编写边想,写了删,删了写。安安静静把实现过程想清楚,在脑子里先实现一遍。再去敲代码,水到渠成。
3.面向对象思维能力
如今,多数编程语言都是面向对象的编程语言。而这些面向对象的编程语言的共同的精髓就是面向对象的思想。掌握这些比面向对象语言本身更重要,比如对继承,多态,重载的理解。对面向对象基本原则的理解,比如开闭原则,接口隔离原则,单一职责原则等。在此基础上,应该掌握常用的设计模式,比如工厂模式,策略模式,观察者模式,模板方法模式,命令模式等等。我面试过很多程序员,没有一个能说得上几句的。
4.利用工具能力
工欲善其事,必先利其器。有了趁手的家伙,工作效率可以提升数倍。你编程序,有没有选择一个很好的IDE,以前听说编程高手都用记事本写程序,我觉得那是一种自虐。就像以前看到的一篇文章,说一帮户外旅行爱好者,出去旅游,背了重重的旅行包,里面装着什么压缩饼干等快速食品。他们宁可就着矿泉水啃压缩饼干,也不肯去1里路都不到的快餐店,农家菜馆吃饭。工具是为目的服务的,好用,提高效率就行,形式无所谓。
另外一个常用的工具就是日记本,好听点可以称为知识管理工具,我用的是myBase,感觉非常好用,在之前,我的所有的片段内容都是记录的单独的文本文件里的,非常不好找,管理也很混乱。
经常上互联网,看到好多好的资料想保存下来,作为日后查看之用.一开始,我用的是firefox自带的书签,但是自己分类太累,多了之后不便于查找,很麻烦。后来用了得乐书签(del.icio.us)的firefox插件,非常方便,现在成为了我必备的一个工具。
还有一个最重要的工具就是搜索引擎了,我装了google forfirefox插件,感觉不错,还有英文翻译功能。按照我同事的说法,内事用,外事用google。很多技术资料都是英文的,用google搜索效率高一些。搜索引擎用好了,就等于打开了一扇通向知识宝库的门,使用搜索引擎,关键字选择很重要。
经常去浏览大牛的blog,逐个网站访问很麻烦,去看了又可能没有更新,可以借助于RSS订阅工具,我是用iGoogle桌面工具,每天早上花半个小时扫一下,大牛的最新文章尽收眼底了。
5. 英语能力
新的技术资料都是英文的,英语国家的IT技术走在我们前面至少10年(这是我自己估计的数字,可能正在缩小)。就连印度,一个连基础设施建设都不太完善的国家,因为其英语基础较好,其在软件外包领域的发展也非常迅猛,远远超过了我们。学英语,首先是有信心,其次就是花时间。多阅读英文资料,使用金山词霸,google的firefox插件等工具配合,贵在坚持。
6.学习能力
在IT也混饭吃不容易,整个环境进化的太快,你不学习,就等于落后了。学习要有针对性,别今天学ruby,明天学python,后天php的。首先要认清自己的目标,自己短期目标是什么,1年后,3年后,5年后的目标是什么。结合这些目标,确定自己的学习计划,人的精力毕竟是有限的。当然,多掌握几门编程语言也是好的,可以扩充自己的知识面,重要的是为自己的目标服务。
要想系统的学习一门技术或工具,看书是最好的方法。看完后,然后上网找相关资料,进行深入学习。学习要抓紧一切可以利用的时间,比如电脑启动要花1分多钟,旁边放一本书,可以看上几页了。公交车上,地铁上也可以看。
当然,不能只学习技术,要经常联系自己的软技能,比如沟通能力,表达能力。你可以把自己学到的东西,解释给自己的同事听,既加深了理解,又增进了同事之间的交流。学习的最高境界就是你能够把学到的东西解释给别人听,这才说明你理解了。在学习心理学上,称之为构成主义。
我学一样东西,总是先上网了解有没有相关书籍,如果想学,就买一本或者去图书馆找相关的书来读。我买的书,家里快放不下了(到目前位置,我买了1万多块的书)。我多半是把目录看完,了解这本书讲解的主要内容,然后需要的时候,我就可以立即补充它进入到我的知识结构。每个人可能都有自己的学习方法,意识到学习的重要,并能够根据需要补充自己的知识,这种能力更重要。
7.创造能力
普遍认为,东方人模仿能力很强,但创造能力差。我见过很多这样的程序员,经常说,“这个只能这么解决了,我想不出有什么别的方法。”可能他根本都没想过别的方法,或者懒得去想。对任何一个问题,找出两种以上的解决办法都是非常容易的,简单的google一下,可能就是数十种。悲哀的是,有些程序员经常止步于自己构建的狭小领地之内。对待客户也是这种态度,不是积极的帮助客户解决问题,而是推脱这只是唯一解决方案。
打破这一思维定势的首先的一个办法就是在面临一个问题时,首先想到的是“没有不可能”,或是“一切皆有可能”,前面那个是阿迪的广告语,后面是李宁的。只有这样去想,才能寻找解决问题的别的出路,即使最后我们试了很多种办法,还是只有着一种解决方案,但我们在这种寻找解决方案的过程中,常常会产生很多好的想法,这样才会使我们真正深刻思考一个问题。建议大家看一看《水平思考》这本书,他提供了一些进行创造性思考的方法和工具。
但我认为,坚持认为存在另一种解决方案的信念是第一位的,方法和工具都是其次。
8.文档能力
也许有人会质疑,程序员跟写文档有什么关系。大家开源软件也用过不少,看看Spring,hibernate,Struts等最流行的开源软件的文档就知道,他么的tutorial,他们的getstarted,他们的reference文档写的多么的易懂。其实写代码也相当于写文档,只不过用的是编程语言。同样,写文档,用自然语言,也相当于写程序,简单明了,清晰易懂,这样的“程序”谁看谁舒服。同样,对于想进阶到设计师或者需求分析员角色的程序员,文档能力更是非常重要。
word是一个最实用的工具,很多程序员,多级编号都不会用,索引目录也不知道如何生成,更别灵活应用样式了。很多排版都是所谓的dirty work。垃圾样式一大堆。其实,静下心来,稍微学习一下,就能写出一篇格式漂亮的文档。
9.抽象能力
抽象能力是认识事物从现象到本质的能力。如果你只是停留在“见山是山,见水是水”的层次,客户说什么,你就做什么,设计怎么做,你就怎么实现,从来不过问为什么,也不去想他是满足了用户哪些方面的需求呢。这样可能只解决了表面的问题,可能会引起返工。认识到本质,才能让你的程序具备更大的灵活性和可扩展性。在做企业应用软件开发中,抽象能力体现为对问题域的理解能力,对领域模型的抽象。合理的抽象也是代码重构的前提,每一次重构,都是向更好的抽象迈进了一步。
10.代码评审能力
代码评审和单元测试是保证代码质量的两种常用手段之一。代码评审能力,说明了你的审美标准,知道什么是好的,什么是不好的,什么是优雅的代码,什么是糟糕的代码,你才能让自己做的更好。
11.单元测试能力
没有单元测试的代码,只能说是半成品。因为没有什么能证明你的代码是可以运行的。测试驱动开发是一个非常好的敏捷过程的最佳实践。单元测试还可以作为回归测试,在修改代码时,起到警戒线标志的作用。是否具有单元测试的意识是区分程序员是否合格的重要标准。写不写单元测试是区分平庸程序员和优秀程序员的重要标杆。
12.DRY
DRY是一种原则,就是Don't RepeatYourself.出自《程序员修炼之道-从小工到专家》。这条原则可以用到很多地方,比如你经常要编译,打包,部署应用程序,供集成测试用。每次你都在重复你自己,写一个自动化脚本(比如用ant,批处理命令)来将这些工作自动化,以提高效率。
还有一个就是我们经常在不同的地方切换IP,如果每次手工做,也非常浪费时间,写一个bat命令可以解决,找一个小工具也可以解决。
编码时,对代码的复用也是在重复你自己,虽然拷贝过程很爽,但是维护一致性就要付出巨大的工作量,特别是将来维护的人不是你的时候,使用代码生成工具可以解决这个问题。类似的例子太多了,如果你发现你经常做一些重复的工作,就要警惕了,是否违背了这个原则,想一些办法将他们自动化。
‘叁’ 作为一个程序员,你有什么值得说的经历和感想
程序员这行吧,透明度太高,到了30岁没点真技术光靠复制粘贴耍嘴皮子真的混不下去啊!
‘肆’ 程序员和土建技术员(工程师)哪个更苦 哪个工资更高
没有可比性,但相同的一点,学起来都十分枯燥,没有谁比谁枯燥。至于那个工资更高,也没可比性,其关键取决于:1、你所处的公司规模与薪酬标准。2、你所处的岗位。拿着软件工程师资质的人却干普通程序员的活,大有人在,建筑工程师也一样,关键还要看你毕业后怎么混。
‘伍’ 作为一个程序员,我是怎么样月薪三万的,经验啊经验
我出身在一个普通家庭,家庭条件一般。从小时候起,我就发誓,长大后一定要出人头地,让家里过上好日子。从小好好学习,终于考上了重点大学。最近计算机很热门,听说赚钱也挺多的,我对计算机也比较感兴趣,于是大学就报了软件工程专业。
大家都知道软件行业很辛苦,需要学很多东西,而且需要不停地去学习,因为新的技术发展的太快。于是,我认真听课,其实最重要的是要理论和实践结合,于是我就经常泡在机房里做实验。干程序员这一行,首先必须得精通编程语言,C++、java、C#我都有涉猎,Ruby这样的脚本语言我也尝试过。数据结构这门课也很重要,各种算法、结构 必须了然于胸。我平时也比较留意一些公司的招聘,注意到很多公司对linux下的编程经验都有要求,于是我要自学了linux,自己也做了一些小应用。后来一个老师感觉我不错,让我跟他在实验室帮他做项目。在实验室里我学到了很多,实验室里各种大牛,为了不脱后腿,我唯有更拼命的努力。顺便说一下,程序员是很辛苦的,以后上班了几乎每天都在电脑前,没有好的身体很难坚持下去。我每天晚上都坚持去操场跑步锻炼身体。跑步的时候可以想想今天学到了哪些东西,规划一下最近几天的打算,其实对学习也是很有帮助的。大四了,凭借我扎实的基础和丰富的项目经验,我成功的进了华为。我们学院这么多人去,只录了两个,我很骄傲。
华为的工资还不错,不过就是太累了,经常晚上加班,周六周日加班(而且不给加班费)。虽然工资还可以,但是在大城市里也只够平时消费,物价太贵,每个月也余不了多少钱。我想,我一定要好好干,争取多拿点年终奖,甚至升职,我给自己定了个目标,三年内升项目经理。每天我的生活很固定,公司———租房,虽然很辛苦,我相信总有一天我会成功的。毕竟华为里人才太多,要想在这里崭露头角,必须比别人更努力。工作很紧张,甚至上厕所的时候都在想bug怎么解决。有一天,在厕所的门上,看见了一个广告:招男女公关,情感陪护,月入过万不是梦。于是我打了电话去,凭借我大学时每天跑步锻炼出的好身体,我每个月赚3W以上很轻松。
‘陆’ 当程序员好还是施工员好
这两不是一个方面。施工员是工程施工这一块,主要工作内容是在项目经理领导下,深入施工现场,协助搞好施工监理,与施工队一起复核工程量,提供施工现场所需材料规格、型号和到场日期,做好现场材料的验收签证和管理,及时对隐蔽工程进行验收和工程量签证,协助项目经理做好工程的资料收集、保管和归档,对现场施工的进度和成本负有重要责任。
施工员的工作就是在施工现场具体解决施工组织设计和现场的关系, 组织设计中的东西要靠施工员在现场监督,测量,编写施工日志,上报施工进度,质量,处理现场问题.是工程指挥部和施工队的联络人,经常在工地上,
而程序员是软件编程这一块。得看你学哪方面。
希望这些对你有帮助……
‘柒’ 本人程序员,我的经历有一年的空白期,我想伪造一年外省工作经历可以吗不知道会不会被查出来
程序员这个行业不是销售、管理类的职业,你伪造工作经验是没什么问题的,人家HR不查你的,但是一般程序员去公司都不是HR来面你,是技术主管来面试的。一般大一点公司会有笔试甚至会有机试,你有没有工作经验一试就知道了。当然如果你很牛,不要工作经验,编程基础依然比人家工作过的人扎实,让你编什么你就能编什么。那就不用怕了。总的来说程序员还是靠技术吃饭,只要你技术牛,面试的时候你就是老大。如果你技术不行,你再多工作经验人家都不会要你的。
‘捌’ 程序员:请分享你的程序感受和经验
刚做了一年开发我是做cobol语言IBM大机这方面的。
经验:1.善于总结。2.向比自己强的人学习。3.有一个目标。(你不可能做一辈子PG吧,我现在的目标就是尽快考过日语二级然后跳槽到北京IBM或北京CSC公司)。
4.说实话什么语言无所谓只要你掌握的好做的精,不用担心以后没饭吃。
呵呵,楼主一看应该是做过开发的,如果我没猜错的话。