[Mitbbs]FB的intern和准备的经历

Advertisement

今天中午刚收到f家的intern offer, 超级开心。在这个版块看了很多也收获很多。
onsite前天晚上面就就对自己过了一定发个帖跟需要的人分享下自己的经历。论坛上帖
子看了很多,很多拿了FLAG之类公司的人都说自己不是大牛啦,没准备多久啦。 LZ 觉
得都太假了。 所以希望LZ的帖子能真正的对之后同学的人有些启发。也给LZ攒攒RP啦。

首先说下背景。本科西安一个万年211的高校的telecommunication,EE很强(西安的同
学应该猜到了是哪个了)。本科没做过research。春季入学了LA一个中国学生超级多的
学校, 专业CS, Master。没有任何实习经历或者research 经历。因为LZ完全不知道
从哪下手于是就作罢了。 科目修了OS,Alg,DB, ML, Software Architecture,AI
。GPA3.79

1月份下旬开始投的简历,因为有大牛的帮助,有5个refer。结果LinkedIn 和twitter
refer直接被拒,Yahoo 一直没合适的岗位。自己也投了将近10家大公司和4家小公司,
都没有消息(可以看出LZ背景确实不行)。 最后只收到了G 和 F的电面。最后G家进了
waiting pool,F 家一轮oniste 拿到offer。

准备资料:
leetcode + cc150 + Coursera 的 Algorithms, Part I. LZ其实1月5号左右才开始正
儿八经准备面试,之前只是上过学校的算法课。不过简历是寒假就准备了的。

准备顺序:
1. cc150 基础部分(不包括 programming language, memory limit 和 OOD)。 筑
基过程,非常中庸。

2. leetcode 老80 道题。 LZ一开始以为leetcode就是 leetcode.com 不知道有oj 这
么个东西,不过 老80道题有些题目真的非常经典,建议有空可以看看。

3. leetcode oj,一共150道题,LZ是每一题都是自己独立做的,除了 string pattern
类的题目,有一些是抄的。 但是这是绝对的错误,尤其是你去FB的话,string 类的
题极其容易被考的,不信可以翻mitbbs记录。这也是最痛苦的过程。LZ建议不要干别的
事这个时间,集中画2周到3周一题题突破。不要拖太长时间,因为你会发现时间越长越
没动力。

4.CC150 最后两章。LZ是在G 家第一轮面试前发现的这两章,当时吓出了一身冷汗。因
为之前室友问过LZ自己面试遇到的难题都在这里面发现了,甚至一些比较偏门的也能在
这发现。强烈建议练习,背诵!

5. CC150 全书,这段时间也是LZ最迷茫的时候,因为不知道该做什么了。最后决定还
是继续筑基。于是开始重做CC150.

6. leetcode 130道题。如果你之前都是自己做的话,你会发现这个阶段你提高的非常
明显。LZ 没写一道题都会发现 coding 风格比之前的更加简洁,并且做得更快,130题
只用了一周多一点点就全部跑过了。

7. Coursera 的Algorithms, Part I, Princeton Univ. 很多人都觉得 leetcode 刷
通了就能进FLAG。 但是LZ觉得,不管是intern 还是 fulltime, leetcode对付 电面
完全够了,但是onsite 就比较悬了,必须要从算法根本重新复习。所以LZ F家onsite
之前花了2天看了公开课的所有视频,有些章节甚至看了两遍。LZ承认,自己onsite没
用到,但是跟LZ一起onsite的一个CMU的哥们问到了 sparse vector multiplication,
公开课的原题啊!

基本上顺序就是这些,其实每次电面前三天LZ都会用google doc 敲一遍 CC150最后两
章的重点题,因为实在是太经典了。之前的章节也会自己带着做一些。

准备建议:
1。 数据结构必须精通,甚至要回搭建自己简单的数据结构 比如hashmap, linklist
之类的。
2. CC150 是神书,最神奇的是最后两章,
3. 不要浮躁的刷题,有时间多看一些算法课的视频,有些思想没准哪天你就会用到了。
4. leetcode要练精,第一遍做的时候可以尝试多一些,第二次要尽量做到bug free,
代码一次成型,这点非常重要。
5. leetcode上一些复杂的DP其实考得很少,因为45分钟你很难做出来,(面试官当然
会假设你没做过)而且面试官也不一定能确定你做的是对的。真正重要的就是一些
string 类型的小题目。很简单,但是容易错,非常考验代码风格。
6。 做题的时候就要保证代码规范,虽然只有F家注重这些,但是好的代码规范据说会
加分哦。
7. 只用写字板写代码,onsite 前可以找白板练练。
8. coding 要老老实实地练,不管java 还是C++ ,leetcode总有人能跑过的,LZ自己
就是Java 151/151. 所以,少抱怨些,多静下心来做做题。(如果你有跑不过的,可以
给LZ留言,LZ可以把自己代码发给你参考下)。

面经:
都是一些极其基础的leetcode。只有一个facebook二面时候 brain teaser, 面试官很
聪明得给了LZ一段代码,LZ觉得很眼熟,想起来时 CC150 brain teaser 最后一题。于
是一边聊天拖时间一边翻开书看了下,给了他答案。面试官最后非常满意。

其他:
其实LZ面试挺坎坷的,Google电面第一轮是LZ张那么大的第一轮面试,及其紧张。LZ英
语也是半个结巴,所以感觉非常不好。最后一道题竟然还被告知bug。但是LZ 一直找不
到,问他他也说你可以自己找。LZ最后用eclipse测出来没问题就发邮件个面试官解释
了了下自己的思路。竟然最后两轮过了之后面试官主动打电话说不要意思,面试时候看
错了 你的代码是bug free的。 不由的佩服老美native的心胸。 相比下F家第一轮的烙
印就差点把LZ坑死, two sum不给用 夹边的那个算法。LZ给了个hashmap的 被告知有
bug,还给了LZ个test让肉眼debug。真是拼了老命都没找到啊,结束后用eclipse test
, 完美跑过了他给的2个test。当时就惊呆了。。。 不过确实有个小bug,但是跟他给
的test完全没关系。LZ面试的时间就这么被耗尽了。不知道是不是被这个烙印给故意坑
了。不过幸好是refer的,所以recruiter给了第二轮面试,leetcode原题,表现良好,
就直接给了onsite。

所以大家还是保佑别遇到极品阿三吧。不过LZ Google 第二轮遇到的阿三哥还是蛮nice
的, LZ面的不错,爽快的给LZ过了, 还弥补一面悲剧的表现。所以什么地方都有好人
,也有坏人,大家不必一概而论。不过经过被F家一面烙印坑了之后,LZ还是决定,以
后如果当面试官的话,遇到不靠谱的阿三直接难题秒他。

LZ现在也有些不知所措,不知道intern 要做什么,自己能干什么。不过以前一个师兄
有句话对LZ帮助很大,最后送给大家:”当你迷茫的时候或者不知所措的时候,就老老

实实把手边的事情做好就行了,所有事情都会慢慢变好的”。

Data structure:
Link list, tree(BST), graph, stack, hashmap, array, string.
Also: trie, suffix tree, Red-black tree.

Algorithm:
DP, DC, tree traversal, some string pattern comparison algorithm including
KMP, rolling hash.

Most algorithms and data structures are practiced in CC150 and leetcode.

http://www.mitbbs.com/article_t/JobHunting/32659939.html

Similar Posts:

  • Intel 的面试经历中国研究院

    那么今天写Intel 的面试经历中国研究院.Intel我采访了面试题比较简单的一. 第一次是在大约下午五时三十, 我正在食堂和好几个基友吃20元巨资买的清蒸草鱼.正在吐沫星子四处飞溅的时候.一个010开头的电话打进来. 我心 想又是哪个卖信用卡的骚扰电话,结果那头说自己是Intel中国的,想给我来个电话面试,我瞬间咽下口中的鱼肉,出去 找了一个黑暗的猥琐角落蹲着開始电话面试. 他说大概20分钟的面试持续了将近40分钟左右. 刚開始是很常规的介绍项目经历.我把早已经说的滚瓜烂熟的项目经历巴拉巴拉的

  • (转)uboot移植到S3C44B0X开发板的经历

    Sam Fei (email: [email protected]) (1) 事情来由 几个月前从朋友那里拿到了一块参考Micetek EV44b0-II开发板设计的板子,对其bootloader MBL感觉很不错. 朋友说可能是移植u-boot的.但Micetek并没有提供MBL的源代码, 因此当时没有仔细去研究. 最近公司准备想做基于S3C44B0X CPU的产品,因此购买了杭州立宇泰公司(www.hzlitai.com.cn)的armsys-c及armsys-b开发板和.armsys提供的boo

  • 寻找实习的经历和思考(1)

    软件版从本周开始进行话题讨论,欢迎大家提出话题,更欢迎大家参与讨论,我们共同分享. 12日午时,强烈推荐WINDam的找工作经验帖<一个计算机本科生的求职之路[by WINDam]> http://forum.byr.edu.cn/wForum/disparticle.php?boardName=SoftDesign&ID=26595&pos=5 系列第二篇:[第二弹]寻找实习的思考[ by amiao] http://forum.byr.edu.cn/wForum/dispa

  • uboot移植到S3C44B0X开发板的经历[转载]

    uboot移植到S3C44B0X开发板的经历 Sam Fei (email: [email protected]) (1) 事情来由 几个月前从朋友那里拿到了一块参考Micetek EV44b0-II开发板设计的板子,对其bootloader MBL感觉很不错. 朋友说可能是移植u-boot的.但Micetek并没有提供MBL的源代码, 因此当时没有仔细去研究. 最近公司准备想做基于S3C44B0X CPU的产品,因此购买了杭州立宇泰公司(www.hzlitai.com.cn)的armsys-c及ar

  •      GE的EID项目要我过去做mx21开发。以后会陆续写一些经历(当然不会涉及保密)

    经过了很多考虑,放弃了上海研发中心的intern(要我做数据库方面),选择了GE医疗做intern.主要还是方向和我比较对口,以后在intern中我会把一些经历写一下,不过不会涉及具体的项目,因为会有保密协议的.^_^ 本文出自 "Mobile and Linux Deve.." 博客,请务必保留此出处http://buaadallas.blog.51cto.com/399160/80964

  • 记我的一次外包经历

    其实外包是很多人在职业生涯中都会遇到的问题,也就是接私活.今天我来说说我遇到过的一次外包经历,我要说的这次外包经历既不是我的第一个外包项目,也不是最后一个,之所以要记下来,是因为这是我目前为止遇到过的最坑的一次,导致我整个2015年都在为这一次外包进行补救.不过,我写这篇文章并不是为了抱怨,而是为了记录这次事件,提醒自己在以后的项目(不论是是公司的项目还是自己的项目)中不要再像这样行事,还有就是希望能够给后来者一些借鉴,毕竟这是很多人都会遇到的,尤其是学理工科出身的人.在这篇文章中,所有的人名.

  • 2016阿里前端开发实习生面试经历

    终于有时间也有机会来写这么一次面经了.其实距阿里的最近一次面试也有29天了,这段时间一直在等待通知,终于在昨天下午收到了阿里的贺电,一直悬着的心也可以放下了.现在赶紧把我的经历分享给各位小伙伴. 一面: 没有一点点防备,内推的第5天下午正在做实验的我突然收到了阿里一面的电话,当时觉得自己状态还可以,于是就直接面了(面试的时候如果状态不好,可以给面试官重新约时间),虽然是一面但觉得考察的很广泛(有点交叉面的感觉),从基础,知识广度以及人品等各方面对我进行了询问~ ---首先是基础 Q: 我是淘宝的

  • 我的求职经历

    经过将近一年的努力,现在已经找到了自己喜欢的工作,想想这段时间的经历,确实是人生一大收获 废话 对于大学,每个人都有不同的看法.有的人认为大学是天堂,可以学到很多东西,而有的人认为大学并没有人们想象的那么好. 曾经在网上看到一个段子,大体内容是这样的:大学是将一个上知天文.下知地理.语数外,物理化学无所不能的人,变成一个只会LOL.dota.每天宅在寝室无所事事的屌丝的地方. 而在我看来,经过大学的筛选,将人们分成了四类人: 1,纯屌丝(大约占20%) 2,半屌丝(大约占30%) 3,正常人(大

  • 记2016腾讯 TST 校招面试经历,电面、笔试写代码、技术面、hr面,共5轮

    (出处:http://www.cnblogs.com/linguanh/) 前序: 距离 2016 腾讯 TST 校招面试结束已经5天了,3月27日至今,目前还在等待消息.从投简历到两轮电面,再到被邀请到腾讯深圳总部进行了3轮 TST计划(Top student talent) 面试,整个过程历时一个月,我都觉得我是幸运的,还有,我投的是安卓移动端开发实习生,时年大三.至此,故择此文,邀君共享之. 第一轮电面: 距离投递简历6天后,3月10号,当时我还在学校的创业工场里面写着代码,突然来了个电话

  • 一套跨平台五子棋网游的开发经历(一)

    闲来无事,因自己想要在服务器开发方面进行更深入的学习,积累更丰富的经验.决定写一套网络游戏的c/s. 因为主要目的是服务器的开发,因此游戏我选用规则较为简单.画面特效没有要求的回合制游戏:五子棋.我曾经在刚接触编程的时候自己在控制台下做过这个游戏,当时写的ai特nb我自己根本下不赢他.确定是制作五子棋了, 但是还要满足跨平台的特性,毕竟移动互联时代,得终端者得天下.游戏做成全平台才能更好的将各种玩家聚集在一起.跨平台?b/s是人们通常会第一个想到的跨平台方式,的确现在市面上有很多基于b/s的页游

Tags: