面试形式:Zoom视频 + 网页编辑器 一面 1. 代码:假如你在一个一维世界的零点,并且你身上有一个计数器,朝左走+1,朝右走-1。问走k步之后,计数器数值为零的概率是多少。 Suppose you are in zero point in a 1-d World and you have a counter, if you go left / right, the counter +1 / -1. You must walk k steps and what is the probability of the counter being zero. 2. 系统设计:一个多币种的钱包软件 (登录,N个不同币种的钱包,向钱包里充值,向其他人的钱包转账(可能为不同币种)) 3. Leetcode 680 Valid Palindrome II 二面 1. Leetcode 268 Missing Number. 2. 跟进问题:O(1) 空间怎么实现 3. Leetcode 238 Product of Array Except Self 4. 跟进问题:不用除法 5. 进程和线程的区别 6. 在访问Google.com的时候,浏览器和电脑做了什么? 三面 1. (做过的一个打车软件项目)是打车请求实时的吗?你怎么改进将这个项目变成实时的?(或者 你在这里是怎么实现实时的?) 2. 系统设计:短网址服务。 3. 你的哪些项目是团队协作的?你们在写作的过程中遇到了什么困难? 4. 如果我们给你offer,什么因素会导致你不来我们公司? 总结 相对于国内的公司来说,考察的范围比较广,涉及到了系统设计的问题,并且在当中还会夹杂考察计算机基础知识,比如数据库,网络,分布式系统等等。 面试的过程还是比较愉快的,interviewer会一步一步的引导我说出会的内容,也会给一些小的提示。 就是interviewer们的英语口音比较难听懂,有时候需要重复一两遍。(划掉