本文出自 中華石杉老師的<為什么有些程式員明明很努力,但是卻回報很低,收益很小,工資始終上不去> 視頻,我本人辛辛苦苦用鍵盤將中華石杉老師說的話都打字打出來了,方便各位包括我自己也去好好的學習.
我見過很多程式員,他可能早上在學習,中午也學習,晚上也學習,一天學很長時間,只要不作業,一直就在學習,放假也不出去玩什么的,但是為什么他工資卻始終上不去?
他可能感覺他學了很多,但是一面試,他三年可能也就是10多K, 或者5年就20多K, 這類人,我總結了一下,他是不太會學習的, 怎么說呢,首先第一點就是他是做業務開發的,但是他學習的東西過多的專注于特別底層的原始碼.
比如說JVM原始碼,Linux內核這些,其實這些你是可以看的,但是沒必要一直揪著不放,首先你要弄清楚,你是做業務開發的,你不是Linux內核開發工程師,你也不是JVM開發工程師.或者說你也不是MySQL Redis 開發工程師.
比如說MySQL原始碼,你看了MySQL原始碼你是為了什么,你是為了面試出彩還是為了解決公司問題, 如果你是為了解決公司問題,你是DBA或者做公司資料庫相關開發的開發工程師,那么Ok,MySQL的原始碼那你就必須得看了, 面試這些崗位也肯定會問,這些是必備項,那么你肯定要會.
但是大多數程式員都是業務開發的,也有少部分是做中間件開發的,可能是搞基礎架構的.這一部分人,其實看MySQL的原始碼,或者看Redis原始碼或者Linux原始碼這些其實收益是很低的.
很多人問我為什么平時周末都要出去玩,因為我是比較愛玩的,平時周末不加班我是喜歡出去玩的,我周末出去玩,明顯感覺我的學習效率稍稍比其他程式員學習效率高呢,因為我對我自己是有一個明確的認知的.
因為我也是做業務開發的,我也做過大資料開發,中間件開發,但是這些東西都是上層的東西,比如說你做網關,或者公司內部RPC中間件,或者限流,或者等等等… 這些東西其實都是上層的東西.你去看底層的東西,使勁看,其實收益是很低的,
尤其是說.很多人所在的公司比較小,是外包公司這些等等,這些公司基本都是用開源的技術,你連上層的中間件都開發都接觸不到,那么你去看這些底層的東西,使勁看其實收益是很低的.
我建議大家,如果你是做業務開發的,我建議你先把上層的東西先學明白了,當然大學學的那些計算機基礎的東西這些東西,你是一定要會的,如果你不會的話,你要去學學,但是不建議你當大頭去學.比如說你一天學12個小時,你八個小時都在看這些東西. 剩下的四個小時,你去看你現在用的到的東西, 這樣我是不建議的,
首先,學習一來說是很枯燥的.也很費腦子的東西,其次是你先把你用得到的這些學明白了,你去跳槽一個好的公司你不僅僅可以平時休息時候學習可以學習到一些新的知識,包括你在作業中也可以學習到新的知識,這是毋庸置疑的.
你可能有些大公司的程式員可能技術不怎么樣,但是他在大公司待了幾年之后,他卻有那種在小公司出來的程式員沒有的一些東西.就是在大公司學的東西,公司內部人員分享的學習資料或者公司的RPC啊或者一些等等技術檔案等等,包括你平時和領導溝通啊,有什么不會的去問啊,都可以學到東西.相反你在小公司的話,你學的東西的幾率就是很小的. 可能說一百個小公司就有幾家你的領導是從大公司出來,然后去小公司養老的這些,或者高薪挖過去的.這樣的很少.
大部分的小公司領導都是在小公司待的時間很長了,可能他在公司邊做技術邊做管理,技術也很不咋地.
所以我要說一下學生,你重點還是打基礎,我見過一些學生跟我說,感覺學校學的東西沒什么用,這里的話,我上學的時候就是做過一些開發,我當時就覺得學校學的東西沒什么用.學校教的是什么牛馬玩意.學了有啥用啊.
但是自從作業了一年之后我發現學校學的東西其實是非常有用的,但是可能學校老師可能就照著PPT在那里念, 或者這個老師技術也很一般,講不明白的那種,或者是技術特別老了,或者是講課不太好的那種,就是啥樣的都用,所以就給你感覺學習很枯燥,學完了沒什么用.
但是我自從上了一年班之后,我發現其實上學的時候學的東西是很有用的,比如說我做調優的作業,作業之后我發現這些東西其實是非常的有用的.所以說如果你是學生的話,不要過分的追逐新技術,基礎打好了,技術都是互通的. 你學哪個技術都是很快的,包括你看什么原始碼,都是很輕松的. 所以你是學生的話,你先要給學校的東西學好.
第二點就是有些人表面在學習,你看他非常的努力,其實他可能就是說看一些視頻什么的看了一遍沒什么印象,就繼續看下一個了,或者就是看了一個視頻可能有某個地方沒弄明白,那不行,必須死活弄明白.
就是有一個是走馬觀花似的看,還一個就是學了一個技術但是某方面沒弄明白,他就必須死扣明白.就是什么時候明白什么時候位置.
上面兩種人學習效率是非常的低的,然后還有第三種就是我看一個東西沒看明白,我使勁讀,讀個十多遍不行然后讀二十遍,什么時候明白為止什么時候拉倒,
還有一種人是這種人,我看一個東西,講完某個技術我覺得挺不錯,我就看他講的,但是我讀下來,沒讀懂,然后就還要繼續讀,我讀了兩三遍之后我還是讀不懂,其實這樣的話,就可能是有兩點,第一個就是寫文章的人沒寫明白,導致你沒懂,第二種情況就是他寫的地方有些默認是覺得讀者是會的,但是大部分讀者可能不會,這也導致有人讀著讀著讀幾遍沒讀明白,這樣其實也是很浪費時間的.
我一般的話,我看一個文章,我看不明白了,我可能就是找類似的文章我再接著看,我看其他人寫的怎么樣,可能有些人這部分就比別人寫的好,我給這部分讀完了之后,然后剩下的部分可能不如另外一個人寫的好,那么剩下的我就去讀另外一個人的. 這樣下來我其實是給知識點已經打通了,我相對來說我讀兩遍我我把兩篇文章寫的精髓我全都學會了,但是如果你在一篇文章上使勁,你讀兩遍反而還什么都沒讀明白,你這樣的話,效率就太低了.
這也就是導致很多人學習看起來很努力,但是學了一年出去面試,工資就漲了二三千,這其實我覺得如果跳槽只是漲兩三千,那真是白瞎了你一年的努力了,尤其是作業初期,你一年 兩年 三年作業經驗的人,你學一年再跳槽工資漲幅是比較大的,因為你作業年限比較少的話,你作業工資普遍也不是很高,你的薪資漲幅其實是比較大的,尤其是你上家工資比較低的時候,
雖然說你下家公司會卡你上家公司的工資,但是漲肯定不是只漲兩千塊錢,如果你一年學的比較不錯的話,不可能只是漲了兩三千那么點的.
所以說,這就是我說的就是 為什么有些程式員明明很努力,但是卻回報很低,收益很小,工資始終上不去.
我上面說的這些人不是不讓你去看了,我的意思是你要分工明確,比如說你八個小時, 你三個小時看一些底層的東西,然后剩下的五個小時你一直去看上層的東西,那么OK,你這收益其實是很大的.如果你八個小時只是學習上層的東西,你也是比較枯燥的.你的收益相對來說還是會比較低的.
你去合理的去分工一下, 你的收益是比較大的.你不僅僅學習了底層的這些東西,其次你的作業當中你用的這些東西,你用的還是非常的熟練,你面試的話,這些一問全知道,才能把可能會出現場景給想到.
比如說我之前看一個平臺的直播面試,大廠面試官其實普遍都是問你場景題,你答上來了,或者就著你的簡歷的專案,那就會涉及到高并發情況下,比如說抖音快手網紅直播這些高并發情況下你這些怎么設計,然后這個比如說過年快手的彈幕系統是怎么設計的, 禮物系統是怎么設計的. 你多研究這些的收益比你一股勁鉆底層的收益來得快,
當然你是搞Linux內核開發MySQL開發的話等等, 你肯定是Linux內核啊,MySQL啊這些原始碼都要必須看的. 因為你的側重點就是這些,你肯定必須要看的.上面我說的這些東西就不適用你了.畢竟你不是開發公司業務的工程師.
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/303114.html
標籤:其他
上一篇:關于連接服務器redis的教程
