阿里技術專家告訴你:程序員這條路,到底可以走多遠?

職場危機感彷佛是每一個人在職業生涯都會遇到的話題,我對這種危機處境和本身曾遇到的問題進行了一番思考, 參考了其餘人的一些結論並結合自身的經歷,設計了應對的初步方案。經過這篇文章,但願能給你們一些啓發,也歡迎你們一塊兒討論、發表建議,化緊張爲動力,讓危機變機遇。java

問題分析與定義面試

要解決這個問題,須要從問題自己出發,分析爲什麼會有職場危機感,以及應該構建哪些能力來進行應對。是否會遭遇職場危機,與職業自己特性有很大關係。而大部分危機,來自於下面兩點[2][3]:算法

能力習得速度快的行業,後輩更容易挑戰前輩,造成危機感。編程

技能演進速度快的行業,手裏的祕籍容易成爲廢紙,造成危機感,以下圖所示:設計模式


圖1 技能演進速度快的行業架構

所以,就這兩個關鍵點,對一些行業進行定性分析,以下圖所示:併發


圖2 常見職業在能力習得和演變象限中的分佈框架

從能力習得速度這方面看,碼農雖然身處高科技行業,但得益於大量的開源技術和豐富的培訓,好比"0基礎上手機器學習"、"2周培訓助你成爲深度學習專家",使得編程變爲容易上手的技能,從而致使行業的門檻變低,能力的習得速度也變得很快。另外一個方面,從技術演進速度,確實沒有哪一個行業能與之匹敵。機器學習

解決問題的三條出路分佈式

解決問題要從問題根本入手,從上面的圖中按圖索驥,找到讓兩個演變速度慢下來的出路。不管怎麼騰挪,都要從狹義的碼農職業轉換到宏觀的碼農職業,前人已經總結了給出三條可行路線,歸納爲3P,即Paper、Politics、PPT[2][3]。

圖3 3P路線


Paper 路線:簡單來講,可以跟學術界搭上點兒關係,在工業界的title就是技術專家。具體的形式包括棲身學術圈在頂級會議上發論文並與大佬們談笑風生、或者在技術決策上具備團隊影響力和話語權的架構師等。這條路線相對來講門檻高一些,須要的紮實的專業技能和靈活的業務建模能力,年齡和經驗每每是優點。雖然學術新技術也層出不窮,但若是習得核心技能,職場瓶頸來得並不猛烈。

Politics 路線:這條路線,是從生產力崗位轉入生產關係崗位,從面向系統到面向人,通常來講就是各類管理崗。這條路性價比高,競爭也激烈,要有意識地構建好本身的能力,纔有機會進入。

PPT 路線:這條路線,是從寫代碼的崗位轉入項目管理、運營增加的崗位,須要較強的策劃和執行能力,好比產品、運營等。

適合於走哪一個路線,須要結合本身的性格來定。工程師都有一個共同的性格特色,追求簡單,追求完美,思惟方式上比較理性和邏輯性,看問題比較趨向於非黑即白。對這類性格的人來講,走技術專家是一條捷徑。其面對的是複雜的系統和業務問題,若是能靜下心來仔細鑽研技術,必定能在某個方面作得比別人好。這個路線對工程師性格的人來講,其實就是在解決簡單的複雜問題。

怎麼才能成爲優秀的工程師呢?

1. 樹立正確的觀念並轉化成本能

爲本身工做 首先,工做不是爲老闆工做,而是爲本身工做。工做是屬於公司的,而職業生涯倒是屬於你本身的。當把這件事情想明白的時候,你的職業發展將會煥發新的青春。在這個過程當中,學習如何像企業同樣思考,如何提高本身的技能,讓公司持續地購買你的服務。

結果導向 公司付錢的目的是要帶來價值,你提供的服務最終要能產出結果。公司裏面功勞大於苦勞,結果大於過程。正所謂是爲過程喝彩爲結果付酬。

承擔責任 責任與重要性呈正比。當你的責任越大,承擔的事情越多,公司對你的依賴也就越重,也更可以讓你脫穎而出,獲得更好的資源和機會。因此,須要主動的承擔更多的責任,不要退縮,勇於頂上去。並且敢於承擔責任,作出引人注目的成績,成爲問題的解決者,並不斷更新本身,也更容易得到晉升。

即專又精 要攬瓷器活,得有金剛鑽。作事情作深刻專注,這樣提供的服務纔可以足夠的優秀,才值得別人pay for money。切忌什麼都會,但什麼又不懂。

