公务员期刊网 精选范文 程序员实习心得体会范文

程序员实习心得体会精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的程序员实习心得体会主题范文,仅供参考,欢迎阅读并收藏。

程序员实习心得体会

第1篇:程序员实习心得体会范文

从GitHub旅程开始,就一脚踏进了真正的企业,而企业的面试也已开始。

这个改变会发生吗?多久会发生?它在国外已经发生了,我肯定这是大势所趋。

我预计,很快就会在中国发生。

我曾收到一位同学的问题:“找工作的首要原则是什么?”

答案是:“弄清雇主的需求到底是什么。”

美国软件工程师Joel Spolsky曾发出类似感叹:招聘难,难于上青天。也许没有哪个行业像IT这样,无形资产占据公司的绝大多数资产。坊间传言比尔·盖茨曾说:只要允许我带走100个人我可以再造一个微软。这话没搜到出处,但从侧面反映了IT公司中智力资产所占的比重。所以,招聘也许是IT公司决策中最重要的一个环节。Joel Spolsky把他在这方面的观察、体会和洞见集结成小册子Smart and Gets Things Done。

美国招IT人士难成这样,搞得Joel Spolsky写书语重心长地劝公司善待工程师,中国招人更是难上加难。从 2008 年到现在,我一直想:招人能不能有点窍门,或实用方法。结论:几乎没有。我用过大家都用的方法:

在水木BBS上发帖子(有点效果);

在蓝色理想(有关网站设计与开发人员之家的网站)上发帖子(无效);

在技术邮件组里发帖子(无效);

买 51job/智联服务(有点效果);

给所有可以想到的人打电话,请他们推荐(无效);

给所有和你讨论过创业,喝过点小酒的人打电话(无效);

约前同事私下谈(有效)。

我用过大家可能没有用的方法:

上twitter,看某人的follower,一个一个看,看他们的twitter、博客、Google Reader 分享,想办法搞到邮件,半夜电话骚扰;

上豆瓣,挑几本重量级的书,去找想看、看过、正在看这本书的人,一个一个看,看他们的活动、博客、Google Reader分享,想办法搞到邮件,半夜电话骚扰;

找同事,问他们都看什么技术博客,想办法搞到邮件,半夜电话骚扰。

双方:都在大海捞针

正是这样的不易,有不少公司内部培养人,它们的逻辑是一上来就招到靠谱的人太难了,但找一块靠谱的璞玉然后雕琢相对简单。这倒是个办法,但难免陷入纠结:培养好了,人跑了怎么办,还是没有解决根本问题。应聘者觉得自己“海投”,大海捞针。而招聘者何尝不也是大海捞针。

招聘真的很难。以至于招聘者每年绞尽脑汁出新的笔试题,题目要不太简单也不太难,能够滤掉绝大多数滥竽充数的,又要保证真正有能力的;考虑审题人的时间成本只能多数用选择题,而选择题又是可以猜答案的。更悲催的是,有些题目连公司的员工都会做错……笔试之后是面试。短短几个小时的面试(大多数公司连几个小时的面试时间都没有),既要全面考察基本知识,又要考察编程素养,还要考察性格心态。最后,还有一项根本没法考察,却占据程序员相当工作时间的——debug能力。

面试官不但得找准问题,不因对方一题答对而妄下结论,也不因一题答错扼杀机会,还要从面试人的举止言谈、分析问题的方式,甚至写程序的笔迹,观察他的性格、做事的方式和心态,这时的面试官,非要具备心理分析师的水准才行。

这厢招人的雇主苦不堪言,那边找工作的人也是一团乱麻。绝大多数应届生直到毕业,也不清楚他们想去的公司到底需要什么样的能力,或者说,他们到底要具备什么样的能力。我收到很多这样的来信,大学生们很想学点东西,但又不知道哪些重要哪些不重要,该学到什么程度。有一次,我面试了一位同学,简历上写着编译原理课的大作业得了一等奖。可我一问什么是递归下降,他就傻眼了。

现实的结果是,对绝大多数应届生而言,简历上最具信息量的部分不是“精通XXX,熟悉YYY,掌握ZZZ”,也不是“在UUU实习过”,反倒是越来越被认为不重要的:毕业学校。毕业学校本不应该最具信息量,之所以最具信息量源于悲剧事实:简历上其他条目实在信息量太少了。靠谱的面试者学会了无视简历上华而不实的内容,只相信亲眼所见。

