每日一贴: http://www.mitbbs.com/mitbbs_article_t.php?board=JobHunting&gid=33012865



每日一贴: http://www.mitbbs.com/mitbbs_article_t.php?board=JobHunting&gid=33012865

背景: 非CS,计算方向PhD。期间写过一些程序,用过MPI什么的,但是没接触过任何
framework,webservice啥的。一年IT经验,主要是Java后端。

准备材料:leetcode,lintcode,MITBBS,《算法导论》,《Hadoop-The definite 
guide》,《mining of massive datasets》,facebook tech talk,google/facebook
的论文(heystack,三驾马车等)。整个准备了大概3个多月4个月,每天至少有3个小
时在看材料/刷题。

结果:F跪,LG标准package。

感想:
(1)入行一年,感觉经验远远不够,主要是design方面,而且不像算法,很难短期突
击准备。即便自己对某个design有个答案,一旦被challenge,就会发现漏洞百出。
(2)骑驴找马很难,要请假什么的。所以我觉得面10来家公司对我很不现实。自己只
面了这三家。
(3)面试经验很重要。面试本身就是一个学习和积累经验的过程。所以想去dream 
company,多面面其他公司练练手还是很有必要的。但这又与(2)矛盾。

面经:
F电面(一轮,两题):(1)leetcode #75, (2)leetcode #91.有关于时间/空间,优化
,最坏情况的follow up。
F onsite:
(1)behavior:被问到update一个手机app的new feature和一个web service的new 
feature有啥差别;按时间deploy还是按feature deploy等。一道coding是寻找第一个
bad version。
(2)coding:给定一个数组和一个number,判断数组是否存在一个连续的子数组其和等
于这个number,分数组有没有负数两种情况;一道类似leetcode#77,不用在于打印的是
每个组合的乘积。
(3)coding:给一个带重复数字的有序数组和一个number,回答这个number在这个数组
中出现多少次;leetcode #75。
(4)design:tiny url。
hr反馈结果挺好就是design不好,说6个月后联系我再试。

G没有电面,做了一个foo-bar(放狗一搜就知道是啥了)就直接给了onsite,在NY,因
为近。
G onsite: 如果说F的coding题目是计算题的话,那G出的就全是应用题了。所以很难
简单的说出面试题目是啥。需要什么辅助函数要自己假设,然后再写其中一部分。牵涉
算法的部分大多都是二分/BFS。比如说让你求解一个迷宫,先做假设有一个辅助函数可
以把这个迷宫转化成一个图,然后在图上写个BFS就好。个人比较喜欢G这样的面试题。

L电面(一轮,两题):(1)leetcode #65,需要考虑哪些case要问面试官,问清楚了
发现没有原题那么复杂;(2)leetcode #53.
L onsite:
(1)coding:给两个链表判断是否最终merge,分链表是否有环,要求O(1)的空间。
leetcode #238
(2)coding:一堆点找距离某一点最近的k个。给个矩阵代表twitter的following关系
,求里面的名人(不follow任何人,任何人都follow他/她(要政治正确!)),注意
可能没有名人。
(3)design:同facebook,运气好,挂了以后恶补,但是还觉得答得不够好。
(4)behavior:扯淡,讲了讲我的research。
(5)tech talk:linkedin特有的,讲自己以前的project,对方会问到一些细节。

如果有耐心看到这,还请聊聊一个老生常谈的问题:关于h1b-opt的cap-gap期间change
emloyer的问题。前两天在mitbbs看到了成功的例子,他的解释也很符合我对uscis规
矩的理解,如果case approved了以后再通知原雇主离职即可。可是这两天询问了
linkedin的律师,给出的答复是不可以,即使是approve了也不行。

Read full article from 每日一贴: http://www.mitbbs.com/mitbbs_article_t.php?board=JobHunting&gid=33012865


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts