從2014年4月至今,我即將度過在位元組跳動的第7個年頭,在節前,作為老員工很榮幸受邀參加了公司組織的“老板面對面”座談會,靜距離對話CEO張一鳴,整個程序下來,沒有雞湯也沒有大餅,滿滿的都是干貨,特此在經過公司允許的前提下,進行了一些提煉總結,寫下這篇文章上,分享給諸位奮斗者,希望也能給你在學習和作業當中一些啟發和幫助,

1. 大學時代最重要的三個識訓
2001年我考入了南開大學,起初大學的生活是讓人有點失落的,但慢慢地從安靜樸素的校園和踏實努力的氛圍中,我還是找到了自己的節奏,
大學期間我主要在做三件事情 ,一是寫代碼,因為我是搞技術的;二是看書,看了很多很多書;三是修電腦,基于此自己也有三點識訓:耐心,知識,伙伴,
第一點識訓:耐心
有耐心,能獨處,并基于長期思考做判斷,而不為短期因素所干擾,耐心地等待你設想和努力的事情逐步發生,這對創業來說是非常重要的事情,事實上,你經常想象的很美好,設計的也很完整,你也很努力,但你所期待的事情,經常需要很長時間才能發生,這種耐心,絕對是在南開磨練出來的,
大學的時候我是怎么面對枯燥的生活?人物傳記是非常好的心靈雞湯,我讀了很多人物傳記,如果說有識訓,就是發現那些偉大的人,在沒有成為偉大的人之前,也是過著看起來枯燥的生活,每天都在做一些微不足道的事情,但這些事情最后從點連成線,成就了他們,
我畢業后參與創立了酷訊、飯否、99房、到現在的今日頭條,每一段創業經歷,都挺寂寞的,現在回想,耐心非常重要,不僅是等待的耐心,還要有耐心做深入思考,還要有耐心地找到更多更好的合作伙伴,
第二點識訓:知識
寂寞的大學生活,給了我人生最安靜的閱讀時光,我用別人打游戲、打牌的時間,閱讀了各種各樣的書,或者說亂七八糟的書,包括各個專業的書,包括人物傳記,也有各種境內外的報刊雜志,
當然,那時候,我也有困惑,覺得看的這些東西和思考的問題都很有意思,但在生活中沒什么用,直到后來我進入互聯網行業并開始創業,各種各樣的知識才連成線,幫我理解行業、理解管理,更快地掌握不熟悉的領域,包括如何讓資訊得到更有效率的組織和分發,從而改變各行各業的效率,
2011年,我觀察到一個現象,地鐵上讀報的人、賣報的人越來越少,年扯訓有,年底幾乎沒有了, 同時,2011年是智能手機出貨量的高峰,是2008年、2009年、2010年三年智能手機出貨量的總和,我想,這是資訊傳播介質的變革,手機很可能會取代紙媒成為資訊傳播的最主要載體,又因為人和手機的對應關系,手機隨身攜帶,個性化推薦的需求一定會增加,于是我創辦了今日頭條,
第三點識訓:伙伴
我在讀大學的時候結識了很多優秀的同伴,作為一個不怎么參與集體活動的理工男,怎么保持社交呢?主要靠修電腦和編程建網站……后來,同學聚會,打招呼的方式基本是:hi,你的電腦還是我裝的,我裝過的電腦有幾十臺,當然大部分是女同學……不但要幫忙裝電腦還要經常保修,沒錯,就像你們想象的那樣,修電腦為我帶來了人生重大的識訓——當時的女朋友,現在的太太,
在校園里,我接了不少外包的專案,包括我太太她們系的網站(當然是免費的),因為這門手藝加上兼職,大四的時候,我每月能有超過兩三千的收入,在當時,絕對是土豪,那時候,和同學一起泡實驗室,熬到半夜一兩點,會請大家集體去烤串,一周能吃2-3次,
當時和我吃燒烤的人很多是對編程感興趣,而且志趣相投的同學朋友,有我同一級的,微電子專業的,軟體工程專業的,還有師兄師弟,后來也相繼加入我創辦的公司,成為了我們公司的技術骨干,也是創業伙伴,
2. 創立位元組之前的作業感悟
2005 年,我從南開大學畢業,加入一家叫酷訊的公司,我是最早期加入的員工之一,一開始只是一個普通工程師,但在作業第二年,我在公司管了四五十個人的團隊,負責所有后端技術,同時也負責很多產品相關的作業,
有人問我:為什么你在第一份作業中就成長很快?是不是你在那個公司表現特別突出?其實不是,當時公司招聘標準很高,跟我同期入職的就有兩個清華計算機系的博士,那我是不是技術最好?是不是最有經驗?都不是,后來我想了想,當時自己有哪些特質,
首先,我作業時,從不分哪些作業是我該做的,哪些不是我該做的,我做完自己的作業后,對于大部分同事的問題,只要我能幫助解決,我都去做,當時,Code Base中大部分代碼我都看過,新人入職時,只要我有時間,我都給他講解一遍,通過講解,我自己也能得到成長,
作業的前兩年,我基本上每天都是十二點、一點回家,回家后也編程到挺晚,確實是因為有興趣,而不是公司有要求,所以我很快從負責一個抽取爬蟲的模塊,到負責整個后端系統,開始帶一個小組,后來帶一個小部門,再后來帶一個大部門,
當時我負責技術,但遇到產品上有問題,也會積極地參與討論,想產品的方案,很多人說這個不是我該做的事情,但我想說:你的責任心,希望把事情做好的動力,會驅動你做更多事情,讓你得到很大的鍛煉,
我當時是工程師,但參與產品的經歷,對我后來轉型做產品有很大幫助,我參與商業的部分,對我現在的作業也有很大幫助,記得在2007年底,我跟公司的銷售總監一起去見客戶,這段經歷讓我知道,怎樣的銷售才是好的銷售,當我組建今日頭條招人時,這些可供參考的案例,讓我在這個領域不會一無所知,

3. 創立位元組的初心
我很尊敬Elon Mask ,他不僅創辦了TESLA ,而且還創辦了一家叫Space X的公司,目標是革新太空科技,終極目標是人類能夠在其他星球生活,
Space X現在是全世界第一家私人向太空發射火箭并實作回收的公司,盡管在前沿領域里不斷探索的程序非常艱難,身后甚至連跟隨者都沒有,但Elon Mask一直相信:只要理論上能夠成立,理論上可以做到最好,那就應該去努力實作它,
我特別欣賞這種追求卓越和領先的勇氣,年輕人創業,就是要去創造新的技術,做那些理論上存在但還沒有實作的東西,給世界帶來根本性的進步,創業,有人想的是要賺筆錢,有人想的則是要做件事,我覺得自己是后者,
如果你偶然發現青霉素能消炎,你是先考慮用它去救人還是賺錢呢?應該都是先想到救人,我也是一樣,到了這個時代,有個性化的方式來推薦資訊,我就想把它做出來,
如果我想賣掉這家公司,現在就可以拿到一大筆錢,但我奮斗的目標不是賺錢和享樂,支撐我的是自我實作,希望有更多的創造體驗,更豐富的人生經歷,希望遇到更多優秀的人,
現在的創業環境和以前相比已經非常好了,創業能取得多大的成果,最重要的是,你到底愿意做多大的事情,年輕人關鍵是立志高遠,享受拼的程序,不自滿,不懈怠,要把成功的目標,設定的盡可能遠,
4. 見過的優秀年輕人都具有的五個特點
后來,我陸續加入到各種創業團隊,在這個程序中,我跟很多畢業生共處過,現在還和他們很多人保持聯系,跟你分享一下,我看到的一些好和不好的情況,總結一下,這些優秀年輕人有哪些特點呢?
第一個特點:有好奇心
能夠主動學習新事物、新知識和新技能,我有個前同事,理論基礎挺好,但每次都是把自己的作業做完就下班了,
他在這家公司呆了一年多,但對網上的新技術、新工具都不去了解,非常依賴別人,當他想要實作一個功能,就需要有人幫他做后半部分,因為他自己只能做前半部分,如果是有好奇心的人,前端、后端、演算法都去掌握,至少有所了解的話,那么很多除錯分析,自己一個人就可以做,
第二個特點:對不確定性保持樂觀
比方說,今日頭條剛開始時,我跟大家講:我們要做1億的日啟動次數,很多人覺得,你這家小公司怎么可能做得到呢?如果對此持懷疑態度,就不敢努力去嘗試,只有樂觀的人會相信,會愿意去嘗試,
其實我加入酷訊時也是這樣,那家公司當時想做下一代搜索引擎(最后也沒有做成,只做了旅游的垂直搜索),我不知道其他人怎么想的,我自己覺得很興奮,我確實沒有把握,也不知道怎么做,但當時就去學,就去看所有相關的東西,我覺得最后也許不一定做成,或者沒有完全做到,但這個程序也會很有幫助——只要對事情的不確定性保持樂觀,你會更愿意去嘗試,
第三個特點:不甘于平庸
走入社會后的年輕人,應該設定更高的標準,大學期間的同學、一起共事的同事中,有很多非常不錯的人才,技術、成績都比我好,但10年過去了,很多人沒有達到我當初的預期,
很多人畢業后,目標設定就不高,我回顧了一下,發現有同事加入銀行IT部門:有的是畢業后就加入,有的是作業一段時間后加入,為什么我把這個跟「不甘于平庸」掛在一起呢?因為他們很多人加入,是為了快點解決北京戶口,或者得到買經濟適用房的機會,
如果一個人一畢業,就把目標定在這兒:在北京五環內買一個小兩居、小三居,把精力都花在這上面,那么作業就會受到很大影響,他的行為會發生變化,不愿意冒風險,
如果不甘于平庸,希望做得非常好的話,其實不會為這些東西擔心,這很重要,我說不平庸,并不是專指薪酬要很高或者技術很好,而是你對自己的標準一定要高,也許你前兩年變化得慢,但10年后再看,肯定會非常不一樣,
第四個特點:不傲嬌,要能延遲滿足感
在這里舉個反例:兩個我印象比較深刻的年輕人,素質、技術都蠻不錯,也都挺有特點,我當時是他們的主管,發現他們在作業中deliver(傳遞)的感覺始終不好,
他們覺得其他同事做得不如他們,其實不是:他們確實可以算作在當時招的同事里面 TOP20% ,但他們覺得自己是 TOP1% ,所以很多基礎一點的作業,比如要做一個除錯工具,他就不愿意做,或者需要跟同事配合的作業,他就配合得不好,
本來都是資質非常好的人才,人非常聰明、動手能力也強,但沒有控制好自己的傲嬌情緒,我覺得這和「不甘于平庸」不矛盾,「不甘于平庸」是你目標要設得很高,「不傲嬌」是你對現狀要踏實,
另一個例子是,當時我們有個做產品的同事,也是應屆生招進來,當時大家都覺得他不算特別聰明,就讓他做一些輔助性的作業,統計一下資料,做一下用戶反彈之類,但現在他已經是一家十億美金公司的副總裁,
后來我想想,他的特點就是肯去做,負責任,從不推諉,只要有機會承擔的事情,他總盡可能地做好,每次也不算做得特別好,但我們總是給他反饋,他去了那家公司后,把一個用戶量不足 10 萬的邊緣頻道負責起來,越做越好,由于是邊緣頻道,沒有配備完整的團隊,所以他一個人承擔了很多職責,也得到了很多鍛煉,
第五個特點:對重要的選擇要有判斷力
選什么專業、選什么公司、選什么職業、選什么發展路徑,自己要有判斷力,不要被短期選擇所左右,比如,原先有很多人愿意去外企,不愿意去新興公司,
2006 年、2007年的時候,很多師弟、師妹問我職業選擇,我都建議他們去百度,不要去IBM、微軟,但實際上,很多人都是出于短期考慮:外企可能名氣大、薪酬高一點,雖然這個道理,大家都聽過很多遍,剛畢業時薪酬差三五千塊,真的可以忽略不計,短期薪酬差別并不重要,但實際上,能擺脫這個、能有判斷力的人,也不是特別多,
5. 筆者感悟與分享
在畢業后的第二年,就有幸加入到了位元組跳動這個大家庭,至今馬上就快跨過第7個年頭了,也算是見證了位元組的“滄海桑田”,但同樣對位元組的未來充滿期待,說了這么多,免不了會有人覺得“只是一個馬屁精的自娛罷了,你不會真的以為張一鳴能看你的噶吹吧?”,我只能說有些風景,只有在高處才能看到!
如果真覺得這“雞湯”有點燙口,你喝不下,我這兒倒也有些“干米飯”,您要有心可以咽一咽,自從進入位元組跳動,我就是一直在做Android開發相關的作業,如果你也是一名Android開發者的話,或許能給你一些方法和建議,這些也是我在位元組的這7年的實際作業中,不斷復盤總結歸納出的一套學習方法,接下來做些分享給大家!(主要分享成為一名Android高工,架構師勉強,需要掌握哪些技能和具體的學習筆記DPF)
- 架構師筑基必備技能
目前Android APP開發主流語言就是Java語言,Java語言最大的特性就是提高了軟體的互動可能性,可以說安卓手機幾乎所有應用程式都是利用Java語言來進行撰寫的,
知識要點:
1、深入理解Java泛型
2、注解深入淺出
3、并發編程
4、資料傳輸與序列化
5、Java虛擬機原理
6、高效IO
- 設計思想解讀開源框架
隨著互聯網企業的不斷發展,產品專案中的模塊越來越多,用戶體驗要求也越來越高,想實作小步快跑、快速迭代的目的越來越難,插件化技術應用而生,如果沒有插件化技術,美團、淘寶這些集成了大量“app”的應用,可能會有幾個g那么大,
所以,當今的Android移動開發,不會熱修復、插件化、組件化,80%以上的面試都過不了,
知識要點:
1、熱修復設計
2、插件化框架設計
3、組件化框架設計
4、圖片加載框架
5、網路訪問框架設計
6、RXJava回應式編程框架設計
- 360°全方位性能調優
在不同層次的開發工程師手里,因為技術水平的參差不齊,即使很多手機在跑分軟體性能非常高,打開應用依然存在卡頓現象,
另外,隨著產品內容迭代,功能越來越復雜,UI頁面也越來越豐富,也成為流暢運行的一種阻礙,綜上所述,對APP進行性能優化已成為開發者該有的一種綜合素質,也是開發者能夠完成高質量應用程式作品的保證,
1、設計思想與代碼質量優化
2、程式性能優化
- 啟動速度與執行效率優化
- 布局檢測與優化
- 記憶體優化
- 耗電優化
- 網路傳輸與資料儲存優化
- APK大小優化
3、開發效率優化
- 分布式版本控制系統Git
- 自動化構建系統Gradle
4、專案實戰
- 啟動速度
- 流暢度
- 抖音在APK包大小資源優化的實踐
- 優酷回應式布局技術全決議
- 網路優化
- 手機淘寶雙十一性能優化專案揭秘
- 高德APP全鏈路原始碼依賴分析
- 徹底干掉OOM的實戰經驗分享
- 微信Android終端記憶體優化實踐
- Android框架體系架構
Android框架體系架構(高級UI+FrameWork原始碼) 這塊知識是現今使用者最多的,我們稱之Android2013~2016年的技術,
Android開發者也往往因為網上Copy代碼習慣了而導致對這塊經常“使用”的代碼熟悉而又陌生:熟悉的是幾乎天天在和它們打交道, 天天在復制這些代碼 ;陌生的是雖然天天和這些代碼打交道,但是并沒有深入研究過這些代碼的原理,代碼深處的內涵,
本篇知識要點:
1、高級UI晉升
2、Android內核組件
3、大型專案必備IPC
4、資料持久與序列化
5、Framework內核決議
- NDK模塊開發(音視頻系列)
NDK(Native Development Kit縮寫)一種基于原生程式介面的軟體開發工具包,可以讓您在 Android 應用中利用 C 和 C++ 代碼的工具,通過此工具開發的程式直接在本地運行,而不是虛擬機,
在Android中,NDK是一系列工具的集合,主要用于擴展Android SDK,NDK提供了一系列的工具可以幫助開發者快速的開發C或C++的動態庫,并能自動將so和Java應用一起打包成apk,
本篇知識要點:
1、NDK開發之C/C++入門
2、JNI模塊開發
3、Linux編程
4、底層圖片處理
5、音視頻開發
6、機器學習
- Flutter學習進階
2019 年無疑是 Flutter 技術如火如荼發展的一年,
每一個移動開發者都在為 Flutter 帶來的“快速開發、富有表現力和靈活的 UI、原生性能”的特色和理念而癡狂,從超級 App 到獨立應用,從純 Flutter 到混合堆疊,開發者們在不同的場景下樂此不疲的探索和應用著 Flutter 技術,也在面臨著各種各樣不同的挑戰,
本篇知識要點:
1、Flutter跨平臺開發概述
2、Windows中Flutter開發環境搭建
3、撰寫你的第一個Flutter APP
4、Flutter Dart語言系統入門
…
- 微信小程式開發
微信小程式作為現在比較火的編程開發應用場景之一,深受市場的青睞,這讓不少開發者眼饞不已,但是對于初學者來說,就完全摸不著頭腦了,不知道微信小程式開發制作需要學習那些知識,有需要的朋友可以參考本篇,
本篇知識要點:
1、小程式概述及入門
2、小程式UI開發
3、API操作
4、購物商場專案實戰
- Android相關原始碼解讀
只要是程式員,不管是Java還是Android,如果不去閱讀原始碼,只看API檔案,那就只是停留于皮毛,這對我們知識體系的建立和完備以及實戰技術的提升都是不利的,
位元組跳動期待優秀的你的加入,需要以上學習筆記的同學,可以 點贊+評論“學習” 后,點擊此處快速獲取!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/261862.html
標籤:其他