怎么培养IT企业真正需要的人才?实战能力怎么培养?代码素养怎么培养?协作沟通能力怎么培养?学习能力怎么培养……这些问题,就是当下人才培养/招聘的惨淡现状。在雇主和学生之间,横亘着一条巨大的鸿沟,两头都着急,两头都有动力,但就是没有方法。

这一切,也许将在未来几年发生变化。

书单计划

现在,企业对招聘者简历的要求变得越来越灵活变通。比如,ThoughtWorks招聘时希望招聘者能给出自己的博客地址,一个积累多年的技术博客比任何简历都更能说明问题。可惜,这个做法也有一个弊端——并不是所有技术牛人都写博客,有人就是只干不说。但是,这表明了一个思考方向——寻找更具鉴别力的过滤器。到底什么既通用,又能够有效鉴别应聘者的能力高低呢?答案——书。

我一直认为:很多时候,是否好好看完一本好书,对一个人的提升往往能达到质的区别。就算不好好看完一本好书,马马虎虎看完好书,也会有很大的提高。面试时,我经常询问对方看过哪些技术书籍,经常上哪些网站,订哪些博客。其中,书籍这一项的区分度最高。

好书和坏书的差别,本质上就是学习效率和大方向的差别。一本烂书浪费半年时间,一本好书却可以带来扎实的基础和开阔的视野。读烂书浪费时间,但读好书却节省时间。为招聘头疼的公司可以列出“应聘俺们公司前必读的十本书”。姑且把这个计划叫做“书单计划”,这个计划有几大优点:

清晰、明确。完全可度量。

防伪:读没读过,一问便知。

不在乎是否“泄题”:书单完全公开。想背题?背书吧。

管你用心不用心读,只要读了,读完了,就有区别。真正的好书,你想不被吸引都难。

不存在“怎么做”的障碍,所有人都知道怎么读书——一页一页读。

不需要招聘者投入精力:书单在此,就这么简单,您看着办。

评估的负担很大程度转移到了应聘者身上:是不是认真看完了,有没有心得体会,您自己掂量。没看完别来找我们。

当然,书单计划需要自己淘自己学。微软工程师熊力曾在微博上写道:“我当年毕业的时候总结了一个公式:第一份工作的月薪=大学四年买过的技术书籍价格的总和。”以下是我个人认为面试微软前必读的10本书。

Code: The Hidden Language of Computer Hardware and Software (《编码的奥秘》)

Computer System: A Programmer’s Approach (《深入理解计算机系统》) / Windows via C/C++ (《Windows核心编程》 /《程序员的自我修养》

Code Complete 2(《代码大全》)/The Pragmatic Programmer (《程序员修炼之道》,我也把这本书称为《代码小全》)

Programming Pearls (《编程珠玑》)/Algorithms / Algorithm Design / 《编程之美:微软技术面试心得》

The C Programming Language《C程序设计语言》

The C++ Programming Language《C++程序设计语言》/ Programming: Principles and Practice Using C++ 《C++程序设计原理与实践》/Accelerated C++

The Structure and Interpretation of Computer Programs(《计算机程序的构造和解释》)

Clean Code 《代码整洁之道》/ Implementation Patterns《实现模式》

Design Patterns (《设计模式》)/ Agile Software Development, Principles, Patterns, and Practices《敏捷软件开发(原则模式与实践)》

Refactoring (《重构》)

注:以上同一条目下用“/”隔开表示任选。

GitHub

光有书单计划还不够,因为书只管基础知识,更难以量化衡量的实战能力又怎么办?目前,除了“练”之外还没有其他好办法。可是,在大学里做的项目,或大作业,能起到练的作用吗?解决的办法直到最近几年才成为现实——GitHub诞生于2008年春天,第一年就产生了46000个公共项目,一年半后,用户数达到10万。2011年9月,GitHub迎来了百万用户,超过两百万个项目。

真实的项目、流程和人名,一切代码review、check-in、test、build、document,甚至讨论、计划和brianstorming,都是项目历史的一部分,都可以像棋局那样复盘。有经验的面试者只要扫两眼GitHub历史,挑几个check-in历史看看,便能迅速判断这个人是否满足要求。与大作业不同,GitHut里有源代码管理系统、自动化build,有check-in、review,有分工、合作,最重要的是GitHut是一个集市,牛人相互吸引。

相关热门标签