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知识最快的方法,

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教了方法,

那么这本书就教了方法论,

亦即思考过程,

和从初级思考过程到高级思考过程的思考过程。

第二,实践

刷题和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的经历+内推的更多相关文章

  1. 8个月从CS菜鸟到拿到Google Offer的经历+内推

    http://www.1point3acres.com/bbs/forum.php?mod=viewthread&tid=77453&page=1&authorid=10377 ...

  2. 本科非cs菜鸟计算机面试实录

    两年制小硕,本硕期间差不多都打酱油的.本科非cs专业,硕士cs,编程基础一般,专业基础尚可.研究生期间分析分析了pgsql数据库的源码:同时实验室一些杂项目:自己业余为了应试读了些计算机书.自己当时q ...

  3. 2015年3月阿里内推(c++研发)实习生电面经历

    2015年3月开学开始就听说阿里会有内推,果不其然在师兄的引荐下推了菜鸟网络,但是在学校的BBS上看到了阿里云部门,而且要会C++,这使我更感兴趣,重新选择了方向,当然最后选择了阿里云.在此分享一下三 ...

  4. 【转载】国内网站博客数据统计选免费Google Analytics还是百度统计

    [转载]国内网站博客数据统计选免费Google Analytics还是百度统计 Google Analytics谷歌统计是我用的第一个网站统计工具,当然现在也一直在用.Google Analytics ...

  5. 【转载】 如何看待 2019 年 CS PhD 现扎堆申请且大部分为 AI 方向?未来几年 AI 泡沫会破裂吗?

    原贴地址: https://www.zhihu.com/question/316135639 作为一个 AI 方向的在读博士生,实在是过的蛮闹心,无意中逛知乎发现了这个帖子,发现很适合现在的自己,于是 ...

  6. 【转载】Node.js 教程(菜鸟教程系列)

    很好的一篇教程:Node.js 教程 简单做下笔记 概述 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立 ...

  7. 封闭的一个多月,老菜鸟的 机械手和AGV 自动搬运小项目总结

    最近上海疫情严重,闲赋在家无事可做,手机里不断的推送一些无脑的谩骂声音,索性找点事情做,将3月份实施的一个自动搬运小项目做一个简单的汇总,便于今后项目实施中积累一些经验.项目需求非常简单,因为能力有限 ...

  8. 2017年05月10日记一次微项目投产 | 安卓版微信内置浏览器不能解析gzip压缩过的mp4视频的问题

    前言 今天投产了一个小项目,一个很简单的H5,有播放视频功能,使用了videojs插件. 之前也做过数个视频播放,视频的转压都按照既定流程进行,文件放到FTP后,iphone和安卓机测试下来都没有问题 ...

  9. Google Offer的经历+内推

    8个月从CS菜鸟到拿到Google Offer的经历+内推 http://www.1point3acres.com/bbs/forum.php?mod=viewthread&tid=77453 ...

随机推荐

  1. getpass模块

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #getpass模块 import getpass ''' >>> help(getpass ...

  2. Jquery.getJSON的缓存问题的处理方法

    $.getJSON()存在缓存问题,如果其调用的url之前曾经调用过的话,回调函数就会直接在缓存里取得想要得值,而不是进入到后台   在项目中遇到一个问题,在火狐下,$.getJSON();请求数据一 ...

  3. C语言printf

    1.调用格式为  printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部 ...

  4. 微信小程序裁剪图片成圆形

    代码地址如下:http://www.demodashi.com/demo/14453.html 前言 最近在开发小程序,产品经理提了一个需求,要求微信小程序换头像,用户剪裁图片必须是圆形,也在gith ...

  5. xmlhttp.readyState==4 && xmlhttp.status==200的探究

    作为一个后端人员,很惭愧,对Ajax的使用只局限在功能实现层面的交互,对底层通过XMLHttpRequest对象来使用的知识却没有仔细研究过.现总结如下 1. XMLHttpRequest 对象的相关 ...

  6. 【LeetCode】57. Insert Interval

    Insert Interval Given a set of non-overlapping intervals, insert a new interval into the intervals ( ...

  7. FastJSON使用案例(fastjson-1.1.28.jar)

    import java.util.List; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.TypeReference; ...

  8. Linux Shell之表达式

    严格来说,shell中没有表达式的概念.Shell本身事实上仅仅是一堆命令的集合.当然也不是胡乱的堆在一起.而是有一定的组织.仅仅是这个组织不那么严谨.所以本文不是要真的总结所谓的表达式,而是把she ...

  9. Python直接赋值、浅拷贝和深度拷贝解析

    直接赋值:其实就是对象的引用(别名). 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象. 深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象 ...

  10. javascript array操作

    首先来看一下怎么判断一个对象是不是数组: 1.Array.isArray(obj) 调用数组的isArray方法 2.obj instanceof Array 判断对象是否是Array的实例 3.Ob ...