作者:delphi
來源:delphiliu碼字
寫給期待年薪百萬的IT同學

有點標題黨了哈,大家不用糾結百萬年薪。百萬不是一個確定的數字,就是高薪的意思。

說回正題,上一篇《給轉型做技術的同學的一些建議》發出後,有不少同學過來諮詢。說程序員年齡的坎,讓他感到焦慮,擔心自己是不是跨不過30-35歲這個坎。在一些論壇上,看到一些同學也在焦慮,焦慮目前技術更新太快,一下這個熱點,那個熱點,感覺學的好累,要跟不上了。後來我想了下,這應該都是沒有明白或積累夠足的核心能力導致的。

核心能力,每個具體方向不同,也很難給個統一的定義。我例舉些例子吧。我本身是做C/C++服務器開發的。我每次說完這個,有不少同學就反應,哇,會C/C++,好厲害的感覺。好像我這個方向的核心能力就是C/C++,大家卻對服務器這三個字視而不見。

這個理解當然不對,語言只是實現邏輯的一種工具,核心能力是邏輯本身。

我換個介紹方式,海量分佈式服務器系統設計開發。都是同樣的工作,只是描述不同,你已經感到很大不一樣了吧。這裏的核心能力是什麼?是架構設計,關鍵細節設計的能力和經驗。在海量服務器設計領域,核心能力,大概包含物理設計和軟件設計。物理設計包含:磁盤存儲設計,內存緩存設計,核心數據結構設計,一致性問題處理,容災設計等;軟件設計方面包含:模塊劃分,接口定義,設計模式應用,核心數據傳輸結構設計等。擁有上面的核心能力,你用C/C++,Java,甚至python都可以實現(雖然一般不會用python實現)。

在這裏,核心競能力跟語言其實沒有多大的關係。

換到客戶端開發方向,也有它的核心能力。包含,單機存儲設計,內存緩存設計,核心數據結構設計,併發處理, 軟件分層,設計模式,傳輸協議等。你是iOS還是andriod開發,核心能力都很接近,只是某些特定的地方有區別。

我上面例舉的兩個例子,所涉及的核心能力,都是老掉牙的東西了。像磁盤存儲設計,內存緩存的設計,軟件設計模式,都不是什麼新鮮的東西,幾十年如此了,當然會有細微層面的進化。但大致如此。

所以焦慮的同學在焦慮什麼呢?我看很多同學焦慮的是,又出了新的語言,新的框架,自己要跟不上了。我只能說,如果你在焦慮語言和框架的時候,你就已經跟不上了。你可能根本就沒有理解你所在方向的核心能力是什麼,更加沒有掌握它。像andriod開發同學提到大前端,然後覺得焦慮,覺得自己要被淘汰了。要是你理解軟件設計就是客戶端,前端開發最核心的能力之一的話,你就不會焦慮。反而會覺得,大前端這個概念,很好的解決了各種平臺氾濫的問題。其實當你理解這點的時候,你平時學習,積累的點也就改變了。你會更在意一個新的語言和框架爲什麼會這麼設計,相比舊的東西,有什麼改進。而不再只是注意語言,框架細節。這個視角是不一樣的。當你能理解這個事情,你離百萬年薪就不遠,或者已經超過百萬年薪了吧。

上面例舉的例子,可能太精專了,不在那個方向的同學可能不能理解。那我再來說說目前比較熱門的數據和AI吧。

前幾天,我很好奇,大家怎麼突然都對python培訓那麼感興趣了。後來百度了一下,都是python數據分析,AI的培訓廣告鏈接,然後就會心的笑了。

數據,AI都是大熱門。剛畢業,進入到大廠,給60萬以上都有可能。所以很多在已有方向做的不好的同學,就像找到了通往財富自由的捷徑,或者去參加線下的培訓班,或者自學數據,AI。當然學點東西挺好的,只不過有的同學可能期望太高。在這個事情上,我又想潑大家冷水了。

數據,AI的核心競爭力是什麼?大家能說的出來嗎?難道是會python的語法,會用python的庫,就可以了?

說實話,我也不太懂。不過我接觸了不少做這方面的同學,就說說我的理解把。數據,AI可以分兩個方向來看。

一個是研究類,一個是工程類。上面說的畢業60萬以上年薪的,基本都是研究類的,工程類的好像還沒看到。研究類的比較好理解,大部分名校博士畢業,在一些頂級刊物上發表過paper的會加分很多。這個估計大部分同學也知道,就不多說了。

來說說工程類的。我周邊有不少同學是本身是搞服務器開發的,有的轉去做了數據推薦和AI。有的還做的不錯。核心能力,我給劃分了三個等級:

第一級,能夠讀懂英文的paper,完全理解paper裏面描述的算法。知道算法的優劣和適用的場景,並且可以用自己熟悉的語言實現出該算法。這個算是工程裏面的一流水平了,應該可以拿到很高工資。

第二級,不能完全理解paper和算法,但知道算法在某些特定場景下的效果和調優的方式。可以在GitHub上面找到合適的開源實現,進行使用甚至優化。如果有豐富的項目經驗和實操經驗會加分。

第三級,完全看不懂英文的paper,知道常用的算法,但無法區分出各種算法的優劣和適用場景,會用python,C++等語言的庫進行算法組裝。

大家看完上面的描述,覺得,數據,AI的核心競爭力是什麼?是python語法,還是python的庫?當然不是,我覺得最核心的還是算法本身,只不過對算法的理解程度的不同,會處於不同的等級。這裏英文的閱讀能力對很多人來說,也會成爲一道坎。

目前自學和參加培訓的同學大部分處在第三級,甚至第三級都沒達到。 有參加培訓的同學過來諮詢我。 我問他目前是怎麼學的。他說在看培訓的視頻,書太難了,看不懂。 如果是這種情況,恕我直言,可能永遠沒有機會進階到第二級了。因爲後面需要看的書籍,只會比入門書籍更難。

當然,肯定有同學有潛力,能通過自學或者培訓到達二級水平或三級的水平,但路徑可能比你想象的要漫長和艱難。如果你確定入行走這條路,我建議你嘗試做這麼個事情。去google(不要百度,百度出來都是一堆廣告,簡直誤人子弟),比如: 數據分析 職業發展 , 數據分析 書籍等。 篩選出靠譜的文章。然後仔細的閱讀,自己去整理總結,理出一個特定方向的發展路徑,關鍵能力,要學習的課程和書籍。不一定很準確,但經過自己的整理和思考,自己對這個方向會有更深入的理解。然後再重新問自己,是不是確定要走這條路。而且做了這個事情後,你問別人相關問題,也能問得更具體些。

看完上面的文字,估計很多同學要噴我了。 我本也可以寫些政治正確的廢話,鼓勵大家努力往前。不過那麼寫,覺得對不住良心。所以還是寫了實話。

有做工程的同學,發覺自己的發展遇到了瓶頸,然後抱怨自己所處的方向,天花板太低。於是他想轉到數據方向。其實我看他所處的方向是沒問題的,也有很多大牛人。只是他自己遇到了瓶頸,突破不了。對於這類同學,我的經驗是。如果這個坎,你跨不過去,那麼在數據,AI上面的坎,你也跨不過去。遇到了坎,不去努力突破,而是想繞過它,在後面你也依然難以突破。

最後希望大家能走在正確並且適合自己的道路上。

相關文章