我从外包辞职了,10000小时后,走进字节跳动拿了offer
前言:
沒(méi)有絕對(duì)的天才,只有持續(xù)不斷的付出。對(duì)于我們每一個(gè)平凡人來(lái)說(shuō),改變命運(yùn)只能依靠努力+幸運(yùn),但如果你不夠幸運(yùn),那就只能拉高努力的占比。
2020年7月,我有幸成為了字節(jié)跳動(dòng)的一名Java后端開(kāi)發(fā),正如標(biāo)題所說(shuō),我從外包辭職了,10000小時(shí)后,走進(jìn)字節(jié)跳動(dòng)拿下了offer。相信同行都清楚,從外包進(jìn)大廠有多難,運(yùn)氣之余,也離不開(kāi)我自己的腳踏實(shí)地,所幸每踏出的一步都留下了厚厚的腳印。
下文內(nèi)容涉及到:面試題(含答案)+學(xué)習(xí)筆記+電子書(shū)籍+學(xué)習(xí)視頻, 喜歡的朋友點(diǎn)贊支持一下。A:字節(jié)跳動(dòng)IES互娛面試經(jīng)歷還原(抖音后臺(tái))
<1> 字節(jié)跳動(dòng)抖音4面面試題
因?yàn)槲覀€(gè)人有復(fù)盤(pán)的習(xí)慣,所以在面試字節(jié)跳動(dòng)時(shí),基本是做到了每一輪結(jié)束就把面試題給總結(jié)出來(lái),當(dāng)然總結(jié)出來(lái)的可能跟實(shí)際情況有細(xì)微出入,但相差不大,基本上是我記憶里的極限。
Java部分:
- synchronized,lock,AtomicInteger底層原理
- HashMap,ConcurrentHashMap底層結(jié)構(gòu)原理
- 講講服務(wù)注冊(cè)于發(fā)現(xiàn)(這部分主要講了springcloud eureka 和部分 zookeeper,zookeeper的選舉機(jī)制)
- Spring AOP 的實(shí)現(xiàn)方式,siglib 能否代理final修飾的類(lèi)?
- JVM垃圾回收過(guò)程,并詳細(xì)講一種垃圾回收器
- 強(qiáng)引用,軟引用,弱引用,虛引用應(yīng)用場(chǎng)景
計(jì)算機(jī)網(wǎng)絡(luò):
- 擁塞控制和流量控制
- 快重傳和超時(shí)重傳
- 為什么四次揮手后客戶端等2MSL
- DNS解析全過(guò)程
- http2.0,http3.0
- https的連接過(guò)程
- CA證書(shū)的驗(yàn)證過(guò)程
- RPC框架了解嗎?
- 如何設(shè)計(jì)基于udp的可靠傳輸?
- tcp如何保證數(shù)據(jù)安全性的?磁盤(pán)如何保證數(shù)據(jù)不丟的?
操作系統(tǒng):
- 阻塞io和非阻塞io
- 進(jìn)程和線程區(qū)別,通信方式分別是什么?
- 虛擬內(nèi)存和物理內(nèi)存
- linux 按 ctrl + c 中斷的原理
- 協(xié)程高效在哪?
MySQL:
- Innodb,B+樹(shù),聚簇索引和非聚簇索引區(qū)別
- 一千萬(wàn)條數(shù)據(jù),問(wèn) b+樹(shù)大概多高?
- 為什么用b+樹(shù)而不是 b樹(shù),紅黑樹(shù)?
- 在設(shè)計(jì)聯(lián)合索引時(shí)需要注意什么?
- 聯(lián)合索引最左原則的底層原理
- mysql 的 MVCC 以及是否解決幻讀?
- 手寫(xiě)sql,實(shí)現(xiàn)一個(gè)按時(shí)間降序的分頁(yè)查詢
- redo log,bin log,undo log
Kafka:
- kafka的rebalence
- ISR
- 如果新加進(jìn)一個(gè)消費(fèi)者會(huì)發(fā)生什么?
- 如何保證數(shù)據(jù)一致性?
Redis:
- RDB和AOF區(qū)別
- 為什么RDB 要 fork子進(jìn)程而不是線程?
- redis基本數(shù)據(jù)類(lèi)型
- zset的底層數(shù)據(jù)結(jié)構(gòu),跳表何時(shí)增加高度?
- 分布式 redis,緩存和數(shù)據(jù)庫(kù)讀寫(xiě)不一致,答的延遲雙刪
- 面試官讓隨便講講redis,所以還說(shuō)了緩存穿透,擊穿,雪崩以及處理方法
場(chǎng)景題和智力題:
- 打字的智能提示和糾錯(cuò)的原理,讓你來(lái)設(shè)計(jì),你怎么做?
- 如果有一個(gè)訪問(wèn)過(guò)的所有網(wǎng)站的記錄集合,如何快速判斷當(dāng)前網(wǎng)站是已經(jīng)訪問(wèn)過(guò)?(考慮布隆過(guò)濾器)
- 從一個(gè)網(wǎng)站下載的時(shí)候,進(jìn)度條如何實(shí)現(xiàn)的?
- 64匹馬,八個(gè)賽道,問(wèn)至少跑多少次能找到最快四匹馬?
- 操作系統(tǒng)給你一塊空閑內(nèi)存,你如何設(shè)計(jì)使用和回收?
手撕代碼:
- 柱狀圖中矩形最大面積 leetcode 84
- 查找第k小的數(shù),用堆以外的方法做
- 給m個(gè)房子涂n種顏色,相鄰房子不同色,cost[i][j]表示給i號(hào)房子涂j顏色代價(jià),求最小上色總成本。(LeetCode原題)
其他:(HR和Leader都問(wèn)了一些開(kāi)發(fā)性問(wèn)題)
- 你認(rèn)為遇到過(guò)最大的挫折是什么?怎么解決的?
- 職業(yè)規(guī)劃
- 對(duì)字節(jié)跳動(dòng)的認(rèn)識(shí)
- 你認(rèn)為字節(jié)是一家年輕的公司嗎?年輕是核心競(jìng)爭(zhēng)力嗎?
- 你有沒(méi)有崇拜的人
- 不考慮公司地理因素,最想要去哪個(gè)城市工作?
- 平時(shí)的興趣愛(ài)好?
- 喜歡寫(xiě)博客嗎?看什么書(shū)?
贈(zèng)送我的刷題題庫(kù)(1:BAT一線大廠面試真題)
<2> 字節(jié)跳動(dòng)面試總結(jié)(一些心得和小建議)
B:我為什么想要去字節(jié)跳動(dòng)?(字節(jié)跳動(dòng)的優(yōu)勢(shì))
①福利待遇
我不是hr,也不是給字節(jié)打廣告,這里真的要提一下字節(jié)跳動(dòng)的福利待遇絕對(duì)是一線廠子里數(shù)一數(shù)二的。加上我是外包出身,這種待遇給我造成的落差感就更明顯,讓我覺(jué)得能夠進(jìn)字節(jié)跳動(dòng)工作算是我最大的幸運(yùn)了。
至于福利待遇,這里隨便提及幾點(diǎn):
②巨大的知識(shí)庫(kù)
字節(jié)跳動(dòng)對(duì)于我來(lái)說(shuō),算是一個(gè)巨大的知識(shí)庫(kù),之所以這么說(shuō),從面試的流程及細(xì)節(jié),到后來(lái)我入職之后工作上面的安排,都讓我有不一樣的觸動(dòng)。從這幾方面,我們都能夠感受到公司對(duì)于員工的職業(yè)規(guī)劃非常重視,你的主管和導(dǎo)師都會(huì)主動(dòng)去找你溝通這方面的,這對(duì)比我之前的外包,是截然不同的地方。而在這個(gè)交流過(guò)程中,我獲得到的,不是一星半點(diǎn)。
最讓我佩服的是,字節(jié)有統(tǒng)一的入口可以導(dǎo)航到海量的指南和知識(shí)沉淀,甚至是其他各個(gè)產(chǎn)品線整理的技術(shù)和業(yè)務(wù)文檔等等。
③我看到了認(rèn)同
來(lái)到字節(jié),我看到了認(rèn)同,收獲了歸屬感。字節(jié)跳動(dòng)雖然年輕,但在做事上有共同一致的目標(biāo),這里的人講“字節(jié)范兒”,它不是條條框框的束縛,它是一種精神食糧,實(shí)質(zhì)是一種價(jià)值認(rèn)同。恰好,擁有同一種價(jià)值認(rèn)同的人走到了一起。
④雖辛苦,但不感覺(jué)累
字節(jié)跳動(dòng)是一家非常年輕化的公司,對(duì)于一線的互聯(lián)網(wǎng)公司來(lái)說(shuō),996是常態(tài),字節(jié)跳動(dòng)也脫離不開(kāi)“加班”二字。但是字節(jié)給我最大不同的感受是,忙碌且生機(jī)勃勃。在字節(jié)工作一段時(shí)間了,我也算是跟上了這里的節(jié)奏,雖然辛苦,但我卻一點(diǎn)也不感覺(jué)累,因?yàn)樵诔鋵?shí)的工作環(huán)境中,我是有所收獲的,在公司野蠻生長(zhǎng)的同時(shí),我個(gè)人也得到了快速的成長(zhǎng)。
另外,別以為一線大廠的“打工人”只會(huì)死工作,字節(jié)人最大的特點(diǎn)就是年輕,他們同樣會(huì)玩,每個(gè)人都有自己的愛(ài)好,騎行、狼人殺、健身、攝影、瑜伽等等,這與我之前對(duì)大廠人的印象顯然不同,我也一點(diǎn)一點(diǎn)在慢慢被影響著。
⑤反思:關(guān)注工作效率
以前覺(jué)得自己的工作效率和時(shí)間管理做得還不錯(cuò),至少能拿出時(shí)間做一點(diǎn)大家想做卻沒(méi)有做的事情,但現(xiàn)在才發(fā)現(xiàn)這也許只是錯(cuò)覺(jué),你總做容易的事情,當(dāng)然不會(huì)感覺(jué)到時(shí)間的壓力,即便是項(xiàng)目進(jìn)度比較緊的時(shí)候,加加班,搞搞996似乎也就那么回事。我們通常都會(huì)愿意延長(zhǎng)時(shí)間,而不是考慮如何提高效率,在同樣的時(shí)間內(nèi)完成更多的工作,當(dāng)然也有很多不言自明的客觀原因。
來(lái)字節(jié)后,我才從身邊同事的工作細(xì)節(jié)中看到了什么才是“效率”。
C:外包教了我什么?(積累了什么?)
很多人認(rèn)為在外包學(xué)不到什么東西,但我卻不這么認(rèn)為,無(wú)論你身處什么環(huán)境,造成什么樣結(jié)果的人都是你自己。所以,在外包工作的這些年,我并不是單一的機(jī)械化敲代碼,在這個(gè)過(guò)程中,我會(huì)主動(dòng)地去復(fù)盤(pán),去總結(jié),去學(xué)習(xí),而慢慢積累的工作方式才鑄就了我今天的“質(zhì)變”。
在外包中,我積累到了什么?
在外包中,我復(fù)盤(pán)了什么?做了哪些總結(jié)?(寫(xiě)了一些博客,做了一些筆記總結(jié),附下PDF)
- Java架構(gòu)成長(zhǎng)筆記
- Redis核心技術(shù)筆記(學(xué)習(xí)總結(jié))
- Spring全家桶學(xué)習(xí)筆記(SpringBoot+SpringMVC+SpringCloud+源碼等)
- 其它
D:下一個(gè)3年如何規(guī)劃?
1.確定發(fā)展方向
程序員生涯大致分為五個(gè)階段:
- 第一階段:2-3年,初級(jí)程序員
- 第二階段:3-5年,中級(jí)程序員
- 第三階段:4-7年,高級(jí)程序員
- 第四階段:5-8年,互聯(lián)網(wǎng)架構(gòu)師,大數(shù)據(jù)工程師
- 第五階段:8年+,技術(shù)總監(jiān),技術(shù)主管,首席架構(gòu)師
目前,我處于第二階段,有一定的工作經(jīng)驗(yàn),可以獨(dú)立做一些項(xiàng)目,也有自己的代碼習(xí)慣,甚至在團(tuán)隊(duì)中我也可以擔(dān)任重要的角色。而日后的1-2年內(nèi),我肯定是要往三階段過(guò)渡,甚至是四階段過(guò)渡。
2.梳理學(xué)習(xí)路線
想要快速成長(zhǎng),一條合理且正確的學(xué)習(xí)路線才是最為重要的,所以梳理學(xué)習(xí)路線,是我目前學(xué)習(xí)上最重要的事情。(個(gè)人梳理的學(xué)習(xí)路線圖如下)
目標(biāo):能夠獨(dú)當(dāng)一面,在專(zhuān)業(yè)領(lǐng)域具備輔導(dǎo)他人的能力
學(xué)習(xí)內(nèi)容:并發(fā)編程與JVM實(shí)戰(zhàn)+緩存中間件+消息中間件+搜索中間件+高并發(fā)+高可用+搞擴(kuò)展+網(wǎng)絡(luò)通信與協(xié)議+分布式與微服務(wù)+分布式權(quán)限控制+微服務(wù)熔斷降級(jí)與限流+微服務(wù)鏈路追蹤+底層&源碼深入解讀+一線大廠分布式場(chǎng)景實(shí)戰(zhàn)
3.學(xué)習(xí)方法
我個(gè)人的學(xué)習(xí)方法很簡(jiǎn)單,利用碎片時(shí)間進(jìn)行系統(tǒng)性的學(xué)習(xí)。關(guān)于學(xué)習(xí)方法,我個(gè)人喜歡閱讀書(shū)籍文檔結(jié)合視頻的方式,對(duì)于這些我自己個(gè)人也有一些整理。
- 閱讀書(shū)籍文檔:
- 看視頻學(xué)習(xí):
結(jié)尾:未來(lái)愿景及祝福
我知道,對(duì)于一些學(xué)歷沒(méi)有優(yōu)勢(shì)的人來(lái)說(shuō),外包是別無(wú)選擇,但是未來(lái)的路究竟要怎么走,取決你的步子邁多開(kāi)。每個(gè)人都有自己的選擇,如果你喜歡穩(wěn)定,那按部就班適合你,但你有想法,不甘平庸,那就別讓外包埋沒(méi)了你。
最后,希望未來(lái)的我發(fā)展順利,早日拿下p7!同樣,也祝愿你實(shí)現(xiàn)自己的人生理想,愿我們都越來(lái)越好,共勉!
需要文章中提到的面試題、筆記、電子書(shū)、學(xué)習(xí)視頻,可以點(diǎn)贊支持一下。
總結(jié)
以上是生活随笔為你收集整理的我从外包辞职了,10000小时后,走进字节跳动拿了offer的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 生活随记 - 如何教育孩子理财
- 下一篇: 这款工具可以轻松让 Matplotlib