转载: 8个月从CS菜鸟到拿到Google Offer的经历+内推
8个月从CS菜鸟到拿到Google Offer的经历+内推
http://blog.csdn.net/fightforyourdream/article/details/17094127
http://www.1point3acres.com/bbs/forum.php?mod=viewthread&tid=77453&page=1&authorid=103773
投了肯定有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就差不多了
3. 训练
就是训练用1中语言将算法应用到数据结构上;
方法就是刷题,
我只刷了CC150,
完完整整刷了5遍,
最后每次面试,
都快速刷一遍。
4. CS素养:
刷完题后,以为自己还不错了,
但是每面还被拒,
发现与面试官随便聊聊,
就会暴露自己缺乏CS素养,
也就是CS基本常识,
以及各种知识的关系。
入门:
获取比较全面的CS知识最快的方法,
把主要的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教了方法,
那么这本书就教了方法论,
亦即思考过程,
和从初级思考过程到高级思考过程的思考过程。
第二,实践
刷题和CS常识让自己有了lego,
但是并不自信,
因为没有作品。
自己去写code,
build自己的作品。
可以自己写个side project,
比如我就写了个iOS的app。
也可以认真写写course project,
或者找老师做点项目。
第三,目标
1.一定
自己和周围很多ECE朋友的经验告诉我,
只要你想找CS的工作,
一定能找到。
所以别有备胎,
比如回国工作,
再继续读个书,etc。
当只有一个确定的目标,
一切都别的简单与坚定。
2. 清单和资源
8月底,
已经毕业快3个月了,
还没找到工作,
觉得公司该面的都面了,
其实不然。
我花了两个小时,
把我所有想面还没面的公司列了出来,
一共25家;
我一一找资源,
看自己有没有人认识的人可以refer,
如果没有,
就去各大中文社区有没有可以refer的,
结果22家都被refer。
3. 结盟
找到身边一起招工作且态度积极的战友,
一起努力。
第四,心态
1.自信
当刷了那么多遍题,
做了那么多储备,
build出自己的作品,
自信便会出来,
突然某一天,
一个声音告诉自己,
I am ready.
2. 信念
其实欲望有多大,
信念就有多强。
还可以通过meditation,
天天幻想自己拿到offer的场景。
3. 越败越战
不断磨练自己的面试技巧
发现知识漏洞,及时补救
第五,面试技巧
介绍自己的background
精心准备自己的education background,
和自己所做的projects,
对着镜子自己演练熟了,
也可以找朋友做Mock interview.
准备3个问题
一定要问,
让牠们感受到你的兴趣和热忱。
微笑
从踏进公司大楼Onsite的时候,
就告诉自己时刻微笑,
一切问题都会解决。
最后,
希望大家都能找到心仪的工作。
如果需要refer Google,
可以发邮件给我,
grefermit AT gmail dot com
转载: 8个月从CS菜鸟到拿到Google Offer的经历+内推的更多相关文章
- 8个月从CS菜鸟到拿到Google Offer的经历+内推
http://www.1point3acres.com/bbs/forum.php?mod=viewthread&tid=77453&page=1&authorid=10377 ...
- 本科非cs菜鸟计算机面试实录
两年制小硕,本硕期间差不多都打酱油的.本科非cs专业,硕士cs,编程基础一般,专业基础尚可.研究生期间分析分析了pgsql数据库的源码:同时实验室一些杂项目:自己业余为了应试读了些计算机书.自己当时q ...
- 2015年3月阿里内推(c++研发)实习生电面经历
2015年3月开学开始就听说阿里会有内推,果不其然在师兄的引荐下推了菜鸟网络,但是在学校的BBS上看到了阿里云部门,而且要会C++,这使我更感兴趣,重新选择了方向,当然最后选择了阿里云.在此分享一下三 ...
- 【转载】国内网站博客数据统计选免费Google Analytics还是百度统计
[转载]国内网站博客数据统计选免费Google Analytics还是百度统计 Google Analytics谷歌统计是我用的第一个网站统计工具,当然现在也一直在用.Google Analytics ...
- 【转载】 如何看待 2019 年 CS PhD 现扎堆申请且大部分为 AI 方向?未来几年 AI 泡沫会破裂吗?
原贴地址: https://www.zhihu.com/question/316135639 作为一个 AI 方向的在读博士生,实在是过的蛮闹心,无意中逛知乎发现了这个帖子,发现很适合现在的自己,于是 ...
- 【转载】Node.js 教程(菜鸟教程系列)
很好的一篇教程:Node.js 教程 简单做下笔记 概述 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立 ...
- 封闭的一个多月,老菜鸟的 机械手和AGV 自动搬运小项目总结
最近上海疫情严重,闲赋在家无事可做,手机里不断的推送一些无脑的谩骂声音,索性找点事情做,将3月份实施的一个自动搬运小项目做一个简单的汇总,便于今后项目实施中积累一些经验.项目需求非常简单,因为能力有限 ...
- 2017年05月10日记一次微项目投产 | 安卓版微信内置浏览器不能解析gzip压缩过的mp4视频的问题
前言 今天投产了一个小项目,一个很简单的H5,有播放视频功能,使用了videojs插件. 之前也做过数个视频播放,视频的转压都按照既定流程进行,文件放到FTP后,iphone和安卓机测试下来都没有问题 ...
- Google Offer的经历+内推
8个月从CS菜鸟到拿到Google Offer的经历+内推 http://www.1point3acres.com/bbs/forum.php?mod=viewthread&tid=77453 ...
随机推荐
- 一个简单的knockout.js 和easyui的绑定
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Basi ...
- C-从源文件到可执行文件的详细编译链接过程
一直用windows一键搞定, 没有去了解详细的编译链接过程, 今天看了一篇文章, 顺便实验和记录在Linux下逐步生成的步骤. 预处理: 执行#include, #define, #if, #ifd ...
- HDUOJ---------(1045)Fire Net
Fire Net Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- js 停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)
在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到“停止事件冒泡”和“阻止浏览器默认行为”. 1..停止事件冒泡 JavaScript代码 //如果提供了事件对象,则这是一个非IE浏览器if ( ...
- 利用HttpWebRequest模拟表单提交 JQuery 的一个轻量级 Guid 字符串拓展插件. 轻量级Config文件AppSettings节点编辑帮助类
利用HttpWebRequest模拟表单提交 1 using System; 2 using System.Collections.Specialized; 3 using System.IO; ...
- fork函数相关总结
fork的作用是根据一个现有的进程复制出一个新进程,原来的进程称为父进程(Parent Process),新进程称为子进程(Child Process).系统中同时运行着很多进程,这些进程都是从最初只 ...
- 计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)
程序猿都非常懒.你懂的! java程序猿在实际的开发中会遇到非常多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下.一般要求b,kb,mb,gb,tb,pb之间的大小转换,我们 ...
- Cocos2d-X开发中国象棋《二》project文件概述
我在上一篇博客中介绍了象棋的功能.在接下来的博客中将向大家介绍使用Cocos2d-X怎样一步一步开发中国象棋 开发工具: Cocos2d-X2.2.3 VS2012 项目的文件夹: Classes:存 ...
- Hspice仿真打印某个子模块中所有信号信息
简单的说就是在你要打印的子模块中加一句:.probe v(*) i(*)就可以了,这个子模块的每一个实例都会被打印出来.
- bs-web项目时会经常打断点跟踪信息,可是循环时总是F10、F10的按,那么把所数据打印出来查看会更方便
bs-web项目时会经常打断点跟踪信息,可是循环时总是F10.F10的按,那么把所数据打印出来查看会更方便 一.打断点的方式适合在有错误产生的时候用很好用. 二.可是在分析数据时不直观,得一个一个循环 ...