查看: 1537| 回复: 3
跳转到指定楼层
上一主题 下一主题
收起左侧

[实习] Nest 實習電面分享

全局:

2018(1-3月)-CS硕士+fresh grad 无实习或全职 | 内推| 码农类General实习@nest

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
很幸運的能夠拿到 Nest 的 internship offer,有鑒於地裡比較少關於 Nest 的資訊,因此想把自己的面試過程回饋給地裡。由於小弟我是轉專業的,出國前沒有太多寫程式的經驗,在上學期也是一個面試都沒有。也希望藉著這篇文章稍稍鼓勵一下轉專業跟還在找實習的夥伴們。也希望覺得這篇文章有幫助的朋友,幫忙加個米,感謝


timeline-baidu 1point3acres
======
12/11/2017 請朋友內推
1/26/2018 收到面試邀請. .и
2/12/2018 一面
2/22/2018 二面
2/26/2018 offer extended via email


一面. ----
======
給一個 doubly linked list,以及一個裝有 node 的 array。前後能夠連接起來的 node 算成一個 block,總共有幾個 block?

           a            b               c             d            e             f
        +---+      +---+        +---+      +---+      +---+      +---+
        |      |<-->|    |   <-->|    |       |      |     |     |       |     |   
        +---+      +---+        +---+      +---+      +---+      +---+
          ^             ^               ^                         ^
          |               |                |                          |
          +             +               +                         +
           [-------------------------]                         [-----]
                1st block                                  2nd block

. .и
e.g. 在 array 裡可能給你的是 [b, e],因為 b 可以往前各走到 a, c,因此 (a, b, c) 算一個 block;e 只有自己,(e) 算一個 block。因此總共兩個 block

這題其實不難想,是一個 dfs 的簡單題目,只是用 doubly linked list 包裝起來而已。記得用合適的 data structure 去記錄走過的點就可以得到最佳解了。
我 dfs 寫完後,因為一面的前一天晚上剛好寫到哩扣漆參漆,我就跟面試官說這題似乎可以用 union-find 解。跟面試官大家說了一下我的想法,他覺得滿有趣的,就叫我寫看看。
寫的過程中有一個小 bug 讓面試官幫我指出來,寫完後面試官叫我分析了一下時間複雜度,而這個算法複雜度比第一個還高,還是第一個比較好。寫完之後問了一下面試官問題就結束了。

二面
=======

這輪的面試官就比較嚴肅,不苟言笑。上來先請我介紹自己,接著抓著 resume 往下問:分享一個最近的 project、用了什麼技術、想解決什麼問題、做了哪些 optimization 等等。過程大概 15 分鐘左右,接著開始 coding exercise。

哩扣參肆零

一開始聽到面試官描述題目,想說遇到原題很開心,之後發現是這題的變形。原題是給定一個 string,但面試官改成如果今天是一個一個 character 丟給你,你該怎麼設計。可以想像有個 crawler 在爬一篇新聞或雜誌,它會一直爬一直吐 character 給你的 function,因此你的 service 是要禁的起一直被 call 的。所以在 performance 上跟 memory 上都要考慮

這題我其實沒有答的很好,因為我還是以原題的思維下去想。之後面試官應該是有點看不下去了,就開始給我提示並且提供幾個例子給我看。我其實過程中也是沒有很懂,最後就說可以用一個 list 去紀錄每個 character 出現的 index,然後如果在 current character 發現超過 k distinct characters,那就從頭開始刪。面試官就回答 it may work,然後就結束了....整個過程沒寫幾行 code...


心得
=======
Nest 電面是我第一個 serious coding interview,之前的都比較著重在 behavior question 跟 resume。面試過程中其實整體算很舒服,面試官也會適時地跟你討論跟幫你指出小錯誤,感覺真的很像在一起解決一道問題。我原本已為我應該是跪了,因為二面真的是表現得沒有很好,所以最後收到 offer 真的有點意外。我因為二面過程中沒有掌握得很好,有跟面試官說了我應該可以做得更好之類的話,面試官就說:you did just fine, and actually I don't expect you can solve this question within 30 minutes. You have tried to nail this down and gave me a possibile solution, which is great. 因此,我覺得除了真正把 code 寫的 bug free 之外,良好的溝通以及快速的反應也是很重要的。

今年找實習的情勢真的是很辛苦,身邊很多比我厲害的人仍然在努力,我是真的很幸運。找實習的過程中,有種感悟是:拿到面試機會,比面試本身還難。不過我相信只要努力,最後一定會有好結果。大家加油!

评分

参与人数 1大米 +3 收起 理由
mk48 + 3 给你点个赞!

查看全部评分


上一篇:求问:new grad找front-end需不需要刷题
下一篇:求问IBM cognitive SWD intern Coding challenge相关
🔗
Fly365 2018-3-7 04:15:47 | 只看该作者
全局:
第二题我觉得可以keep一个k个不同的character长度的deque, 在tail端加入新数据,在head端删除不需要的
回复

使用道具 举报

全局:
第二题 sliding window的话应该是可以handle 一个data stream 的吧
回复

使用道具 举报

全局:
求问两轮是烙印的manager嘛??
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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