刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

特殊時期,字節跳動 2020 春招所有崗位全流程在線筆試、視頻面試,支持受疫情影響地區的同學協商入職日期,甚至遠程入職在家辦公

除了政策便利,公司超高的實習轉正比例也誠意滿滿——字節跳動 2019 年秋招數據顯示,實習生轉正比例高達 78%,其中研發實習生轉正比例更是達到 81%

機會多多,但同學們面對筆面試也難免有焦慮:

聽說字節跳動研發崗的筆面試“宇宙最難”?

leetcode刷題至少300道,才能不在字節筆面試中“失去尊嚴”?

看過不少筆面經,但線上還是第一次啊!

......

為此,我面試後還找字節跳動研發筆試出題人

研發面試官,替大家問了10個最關心的問題,希望能幫助同學們從容拿到offer!

先分享下面試題

本人21屆渣本,專業軟件工程。3.22參與筆試,三月底約了4.03面試。

一面

•做自我介紹,問學校開了哪些課程,現在是否還在上專業課?在上什麼課?

•寫一個sql找出每門課成績最高的學生的學號

•一個有重複數字的有序數組,找到指定數字第一次出現的位置,返回下標,怎麼優化?

•找到一個鏈表的倒數第二個元素、n/2位置的元素、n/k位置的元素

•兩個杯子容量為9和4,怎麼能量出7升水?共可以量出哪些數?

•以上問題不代表順序,並且還有幾個問題記不清了……

一面結束後面試官說馬上會有二面讓不要下線…

二面

•做自我介紹

•簡歷上的項目,選一個說說遇到的問題,怎麼遇到的,怎麼解決的。(先說了真正投入使用了的學校oa系統)

•你說優化了sql,怎麼優化的,你是怎麼發現這個問題的,又是如何確定優化方案的。

•你說重新設計了表格導出功能,怎麼做的,為什麼這麼做

•(感覺面試官不太滿意)趕緊說這個項目遇到的業務問題比較多,另一個項目裡遇到的技術問題比較多

•那簡單說一下你那個遊戲項目的業務邏輯,說說遇到了什麼技術問題(說了一下遇到的併發訪問帶來的線程安全問題,說了解決方案)

•你這個方案可以在單機上解決,假如說你做了擴展,現在是集群了,怎麼做?(說了一下可以用redis單進程單實例的特點去解決),然後問了幾個redis的api

•問幾個基礎問題,hashmap瞭解吧,put是什麼原理。為什麼說hashmap線程不安全,併發場景會出現什麼問題?

•reentrantlock原理,和synchronized有什麼區別

•zk實現分佈式鎖原理是怎樣的,redis做分佈式鎖瞭解嗎,setnx的方案有什麼問題怎麼解決。瞭解過開源實現嗎(紅鎖)

•寫個鏈表反轉吧

•平時怎麼學習的,讀過哪些書?讀這些書有什麼收穫?

•你還有什麼要問我的嗎

字節跳動的面試官非常尊重人,如果有問題答得不好會給提示和引導。並且說話十分隨和,非常nice!面試完就覺得能去工作的話簡直太好了。許願offer➕1。

好了好了給大家分享下我的面試心得啊

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

筆試出題人:我出的題真的不難啊!

Q1 據說字節跳動的筆試非常難,一共有幾道題,難度分佈是怎樣的,應該如何分配作答時間?

首先,真的不難。真的。

一般來說,每套筆試題是由1個簡單難度題目、2箇中等難度題目及1個較難的題目構成,部分崗位方向還有選擇題。單道題的代碼量也有控制,一般在100行以內。

因為每道題的分數相同,所以建議將自己有思路的題目完全做對後,再去攻克其他題目。

Q2 題目的來源是哪裡?

題目一般是內部出題人針對常見的數據結構和算法進行包裝和引申,核心考點是來自於大學課本以及ACM/ICPC競賽裡的簡單題,也可能從具體業務問題抽象出筆試題。

但萬變不離其宗,知識點是(相對)有限的,但是具體的題目可以有無數變化。

Q3 常見的考點有哪些?

每道筆試題都會有一個或幾個關鍵的考察點,這個考察點也許是某種數據結構,某種算法,或者是某種思維模式,但通常不會直白地給出這個考察點是什麼,而是會給一個規定情境,或者講一個小故事,需要候選人第一步做的就是脫掉題目的“馬甲”,識別出考點。

常見考點有:

  • 某種數據結構以及相關的操作:二叉樹、鏈表、(多維)數組等
  • 某種編程思想:二分、分治、貪心、搜索、動態規劃等
  • 找規律:數學性質、遞推公式
  • 純編碼:邊界條件、邏輯完備性

Q4 筆試是如何判卷的?如何作答通過筆試幾率更大?

筆試是自動化判卷,根據跑通case的比例打分。需要保證可編譯運行及結果準確性,部分題目有性能要求,要注意算法優化。

在算法能力相同的情況下,調試能力更好的同學會獲得更高的分數。有些題目可能不止一種做法,針對不同規模的test cases,可以採用不同的策略去拿到更多的分數。

Q5 筆試前應該如何準備,有沒有學習資源推薦?

短期靠刷題,長期靠積累。

刷題:無論多麼厲害的程序員,在面試前期也會瘋狂的刷面試題(文末分享小編的面試題)

積累:完善自己的數據結構和算法知識,將大學的《數據結構和算法》這門課學通之後,再征服《算法導論》這座大山,再輔以《數論》等數學知識,你將在筆試中無往不利。

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

面試官:我到底要問你什麼?

Q1 視頻面試和現場面試有什麼區別,視頻面試應當如何準備?

整體不會有太大差別。

視頻面試其實比現場面試有優勢。視頻面試往往會在線coding,用電腦寫代碼總比手撕代碼更方便。一場視頻面試的時間是有限的,建議大家提升編碼速度和調試能力,編碼需要又快又好,同時也需要注意編碼風格、完整性和異常處理,才能給面試官留下深刻印象。

劃重點了哦:在線回答問題或者coding時,面試官可以看到你的切屏操作,所以不要有僥倖心理,如果需要查閱API等文檔,可以和麵試官溝通。偶爾出現信號不好等問題,保持穩定心態就好。

Q2 簡歷上的項目經歷,面試官常問什麼?實習經歷是否重要?

面試官會比較關注候選人對項目經歷、自己核心的貢獻總結,基本原則是“呈現在簡歷上的項目經歷,一定要保證瞭解細節”。

針對項目經歷,一般會深挖的問題是:

  • 你能跟我講講你是怎麼做這個項目的嗎?
  • 你承擔的責任是什麼?
  • 為什麼你要這麼做?
  • 遇到困難怎麼解決?

問這些都是為了發現你的亮點,譬如:

  • 是否有合理、成熟的架構設計
  • 能否清晰、有條理的講解,對所解決問題完整的認識
  • 對一些工具的熟練應用和理解
  • 踩坑經歷,trouble-shooting的能力等

有實習經歷或者項目經歷,都是不錯的加分項,但實習經歷並不比項目經歷更重要。請向面試官多表達自己在實習經歷中學到的知識經驗、核心貢獻,而不是做的事。

Q3 面試的側重點是什麼?不同崗位有什麼不同?

字節跳動面試的指導思想是:“老司機更看重實戰與架構,新警察多關注基礎和潛力”。

所以校招同學的基礎是最為看重的:基礎知識與工程能力、算法與數據結構、網絡、操作系統、編程語言。

針對測試方向的崗位,會更加重視對測試用例設計和溝通能力的考核,主要目的是為了挖掘更適合候選人的方向。

針對大數據方向的崗位,也會對有大數據相關項目經歷和背景的同學,考察大數據的基礎知識和架構的設計能力。

Q4 哪些表現能讓面試官眼前一亮?

做題前,有好的交流,確保自己完全理解題意,有出色的理解能力,邏輯清晰,舉一反三,大家都喜歡和這樣的人交流,輕鬆高效。

做題時,能與面試官互動,最亮眼的絕對是超強的硬實力,編程又快又好,知識又廣又深,專治一切花裡胡哨。

做完題目後

,有對自己的程序的測試。能在最後的提問環節,提出有深度的問題。展現出自己的自驅精神和積極性,通常表現為對曾經做過的事情持續學習和反思,對面試的崗位和公司有充分的準備等。

Q5 “你還有什麼想問我的嗎?”建議同學該如何回答?

面試官其實很期待能和候選人互動。

建議不要看“不靠譜”的面經,少一些套路,多一點真誠,問你真實感興趣的問題就好,在這個環節追求“出彩”,作用真的不大。

最後

想對同學們說,打好基礎,系統學習,才能從容面試。厚積薄發永遠是王道,祝大家順利!

8 年的快速奔跑,字節跳動已經成為了服務全球用戶的大平臺,今年全球員工人數也將達到 10 萬人,字節跳動等待你的加入呀!

以下字節跳動面試題的部分參考答案。

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

小弟為各位大哥準備了幾份面試寶典:

  • 一份是技術乾貨《Java核心知識點整理》
  • 一份是面試真題《1000道互聯網Java工程師面試題》
  • 面試寶典《互聯網Java工程師面試題大全》
  • 轉發+關注,私信回覆【面試】即可獲得免費領取方式。

Java核心知識點整理

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

1000道互聯網Java工程師面試題

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

互聯網大廠面試寶典

刷題至少 300 道,才能在字節筆面試中“保住尊嚴”?為你解析

面試題答案,獲取方式

關注+回覆關鍵詞 【面試】即可獲取~

重要的話說三遍,先轉發,轉發,轉發,然後私信才可拿到參考答案哦!


分享到:


相關文章: