俗話說,
不想當 CTO 的技術開發,不是好程式設計師。
誰不想當一個“技術大牛”?誰不想年紀輕輕“年薪百萬”?
但“夢想美好,現實殘酷”,多少人實際工作中做的事,跟大牛根本不沾邊,常年忙於業務程式碼,究竟該如何成長?
記住 3 個原則:
“積累經驗、拓展視野、深度思考”
。具體做法:
第一:就是紮實核心基本功
:
俗話說初級程式設計師比招式,高階程式設計師看內功。像演算法、作業系統,這種能從 0 到 1 真正鍛鍊底層能力的知識,花多少時間啃下都值得。
第二:足夠的技術修養;
這是區分架構師和“碼農”的關鍵點。
英語:技術高手必須攻克,最簡單的方法,每天在 YouTube 上看 5 分鐘影片;
掌握提問的智慧;
寫程式碼的修養,一定要 Code Review;
具備安全防範意識,尤其近期漏洞頻發,安全問題,字少事大;
在工作中,既具備技術整合能力,也通曉技術細節,從而實現技術驅動業務的突破。
第三:軟實力也很重要:
深度學習、歸納和堅持實踐的能力;
Talk 和 Code 同樣重要,有效的溝通是事業成功的必要條件;
技術管理能力,“帶團隊”從來不是一個可選項,而是遲早都要面對的事;
當然,最高效的學習方式,就是跟技術大牛深度對談。
生活可以一地雞毛,但作業系統卻是心中的光”
——“計算機鬼才”彭東“
作業系統作為所有軟體的基石,我們常用“靈魂、大腦、核心”等詞來形容,可以說是
程式設計師必修內功
,能直接解決我們工作中的問題,比如 Linux 核心相關的技術,中斷、I/O、網路、多執行緒、併發、效能、記憶體管理、系統穩定性、檔案系統、容器和虛擬化等等,都與之相關,可以說是漲薪、晉升的必考項。
學作業系統,
關鍵不是死看書,而且要嘗試“從 0 到 1 寫一個作業系統”
,你會對作業系統的理解有質的飛躍。
在我看來,最合適的學習路徑就是
「練習實踐 應用實際 開發實踐」
。
在此基礎上,掌握「作業系統知識體系」,建議收藏:
跟著實踐下來,作業系統架構設計能力會大幅提升,還可以學到系統級別的軟體程式設計技巧,這對我們拓展技術深度和廣度是大有裨益的。
對於技術人來說,只有不斷升級自己的認知,才能讓你的技術之路行穩致遠。
訂閱價129 元
超級會員免費學
“家長一直逼婚,怎麼用演算法儘快確定合適的結婚物件”
—— 前 Facebook 工程師 覃超
無論是阿里巴巴、騰訊、百度這些國內一線網際網路企業,還是 Google、Facebook、Airbnb 等矽谷知名網際網路公司,在招聘工程師的過程中,對
演算法和資料結構能力
的考察都是重中之重。
很多求職者在面試前都會在 LeetCode 網站上做大量練習,但現在 Leetcode 上面已經有上千道題了,該怎麼高效刷題呢?
學習資料結構和演算法的正確姿勢:三位一體練習法
“三位”指三個要點:
要點一:快速過所有演算法知識點,串成知識體系
要點二:學以致用。練習時,要按照知識體系,有組織、系統性的做題。
要點三:刷題也要過遍數
“一體”指“五遍刷題法”:
第 1 遍刷題:讀題加思考、直接看解法。
第 2 遍刷題:把好的解法自己背誦、默寫完之後,開啟 Leetcode,馬上開始自己寫解法並且提交。
第 3 遍刷題:完成了第一遍、第二遍刷題後,24 小時候之後可以再來一遍。
第 4 遍刷題:是一週之後再來練習相同的題目。
第 5 遍刷題:在你面試前的一個月或者一週進行恢復性訓練(第五遍)就可以了。
訂閱價 129 元
超級會員免費學
專欄裡有不少我是認真看完的,專欄內容可以說是一些經典書籍和這些專欄作者經驗結晶,強烈推薦。
而且你千萬千萬千萬不要錯過留言區,這裡面的精華可太多了,全是課代表幫忙總結好的東西。你能看到很多同行在這裡交流、學習、碰撞。
剛好極客時間最近推出了
499/ 年的超級會員:197 個專欄直接看(未來新上線的專欄,只要有會員免費標識也能看),像是其他每日一課影片、大廠案例影片更是隨便搜尋、隨便看。
如果把 APP 內的這 190 多門課程和專欄全部加起來,
按照以往單價,總價達到了 3 萬多。
而現在,
一個會員只要 499,一次性拿下課程和專欄。
說實話,這個方案算是很良心的。畢竟 499 可能以前只能買幾個專欄。
過去一年多,我在上面學到了很多東西,這裡跟你們說幾個我覺得適合小夥伴們學習的課程(也是一個學習路徑),親測有效。
首先,是關於基本功的。
我相信,很多小夥伴已經意識到基礎知識的重要性,知道要夯實基礎,才能走得更遠,基礎知識會潛移默化地、間接地
提高你對技術的理解。
組成原理
這裡推薦 bothub 創始人徐文浩的《深入淺出的計算機組成原理》,這個課程可以說是我在極客時間學習,收穫最大的課之一。專欄透過實際場景 + 開發案例,講解組成原理的核心知識,透過 100+ 詳解圖,把複雜問題簡單化。作者徐文浩,確實很厲害,非常“會講”,能把枯燥無聊的原理,講得清晰透徹,還充滿了魔力。目前 2 刷完畢,真是常看常新,時時有收穫。
其次,是關於程式語言
對技術人來說,我們不可能和一種程式語言“廝守終生”,往往有各種原因要去了解其他的程式語言,可能是為了
完成專案、提高工作效率,
又或者想多學門手藝、搞錢,還可能出於興趣、想拓展視野、提高
技術敏銳度
等等。
Go 語言
作為
雲原生必備語言
,大廠的“高薪”寵兒,Go 在這些年真是吸引了不少開發者的目光。不過,Go 入門的資料網上不少,
關於 Go 進階
,難點是很多人缺乏一線專案練手,以及嘗試從 0 到 1 開發一個 Go 專案。
這裡給大家推薦孔令飛的
《Go 語言專案開發實戰》。專欄透過交付一套優秀、可執行的企業應用程式碼,
這套程式碼滿足了大部分的企業應用開發場景,你能在此基礎上進行二次開發。
還有 17+ 條學習路徑等你解鎖,快來一探究竟吧!
極客時間點搜尋功能也是非常好用,
開通會員後,文章可以免費看,所以想學習某個知識點的時候可以系統性的看完大佬們的文章,以 TCP 連線為例: