一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 7023|回复: 40
收起左侧

Uber phone+onsite

[复制链接] |试试Instant~ |关注本帖
tianz 发表于 2015-7-20 04:30:23 | 显示全部楼层 |阅读模式

2015(7-9月) 码农类 硕士 全职@Uber - 网上海投 - 技术电面 Onsite |Fail在职跳槽

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
周五刚面完uber onsite说是下周一给结果但感觉挂掉了。。。主要原因是基础知识不过硬加engineering manager不喜欢。摊手。跳槽路漫漫。

phone
碰到一个校友。感觉放水。问了word break原题。那是没怎么刷题就抄了答案。也没讲清楚为啥校友不住给暗示最后说答得非常好(晕)你马上就会收到next step!半小时HR给onsite,水果。. Waral 鍗氬鏈夋洿澶氭枃绔,

onsite
1. 设计excel, 先实现基本功能再优化(比如存图片怎么弄)
2. 给一个tuple list, 按weight random select. 比如给 [("hello", 2.34), ("world", 4.68)...] world出现的概率是hello的两倍
第二题, reverse string的变种。 只reverse word不reverse punctuation。比如 "this,,,is.a word" -> "word,,,a.is this"
3. bar raiser. 是一个front end engineer (我面的是backend)但要我把我的project给他讲清楚。结果不讲不知道一讲吓一跳,backend懂得比我还多
4. design一个uber eat。说是system design结果我感觉更像product design
5. engineering manager. 一个老中 刚来没多久。问了我许多问题结果感觉对我不大满意。比如问我写service到底理解到多deep。data storage平时接触没(确实没怎么 - 都在application层面 - 摊手)。

回家路上心情郁闷。毕竟题目都很水。
郁闷了两天但感觉还是爬过来造福一下社会。. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
祝大家好运!. 1point 3acres 璁哄潧


. 鍥磋鎴戜滑@1point 3 acres
补充内容 (2015-7-20 19:28):
今天HR给了电话,竟然Offer了。。。出乎意料的惊喜。

评分

7

查看全部评分

本帖被以下淘专辑推荐:

  • · Design|主题: 3, 订阅: 1
DIMfang 发表于 2015-8-22 21:18:22 | 显示全部楼层
frederickyl 发表于 2015-8-16 14:32
楼主能说下reverse string那道题的思路吗?多谢!
.鐣欏璁哄潧-涓浜-涓夊垎鍦
public static void main(String[] args) {
            
            String[] a1 = {"this", ",", "is", "a", "word", "."};. 鍥磋鎴戜滑@1point 3 acres
            String b = reverseString1(a1);
            System.out.println(b);. more info on 1point3acres.com
          }
          public static String reverseString1(String[] s) {
                  Stack<String> stack1= new Stack<String>();
                  Stack<String> stack2= new Stack<String>(); //仅存储
                  StringBuilder res = new StringBuilder(); //输出用
                  Map<Integer, String> map = new HashMap<Integer, String>();//存储标点位置
                  for (int i = 0; i <= s.length - 1; i++) {
                          if (s.equals(",") || s.equals(".")) {
                                  if (s.equals(",")){
                                         map.put(i, ",");. from: 1point3acres.com/bbs
                                     continue;
                                  } else if (s.equals(".")) {
                                         map.put(i, ".");
                                         continue;. more info on 1point3acres.com
                                  }
                          }
                          stack1.push(s);. 1point 3acres 璁哄潧
                  }
                  . 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
                  for (int i = 0; i <= s.length - 1; i++) {
                          if (map.containsKey(i)) {
                                  String temp = map.get(i);
                                  stack2.push(temp);
                                  res.append(temp).append(" ");
                                  continue;-google 1point3acres
                          }.1point3acres缃
                          if (map.containsKey(i + 1)) {//如果下一个是标点的话,后面就不要加空格了
                                  res.append(stack1.peek());. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
                                  stack2.push(stack1.pop());
                          } else {
                                  res.append(stack1.peek()).append(" ");
                                  stack2.push(stack1.pop());
                          }
                  }
                  
                  return res.toString();
          
          }
