转帖:8个月从CS菜鸟到拿到Google Offer的经历+内推 - OurCoders (我们程序员)
投了肯定有100家以上, 一共面了30家, 11个onsite, 前7次都挂了, 后4次拿到了3家大公司和一家startup的Offer, 最后从了G家。
我的背景, 国内软件工程混沌过了4年, 毕业时连Java,C++的main都分不清, 一共没写过100行代码, CS基础知识是极度零散与凌乱的。 误打误撞读了CS 一年的master, 12年9月入学, 13年1月底开始找工作, 当时的程度, 和本科毕业时, 没太多区别。
总结自己, 一共五点支持我, 撑了过来。 一为知识, 二为实践, 三为目标, 四为心态, 五为技巧。
第一,知识 掌握一门编程语言 我选了python, 因为语法和数据结构足够简单, 让我更加关注代码的作用 — 目的apply到数据结构上。
入门: codeacademy 学python basic 应用: 用python写了一遍CC150上能写的题目 这时候就逐渐看的懂Python Documentation了
数据结构与算法 数据结构:找自己学校的课件或网上教程,仔细研读了3遍 算法:其实对找工作用处不大,只要弄懂那些应用到数据结构上的常用算法(DFS etc)和Dynamic Programming就差不多了
训练 就是训练用1中语言将算法应用到数据结构上; 方法就是刷题, 我只刷了CC150, 完完整整刷了5遍, 最后每次面试, 都快速刷一遍。
CS素养: 刷完题后,以为自己还不错了, 但是每面还被拒, 发现与面试官随便聊聊, 就会暴露自己缺乏CS素养, 也就是CS基本常识, 以及各种知识的关系。
入门: 获取比较全面的CS知识最快的方法, www.programmerinterview.com 把主要的section死记了两遍, 偶尔可以应付面试官, 但是自己却没办法宏观把握和理解知识。 B. 中级: 深入学习: a.数据结构 b. 算法 c. 数据库 d. 操作系统
如果能上CS的科目, 这4科是最好上的, fancy的课可能对找一个general developer的帮助不大。 如果没上过, 就上online的课。
e. 推荐Berkley的CS的入门课, 建立起了CS思维过程 Structure and Interpretation of computer programming: http://www.youtube.com/playlist?list=PL3E89002AA9B9879E
C. 进阶 全面吸收,囫囵吞枣; 以下知识只是为了完善知识体系, 快速学习的。 语言: Java, C++ 随便找本入门书, 花几个小时看一遍, 了解数据结构在这些语言里 都叫什么, 怎么使。 b. front end: HTML, CSS, JQuery, XML 从W3C school 上快速看每一块内容。 c. Linux 指令 d. Web development: Django e. Mobile: android: online course (udemy) iOS: iOS Programming f. Others Design Pattern: online course (udemy) Programming Pearls: 面google前花了两天看的, 如果说CC150和leetcode教了方法, 那么这本书就教了方法论, 亦即思考过程, 和从初级思考过程到高级思考过程的思考过程。 . visit 1point3acres.com for more.
第二,实践 刷题和CS常识让自己有了lego, 但是并不自信, 因为没有作品。
自己去写code, build自己的作品。 . from: 1point3acres.com/bbs 可以自己写个side project, 比如我就写了个iOS的app。 也可以认真写写course project, 或者找老师做点项目。
第三,目标 1.一定 自己和周围很多ECE朋友的经验告诉我, 只要你想找CS的工作, 一定能找到。
所以别有备胎, 比如回国工作, 再继续读个书,etc。
当只有一个确定的目标, 一切都别的简单与坚定。
清单和资源 8月底, 已经毕业快3个月了, 还没找到工作, 觉得公司该面的都面了, 其实不然。 我花了两个小时, 把我所有想面还没面的公司列了出来, 一共25家; 我一一找资源, 看自己有没有人认识的人可以refer, 如果没有, 就去各大中文社区有没有可以refer的, 结果22家都被refer。
结盟 找到身边一起招工作且态度积极的战友, 一起努力。
第四,心态 1.自信 当刷了那么多遍题, 做了那么多储备, build出自己的作品, 自信便会出来, 突然某一天, 一个声音告诉自己, I am ready.
- 信念 其实欲望有多大, 信念就有多强。
还可以通过meditation, 天天幻想自己拿到offer的场景。
- 越败越战 不断磨练自己的面试技巧 发现知识漏洞,及时补救
第五,面试技巧 介绍自己的background 精心准备自己的education background, 和自己所做的projects, 对着镜子自己演练熟了, 也可以找朋友做Mock interview.
准备3个问题 一定要问, 让牠们感受到你的兴趣和热忱。
微笑 从踏进公司大楼Onsite的时候, 就告诉自己时刻微笑, 一切问题都会解决。
最后, 希望大家都能找到心仪的工作。 如果需要refer Google, 可以发邮件给我, grefermit AT gmail dot com
Read full article from 转帖:8个月从CS菜鸟到拿到Google Offer的经历+内推 - OurCoders (我们程序员)
No comments:
Post a Comment