转载:http://www.cnblogs.com/rainer-liao/p/4026706.htmlhtml
技术语言书籍推荐:linux
一,《C程序设计语言》。C语言圣经,废话不说,适合多看几遍。谭书入门看一遍便可丢。git
二,《C++Primer》。过两遍,记住C++语法。中文翻译还不错,但有些地方仍有小瑕疵。建议看英文版,此书英文版很是容易看懂,且你从头至尾看完一本英文原著,对英文能力提升巨大。英文能力对程序员来讲是重要的,先进技术、最新书籍都是英文版,且牛逼网站stackoverflow和github也是英文,做为程序员巨头大的问题——变量命名,英文水平的提升也是很是有帮助。API什么的我就很少说了。固然,看英文书籍速度是没有中文书快的。建议在看中文书籍对句子不理解的时候,翻看英文原版。程序员
三,《Effective C++》。适合有必定实际经验者观看。github
四,《Inside the C++ Object Model》。看完这个妈妈不再担忧面试官问我多态虚函数什么的啦。面试
五,《C和指针》。通常,不过其中一道课后题错了,本身敲出来后发现不对,去stackoverflow上提问,还增长了reputation,开心。算法
《More Effective C++》《STL源码剖析》《C++标准库》《C++程序设计语言》买了,翻过一些,没有时间细看。shell
操做系统(底层)书籍:编程
一,《现代操做系统》。Modern Operating System。重点关注进程和线程、死锁等概念。数据结构
二,《程序员的自我修养——连接、装载与库》。见过一个本科学弟看完这本书后在本身简历中写精通语言底层的连接、装载等,窃觉得还没到那个地步。
三,《深刻理解计算机系统》。CSAPP。中文书名很奇怪。
四,《鸟哥的Linux私房菜》。至少知道如何装linux,如何打开shell写个echo hello world。
五,《Unix环境高级编程》。APUE。看完MOS后看看,要实际敲代码。
六,《Linux命令行与shell脚本编程大全》。用了脚本语言你才能知道妈蛋C/C++真是烦。
数据结构与算法书籍:
一,《数据结构与算法分析——C语言描述》。小白刚开始看,真心累死。课后题很不错,适合都作作。
二,《算法导论》。后悔听信旁人言,说这么厚的书不必看,到要用的时候再看。其实若能安心从头至尾看完算导,帮助极大。限于时间问题,我只看了此书的某些章节。
逼格提高书籍:
一,《黑客与画家》。当散文随笔看。
二,《Unix编程艺术》。在不一样阶段看有不一样感悟。
三,《代码大全》。翻翻看,学生阶段不看彻底能够,不过有助于提升逼格。期待在工做后有更多感悟。
四,《浪潮之巅》、《数学之美》。当小说看,开阔视野。
五,《人月神话》。10个女人花1个月的时间是不可能生出一个孩子滴。
从纯小白出发,我的建议看书路线:
一,谭书。看一遍就丢,知道如何用IDE。
二,《C程序设计语言》。代码都敲一遍,确定不少不懂,多百度多谷歌多问。
三,《数据结构与算法分析——C语言描述》或+《算法导论》。了解经常使用数据结构(链表、栈、队列、树等),课后题多思考多敲。
四,《C++Primer》。语法问题,只能死记硬背。
五,《现代操做系统》。知道操做系统还有Linux、Mac,不只Windows。知道什么是进程线程。
六,《鸟哥的Linux私房菜》。是时候玩会别的OS了。
六本书看完,多敲多思考,多问多理解。本身多搜搜其余书籍,结合自身状况,继续学习。
4.简历
简历真的很是很是重要!
公司招聘,简历筛选是第一环节。固然,通常而言,简历不会被刷掉,笔试机会会给你。但简历实在过重要了,重要到许多人忽视了简历的重要性。
简历是你对本身的一个书面状况说明,简历作的粗糙,我能够认为你对本身不了解、不负责,或说对公司不负责、不尊重。若是我是面试官,简历很差,我连面试你的兴趣都没有。
和Lucida相似,我也曾经作过阿里的内推,收到过许多同窗的简历。由于本身也是校招求职者,也投递过许多内推/正式校招简历,所以我对每一个同窗的邮件都进行了回复,也耐着性子看完了全部同窗的简历。可是!作完此次校招内推,我不再想作相似的这么有广度的内推了。说一下心得:
1,如何写邮件:
邮件最好有标题,不要空白,不要单纯只写内推俩字,更不要写成内!退! 童鞋丢过来的格式有这样的:1,阿里内退;2,XX的简历;3,我的简历。建议格式:姓名-学校学历-求职意向。
邮件的发件人,最好改为本身名字,不要43543534(qq号)、我只爱你一个(我看到这个手都颤了)、火星文(你也是蛮拼的)。
邮件正文,礼貌用语,不卑不亢。写清楚你的我的信息,姓名,联系方式,简单介绍一下本身,3-5句话。不须要写什么求求您给一次机会什么的,你这样写了,我第一映像就是你没自信。即便你过了这关,也过不了下关。
邮件附件,千!万!不!要!写:个人简历 or XX的中文简历 or 个人简历v2.3 。我看到这样的附件,往往有种直接删除邮件的冲动。附件简历命名最好也是按照 姓名-学校学历-求职意向 格式来办。至少这样我把你简历下下来不用再重命名。
真的是一句话:细节决定成败。
2,简历自己:
关因而否贴照片:程序员没有必要。彻底没有必要。
页数:一页满或两页满,大忌一页半两页半。建议一页满。
排版:排版务必整齐一致,字迹清晰明了,有层次,有重点,有突出。将你最优秀的点放在最显眼的地方。
专业技能:程序员们请不要在本身的专业技能中写你会word、PPT、excel、ps等,拜托了。
错别字:对你的好感直接为0。
文件格式:PDF,不要word。如今不少邮箱均可以预览邮件附件,PDF格式均可以正确无误预览,而word各类错误。我了解一些公司的确会要求要word版本,不知出于何种目的。建议PDF。
文字用语:语句通顺,条理清晰,项目介绍遵循STAR,一句话背景、本身完成的任务、作了哪些工做、有哪些结果(最好用数字量化,如找了100个bug,效率提升了20%)。
自我评价:一句话便可。你写再多本身积极向上、勤奋努力,我只以为你简历没啥好写的为了凑字数。
程序员如何看你的简历:参考 coolshell http://coolshell.cn/articles/1695.html
5.面试
面试是重头戏,成败在此一举。
就程序员面试来讲,流程通常是:1.自我介绍2.技术提问3.你有什么想问个人吗?
自我介绍:
自我介绍,就是将简历中的人给形象化,有血有肉展现本身。有些童鞋,自我介绍是:面试官你好,我叫XX,来自XX学校。三!句!话! 这样真的好吗? 简历能看到的,还要你这样介绍干什么。 我初期在实习招聘的时候自我介绍更傻:我专业是XX,非计算机,没有实际经验,balala....。详细介绍本身的缺点。
自我介绍,要充分展现本身的长处,好比作过某个竞赛、得过哪一个大奖、发了几篇论文、写过几个专利。你说你上面的都没有,那也行,成绩如何?介绍一下本身的GPA和专业成绩也行。成绩很差?挂科? OK,那讲讲你看了哪些牛逼书籍,作过哪些实际项目、follow过哪一个开源项目。都没有,怎么办? 没办法了,这只能靠日常的积累。
技术提问:
技术提问分两种,写代码和不写代码。不写代码无非是聊聊你的项目,问一些语言细节、操做系统概念。固然项目讲的好,加分很是多。关于讲本身的项目,建议事前必定好好练习一下,要能有主次、顺畅地介绍本身项目,遵循上面的STAR原则。
写代码,是重头戏。Talk is cheap,show me the code。写代码通常是给出算法题,在纸上写。纸上写代码和在IDE上写是彻底不同的,没有语法高亮,没有代码补全,你可能很是不习惯。这都须要事先的练习。面试官出题后,不要着急就在纸上写,若是没有特别高效的方法,能够先想一个简单粗暴的,给面试官讲讲你的思路,说:我先出一个最简单粗暴的方法,是这样的...可是我知道您确定但愿获得更高效的方法,我再想一想...想不出来,可让面试官给一些提示。有了清晰思路后,再和面试官交流,获得确定后开始在纸上写。多注意边界条件、非法输入、代码风格。
纸上写代码,最重要就是一个字:练。
推荐书籍:《剑指offer》《编程之美》《编程珠玑》《Crack over the code interview》
推荐网站:TopCoder
你有什么想问个人吗?
不少人不知道这里该问什么,其实若是你以前对这个公司这个岗位比较感兴趣,你本身就会去查相关的东西,就会有相应的问题。我问过一些这样的问题:1,本身的职业规划:继续作算法仍是转研发?求建议。2,上班做息(上下班时间)。3,大家具体在干什么,能简单介绍一下在作的业务及相应须要的技术么?
其余
程序员面试其实很单纯,技术过了,性格还ok,基本没问题。不须要考虑什么捡垃圾之类的搞笑问题。保持基本的礼貌,敲个门、问个好、谢谢你,就好了。