回复 支持 0 反对 2

使用道具 举报

DIMfang 发表于 2015-8-22 21:17:59 | 显示全部楼层
yingchal 发表于 2015-7-21 15:39.鐣欏璁哄潧-涓浜-涓夊垎鍦
感谢~目前为止最清晰的解释!赞!
那reverse words的变种~应该如何approach阿?我目前想到的方法都不 ...

public static void main(String[] args) {
            
            String[] a1 = {"this", ",", "is", "a", "word", "."};-google 1point3acres
            String b = reverseString1(a1);
            System.out.println(b);
          }
          public static String reverseString1(String[] s) {.鐣欏璁哄潧-涓浜-涓夊垎鍦
                  Stack<String> stack1= new Stack<String>();
                  Stack<String> stack2= new Stack<String>(); //仅存储. visit 1point3acres.com for more.
                  StringBuilder res = new StringBuilder(); //输出用. visit 1point3acres.com for more.
                  Map<Integer, String> map = new HashMap<Integer, String>();//存储标点位置
                  for (int i = 0; i <= s.length - 1; i++) {
                          if (s.equals(",") || s.equals(".")) {
                                  if (s.equals(",")){
                                         map.put(i, ",");
                                     continue;
                                  } else if (s.equals(".")) {
                                         map.put(i, ".");
                                         continue;
                                  }
                          }
                          stack1.push(s);-google 1point3acres
                  }
                  
                  for (int i = 0; i <= s.length - 1; i++) { 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
                          if (map.containsKey(i)) {. Waral 鍗氬鏈夋洿澶氭枃绔,
                                  String temp = map.get(i);
                                  stack2.push(temp);
                                  res.append(temp).append(" ");. 鍥磋鎴戜滑@1point 3 acres
                                  continue;
                          }
                          if (map.containsKey(i + 1)) {//如果下一个是标点的话,后面就不要加空格了. 鍥磋鎴戜滑@1point 3 acres
                                  res.append(stack1.peek());
                                  stack2.push(stack1.pop());
                          } else {
                                  res.append(stack1.peek()).append(" ");
                                  stack2.push(stack1.pop());
                          }
                  }
                  
                  return res.toString();
          . 1point 3acres 璁哄潧
          }
回复 支持 0 反对 2

使用道具 举报

 楼主| tianz 发表于 2015-7-21 13:48:18 | 显示全部楼层
excel这题蛮standard
一开始的时候只需要实现insert和get。看网上有很多种解法。比较普遍的是HashMap<Integer, HashMap<Integer, Cell>>. 不过我就直接HashMap<String, Cell>了, String是Cell的名字。比如"A1" -> Cell.
如果输入是行列,就来个leetcode的Excel Sheet Column Number.
然后Cell里存一个integer value,一个fomula,两个ArrayList<String> 一个parents 一个children. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
存parent和children是为了自身value 或formula变更时可以把dependency的value也change掉-google 1point3acres
比如如果Cell是一个formula, formula change就必须把parent里的自己摘掉。
. 鍥磋鎴戜滑@1point 3 acres
其实这个方法有点小白,但是比较容易懂啦--大牛绕道~~
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
后来问如果存String或图片咋办。String其实就像value 是没有dependency的所以很好办
图片也好办。寸hash完的identifier 图片本身存数据库。

反正到后面我很无赖。不管怎么变我都扯到前面design的value和formula上。。。

评分

2

查看全部评分

回复 支持 1 反对 0

使用道具 举报

 楼主| tianz 发表于 2015-7-21 14:43:56 | 显示全部楼层
yhfyhf 发表于 2015-7-21 02:09
恭喜lz!能否透露一下fe engineer和manager都问了什么问题?

fe是bar raiser 在公司呆了2年多。主要让我介绍一个我自己的项目 要把architecture画下来。我觉得重点是对项目非常了解同时是一个相对complicated的项目 最好用到的tech比较多。比如service怎么和前台接,endpoint怎么design,api为什么这么设计,Parallel process在不同情况下效率如何,用了什么caching layer,用什么concurrency framework以及为什么。如果重头来过有什么地方可以提高。另一个重点是表述简单清晰。