團隊協做 要相信團隊的能量是無窮的,建立一個好的環境,合理的激勵措施,好的成長路線。每一個人都能激發並釋放本身的能量,讓優秀的人脫穎而出。

2. 養成良好習慣,提高執行效率

在習慣這方面,大概能夠分爲3部分:

(1)第一部分是工做習慣,包括提高執行、保持專一。目標就是提高生產力。在這塊不管是方法論仍是工具系統都有不少的資料,在這裏再也不累述。

(2)第二部分是學習習慣,包括不斷學習、深刻思考、持續輸出、技術社交。開篇就提到了,碼農的技術演變速度很快,因此在這個行業不斷學習。學習的重要性你們都知道,並且對於學習的方法你們都各有一套,畢竟都是一路考過來的。但在繁忙的工做中以及飛速發展的技術中,應該學什麼以及怎麼學仍是很是值得研究的。關於學習的這四個習慣是相輔相成的。首先得先有持續學習的主動性,而且不能浮於表面,須要深刻本質,思考背後的模式和原理,並觸類旁通,融會貫通。持續輸出是保證深刻思考的重要措施,也可以積累本身的技術體系。最後,搞技術不能閉門造車,技術這玩意也須要社交,得接受吸取碼神們的指導。關於學習有兩個關鍵點:

第一點是學習方式,咱們要謹記的是, 教會他人永遠是最高效的學習方式!這個正是費曼學習法的精髓所在。

第二點是持續思考。如今層出不窮的技術,好比RNN、LSTM、attention、transformer再到bert,若是隻學算法自己,是永遠慢人一步的。而若是深刻思考背後的原理,則很容易融會貫通。一旦瞭解得比別人深,就容易看到問題本質,產生信心,激發樂趣。這時候你的解決方案就比別人漂亮,逐漸創建起了影響力,成爲了「專家」。所以公司裏的疑難雜症會主動找上門來。你就比別人獲得了更多的解決問題的機會,從而更快地提高能力。一旦進入良性循環,你的進步就比別人快,但付出的卻不必定比別人多。這時候你已經走上了捷徑。

(3)第三部分是生活習慣,包括常常健身等。

3. 強化技能,提高生產效率

能力建設也是一個體系,共分爲3個層面:

(1)我的能力:包括系統化思惟全面分析問題,拆解問題,逐步分解和執行,並可以有效溝通協調上下游資源把事情作成,拿到結果。事情作完了,須要包裝,進行自我營銷。

(2)團隊技能:當我的的貢獻有了,負責的範圍愈來愈多,承擔的責任愈來愈大,這個時候得向上管理,和老闆把事情講清楚,得到老闆在資源和人力的上的支持。當隊伍壯大了,就須要作出應有的貢獻,因此團隊管理、提高組織效能就變得重要了。

(3)進階技能:作完這些後,就會感受小有成就,立刻就踏入人生巔峯了。但這個時候須要中止當前成功的喜悅,延遲知足,對本身提出更高的要求,來得到更大的成功。提到延遲知足,你們首先想到的多是著名的「棉花糖」實驗。可是這裏所說的延遲知足,指的是延遲我的在成功上的知足感,不要止步於當前的成功,多給本身加一些挑戰。好比這個項目已經拿到了+5%,那還能不能再提高到+8%,或者解決方案能不能更優美一些,約束能不能少一些。這樣不斷給本身拔高目標,就能讓本身得到更大的成功。

最後

那麼學好java咱們又須要掌握哪些技術呢,學習方向應該是怎樣的呢。下面是我分享給你們的思惟導圖,建議你們收藏

一、高性能架構


二、開源框架解析


三、微服務架構


四、架構築基


五、團隊協做開發


六、B2C商城項目實戰


七、設計模式


若是須要以上高清的技術圖的話能夠關注一下我,加入Java進階之路:1017599436,以上知識點這邊都有相應的視頻講解,一樣能夠免費獲取。

須要獲取Dubbo、Redis、設計模式、Netty、zookeeper、Spring cloud、分佈式、高併發等架構技術視頻教程資料,架構思惟導圖,和BATJ面試題及答案的,都是免費分享的。

能夠關注一下我,加入Java進階之路:1017599436,便可獲取以上相關資料





總結

不要爲所欲爲地生活,也不要隨遇而安地行走在職業生涯的漫漫長路上。沒有明確的方向,你走的每一步都是徒勞的。對工程師來講,沒有以不變應萬變的方法,惟一不變的就是改變,樹立長遠的目標,鍥而不捨,踏實前行,方能達到最終的目標。

相關文章
相關標籤/搜索