update: Nov.11 2014
如何在编程理论,实践上的蜕变
然后我给你讲一下一个这样的小白是如何通过2年学习拿offer的。
所需品质:耐得寂寞,坚持追求,坚定方向,身体要好。
耐得寂寞:别人在玩,你在学,很好理解。
坚持追求:请不要降低自己的追求。
坚定方向:路有很多条,互联网是一个大路,大路中还有pm、运营、rd等小路,想怎么走看你自己。
身体要好:科学学习,养护眼睛、脊椎、腰椎。我不是开玩笑。我坚持运动。
内功准备:看书、编程、思考、总结。
看书:各种经典书,扩展视野。我待会列个书单。
编程:实际上手做东西,东西不需要高大上,但需要你实际去敲。
思考:编程是练脑子不是练手指肌肉,不会思考必挂。
总结:看书、编程、思考不停的loop,然后不停觉得自己菜,总结自己菜在哪。
去找实习:校招预演、认识自己、认识朋友、实践学习。
校招预演:各大公司都有暑期实习招聘,不去投递的,浪费了一半机会。
认识自己:面试的过程中,你会不断认识自己的不足。
认识朋友:如果你是认真准备并严肃对待,你会结识很多志同道合的牛人。
实践学习:如果拿到offer,去公司实践,要主动找活干,不要被边缘化。
面试准备:狂刷题、写简历、多面试、拿offer。
狂刷题:《剑指offer》《编程之美》《编程珠玑》《Crack over the code interview》TopCoder Leetcode
写简历:不认真写简历的求职者都是耍流氓。
多面试:面多了你才有感觉。
拿offer:去痛哭一场,为了你的付出。
下面的东西我在两年,从纯小白到腾讯阿里,应届非计算机毕业生的2014互联网求职之路 中写了,这里再贴一下。
技术语言书籍推荐:
一,《C程序设计语言》。C语言圣经,废话不说,适合多看几遍。谭书入门看一遍即可丢。
二,《C++Primer》。过两遍,记住C++语法。中文翻译还不错,但有些地方仍有小瑕疵。建议看英文版,此书英文版非常容易看懂,且你从头到尾看完一本英文原著,对英文能力提高巨大。英文能力对程序员来说是重要的,先进技术、最新书籍都是英文版,且牛逼网站stackoverflow和github也是英文,作为程序员巨头大的问题——变量命名,英文水平的提高也是非常有帮助。API什么的我就不多说了。当然,看英文书籍速度是没有中文书快的。建议在看中文书籍对句子不理解的时候,翻看英文原版。
三,《Effective C++》。适合有一定实际经验者观看。
四,《Inside the C++ Object Model》。看完这个妈妈再也不担心面试官问我多态虚函数什么的啦。
五,《C和指针》。一般,不过其中一道课后题错了,自己敲出来后发现不对,去stackoverflow上提问,还增加了reputation,开心。
《More Effective C++》《STL源码剖析》《C++标准库》《C++程序设计语言》买了,翻过一些,没有时间细看。
操作系统(底层)书籍:
一,《现代操作系统》。Modern Operating System。重点关注进程和线程、死锁等概念。
二,《程序员的自我修养——链接、装载与库》。见过一个本科学弟看完这本书后在自己简历中写精通语言底层的链接、装载等,窃以为还没到那个地步。
三,《深入理解计算机系统》。CSAPP。中文书名很奇怪。
四,《鸟哥的Linux私房菜》。至少知道如何装linux,如何打开shell写个echo hello world。
五,《Unix环境高级编程》。APUE。看完MOS后看看,要实际敲代码。
六,《Linux命令行与shell脚本编程大全》。用了脚本语言你才能知道妈蛋C/C++真是烦。
数据结构与算法书籍:
一,《数据结构与算法分析——C语言描述》。小白刚开始看,真心累死。课后题很不错,适合都做做。
二,《算法导论》。后悔听信旁人言,说这么厚的书没必要看,到要用的时候再看。其实若能安心从头到尾看完算导,帮助极大。限于时间问题,我只看了此书的某些章节。
逼格提升书籍:
一,《黑客与画家》。当散文随笔看。
二,《Unix编程艺术》。在不同阶段看有不同感悟。
三,《代码大全》。翻翻看,学生阶段不看完全可以,不过有助于提高逼格。期待在工作后有更多感悟。
四,《浪潮之巅》、《数学之美》。当小说看,开阔视野。
五,《人月神话》。10个女人花1个月的时间是不可能生出一个孩子滴。
其他的都是重复,不贴了。
知识深度和广度,作为一个校招生,还没太多资格去评论。
期待更多面试官们来回答。
最后一句话:养成良好习惯。因为,优秀是一种习惯
参考: http://www.zhihu.com/question/26406260/answer/32674342