评分

1

查看全部评分

回复 支持 1 反对 0

使用道具 举报

donkey423 发表于 2015-7-20 05:39:25 | 显示全部楼层
谢谢分享. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
加油
回复 支持 反对

使用道具 举报

hulahu 发表于 2015-7-20 06:20:39 | 显示全部楼层
bless! good luck
回复 支持 反对

使用道具 举报

yingchal 发表于 2015-7-21 12:38:31 | 显示全部楼层
好样儿的!楼主能具体说说excel这题么?貌似很多地方都看见, 但大家都说得不清楚?这是OO design? 具体要求有哪些啊?
回复 支持 反对

使用道具 举报

maxnima 发表于 2015-7-21 12:56:04 | 显示全部楼层
恭喜楼主,牛人啊,我也想问问excel这道题。
回复 支持 反对

使用道具 举报

 楼主| tianz 发表于 2015-7-21 13:51:33 | 显示全部楼层
yingchal 发表于 2015-7-21 00:38
好样儿的!楼主能具体说说excel这题么?貌似很多地方都看见, 但大家都说得不清楚?这是OO design? 具体要 ...

对的 就是OOD。题目非常Open 你可以想一个框架然后按图索骥~
回复 支持 反对

使用道具 举报

yhfyhf 发表于 2015-7-21 14:09:04 | 显示全部楼层
恭喜lz!能否透露一下fe engineer和manager都问了什么问题?
回复 支持 反对

使用道具 举报

yhfyhf 发表于 2015-7-21 14:09:36 | 显示全部楼层
恭喜lz!能否透露一下fe engineer和manager都问了什么问题?
回复 支持 反对

使用道具 举报

 楼主| tianz 发表于 2015-7-21 14:44:51 | 显示全部楼层
yhfyhf 发表于 2015-7-21 02:09
恭喜lz!能否透露一下fe engineer和manager都问了什么问题?

manager问得类似bar raiser。不过我觉得不同team应该不同。反正我architecture画了2遍。。。扯来扯去就那套。。。
回复 支持 反对

使用道具 举报

yingchal 发表于 2015-7-21 15:39:20 | 显示全部楼层
tianz 发表于 2015-7-21 13:48 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
excel这题蛮standard. 鍥磋鎴戜滑@1point 3 acres
一开始的时候只需要实现insert和get。看网上有很多种解法。比较普遍的是HashMap. 不 ...

感谢~目前为止最清晰的解释!赞!
那reverse words的变种~应该如何approach阿?我目前想到的方法都不是in-place的
回复 支持 反对

使用道具 举报

syxgtsyxgt 发表于 2015-7-21 18:16:07 | 显示全部楼层
lz哪个学校的呀
回复 支持 反对

使用道具 举报

 楼主| tianz 发表于 2015-7-21 18:22:27 | 显示全部楼层
. from: 1point3acres.com/bbs
CMU~ 凑字数凑字数凑字数。。
回复 支持 反对

使用道具 举报

ndhuanhuan 发表于 2015-7-25 05:13:22 | 显示全部楼层
tianz 发表于 2015-7-21 18:22.鏈枃鍘熷垱鑷1point3acres璁哄潧
CMU~ 凑字数凑字数凑字数。。

学校也是厉害。。。
回复 支持 反对

使用道具 举报

sqzqkd 发表于 2015-8-5 01:54:37 | 显示全部楼层
感谢楼主详细的分享,赞offer~!
回复 支持 反对

使用道具 举报

ChrisGates23 发表于 2015-8-14 22:16:57 | 显示全部楼层
请问lz是在加州onsite吗
回复 支持 反对

使用道具 举报

 楼主| tianz 发表于 2015-8-16 08:47:51 | 显示全部楼层
ChrisGates23 发表于 2015-8-14 10:16
请问lz是在加州onsite吗

shi a. (zishu zishu zishu)
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-8 03:33

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表