网上一个人在美帝国面试经验

6月来到硅谷,开始投简历,准备面试的知识,一直到9月才找到。 期间简历大概投了有200个,收到面试电话大概在40~50之间,收到onsite面试大概在10个左右。

不知道国内找工作怎么样。在本科的时候也投过校招的简历。大多数得到的都是被安排在一个教室里面,做一张试卷,做的好,然后才有安排下一轮。因为当时注重出国,所以有了下一轮,也没去。记得当时有腾讯,百度,迅雷等公司,但是都没去。挺是遗憾。 在硅谷这边,一开始基本是网上投简历。而且投的职位还只能是entry level或者junior的。因为别人一般都是招有工作经验的,所以像我这种只读书的毫无竞争力。 每天不断的刷新,有新的职位就投一封。

大概在2~3周之后,一开始投的简历就会有音信。要么被默拒了,要么就会有邮件告诉你,你不是我们要找的candidate,sorry。 要么就是会有电话来,跟你约第一轮的电话面试。

电话面试也分很多种。但是基本上都是围绕你的简历,简历上要是自己编造的,到时候说不出来,那就囧了。记得有个公司,做芯片的。围着我的简历问当年大二时候做的一个项目里面的一个小细节。我实在记不起来了,于是这个公司面完之后就没有消息了。 还有个公司面试官问的我做解析器的细节,我答出来了,但是和他理解的完全不一样,就是说他任务解析器应该那样,我认为是这样,到最后虽然你答得是你当时做的,但是没有说服面试官,也囧了。 不过大多数电话,都很简单,只要简历没问题,然后最后的时候,会稳一点小小的技术问题,比如二分查找的时间复杂度? 析构函数写出virtual有什么好处? 构造函数的赋值初始化和初始化列表各自有什么缺点优点? 所以只要有点基础,就答得出来。

之后要是面试官认为你还行,就会和你预约下一步的面试。有的公司下一轮还是继续是电话面试,只不过形式变了。不再是和你聊简历了,而是那边的面试官给你出1~2个题目,然后你在他指定的网页上边和他聊天边写代码。这种形式的面试,其实也还算简单,不会碰到很难得题目,因为时间基本上只给你一个小时。

我基本上遇到了很多类型的题目,比如:
1.一个无序的数组,找出其中两个数,使得这两个数的差是最大的,并且较大的数在数组里面的顺序是在较小的数的后面。

2. 写一段代码判断2个字符串是不是anagram,就是说2个字符串的组成的字符都一样,只是顺序不一样。比如,“abdc” 和 “dbca”

3. 写一段代码,判断第一个字符串中出现的字符,在第二个字符串中都存在。 

4. 一个二叉树,树的节点都是值,找到一条路径,使得路径上的点的值加起来的和是最大的。

一般写完了,还要和他讲每一步的思路,以及最后时间和空间复杂度,然后会问你还可不可以优化,等等。
还有的记不起来了,大多数都是网上可以搜索到的题目,也就是说只要准备了,就应该写的出来。

之后要是还有下一步,就会有onsite了。

一般onsite会有很多个人,大概4--5个人面试,和你聊的东西也五花八门, 比如简历,比如运动,爱好,电脑游戏。但是聊完之后一般都会给你一个技术问题,所以这里才是重点。也就是基本上每个人都要写一段程序。这里的程序大概要比电面的程序难一点。我遇到的有
1. 一个数组里面有很多0,1,2  这几个数字,杂乱无序,要求写段代码,使得所有的0在最前面,1在中间,2在最后。

2.  写段代码,输出出一个字符串的左右排列。

3.  写段代码,输出出一个字符串的所有组合。

4.  八皇后

5.  老鼠走迷宫的变种。

基本上,准备了cracking和leetcode之后,这些题目应该还好。

不过也遇到面试官出那种超级难的问题的,要是没准备过,就基本做不出来。

比如有个面试官出的是 平面上有许多的点,给你点的结构,写段代码,找到一条直线,使得这条直线穿过的点数目最多。  当时纠结了好久,写出的不是最优的, 在面试官的提示下才写出来。 不过最后还是挂了。

跟变态的有面试官进来什么都不拿,直接拿个魔方进来,问你会不会玩魔方,说他最近心血来潮准备研究一下魔方的算法,要和我一起研究研究,当时瞬间就囧了。完全不会。。。。。

最后找到一个满意的工作,老板人很好,不push,而且总是和和气气的,要求做的东西也是量不大,遇到问题直接问,他总是耐心解答,入职3个月,过的挺开心。。。。很幸运有这么好的老板。。。。。

祝大家顺利。。。。

原文地址:https://www.cnblogs.com/hackerl/p/3348170.html