作為一名程式設計師不要假裝很努力,因為結果不會陪你演戲

程式碼全靠copy發表於2018-04-03

我一直相信這樣一句話:真正的危機,來源於在正確的時間做不正確的事。沒有在正確的時間,為下一步做出積累,這才是危機的根源。

比如,當你邁過了30歲這個坎,你的能力還侷限於程式的範圍,也沒有積累好自己的深度以及視野。如果真是這樣,我想我一定會每天夜不能寐,每天唾罵自己,你特麼究竟每天在幹神馬。

我也一直相信這樣一句話,當你把你的眼淚流乾了,你唯一剩下的就只有行動和努力了。

如果你正在這條成長路上的朋友,晚醒不如早醒,這就是我想說的。千萬別等到中年才發現自己沒有建立好自己的護城河,這個時候才知道努力。在自己努力的階段,不僅不努力反了選擇了縱容自己,這才是危機的根源。

做正確的事情

一些發自內心的建議,在每階段知道自己要幹什麼,收穫什麼樣的能力。

23-27歲:技術積累階段。假設本科23歲畢業,那麼工作的前5年對你來說就是打基礎的階段。在這5年時間裡面,你要積累足夠的技術底子,打磨自己的技術實力,成為某一個技術細分領域的牛人。

我自己依然記得當年這樣的場景:蹲在出租房裡面每晚每晚的啃技術文件,在公司連續打地鋪幹通宵的場景。

只有真正經歷過貧窮,經歷過苦難的人,才會越早就懂得努力才是自己這一生唯一的出路和機會。

27-30歲:形成思維方法論和知識體系的階段。當你積累足夠的技術實力,例如超過10萬行程式碼以後,你應該形成了自己的思維方法論和自己獨立的學習技巧,任何新的技術在你眼中都能迅速的看到技術的本質,快速吸收成為你的知識體系的一部分。

你只要前一個階段打的基礎足夠牢固,這個階段你一定會開始蠶食別的領域,這是一定的。

逐漸的不再滿足於純技術領域的探索,而是開始探索技術背後的事情:什麼技術在什麼樣的場合能夠發揮最大的價值;技術團隊應該怎樣構建;技術在公司未來的價值?創業公司對技術的需求?支撐技術的產品,怎樣學習做產品?支撐產品背後的運營體系是怎樣建立的?商業社會對技術、產品、運營等的是怎樣的認知,商業社會有什麼的特定規律?也許還有更多…

在這個階段,積累技術對你來說簡直是小菜一碟,你更需要磨練的是思考能力,形成自己的思維方法和知識體系,這將是你幫助你一生的武器。

35歲危機度過之道

30-33歲這個階段,最關鍵的是瞭解自己。知道自己擅長什麼,自己的優勢在哪裡,怎樣才能夠最大化自己的價值,同時也知道自己有什麼重大缺陷。未來是揚長避短還是不斷避免自己的缺陷,這些需要提前想清楚。一旦想清楚,想透了,就剩下行動。你可以選擇避開做自己不擅長的事情,不勉強自己,不讓自己處於對自己不利的環境。當然,你也可以選擇不斷補短,把自己的不擅長點變成自己最擅長的。這個需要結合自己的情況來慎重選擇,最終看你要走什麼樣的一條路,是打算做技術專家、管理者、還是技術結合產品,還是創業者。

走自己的路

程式設計師也好,設計師也好,架構師也好,產品經理也好,這都是一份職業。職業一定有他的職業基礎操守,這個是需要遵守的。千萬別程式設計師做不到就開始換做產品,換做運營,這樣的思維不管你做什麼工作,也許你什麼都做不好。

所以,沒有做好本職工作之前,別輕易談轉行。也可以好好琢磨琢磨,很多程式設計師出身的,哪個是程式設計師都做不好,就敢說自己產品很牛逼,我就是一個運營天才。

我越來越擔心我作為一個Java程式設計師的未來。

恍然間,發現自己在這個行業裡已經摸爬滾打了五年了,原以為自己就憑已有的專案經驗和工作經歷怎麼著也應該算得上是一個業內比較資歷的人士了,但是今年在換工作的過程中卻遭到了重大的挫折。詳細過程我就不再敘述,在此,只想給大家說一說被拒絕的原因,看看大家有沒有相似的經歷,和類似的感悟。

面試官對我的答覆大致是這樣的,我們不需要熟練工,我們需要在某領域擁有超過常人的積累認知,和擁有整套完整思維模式和優秀認知事物能力的人…他很誠懇地告訴我,你還年輕,真的應該好好地靜下心來,深入地研究一些東西,自己寫一些東西,而不是這也用過,那也知道,但是多半都是侷限於僅僅見過,會用,卻從來沒有認真思考過其程式碼背後蘊含的思想,更少有人研究過原始碼,進而體會大師們在某些問題的解決上秉承的思想和思維的風格。個人感覺,這也算是國內大部分程式設計師最讓人悲哀的地方了,當然這也與外界浮躁氛圍的蔓延不無關係。

不瞭解這一行的人總覺得程式設計師都是程式碼民工,如果自己也認為自己是敲程式碼的機器的話,我誠懇地建議您儘早轉行吧,也許我這麼說會得罪傷害一些同行,畢竟轉行對任何一個人來說都是有相當的風險和挑戰的。不過這絕對應該是善意的忠告。相反,我強烈地認為,程式設計師應該是最有活力和最有思想的一個群體,只要你不肯讓自己浮於表面,更重要的是,必須勤于思考。如果你認可我這句的話,就請您繼續往下看看我的感慨,否則,那就希望您好好利用好自己的時間做您最需要做的事吧。

由於面試中被問到Spring,MyBatis的時候,讓面試官問得人仰馬翻,啞口無言,所以回來之後洗心革面,下決心要把Spring,MyBatis好好研究個明白,再也無法容忍自己只知其一不知其二了。

清醒的認識自己

我一直擔驚受怕,過去,可能是因為我年輕,但現在,我已經不是那麼年輕了,我仍然發現有很多事情讓我害怕。

當年紀越來越大後,我開始變得不能加班。我開始用更多的時間和家人在一起,而不是坐在計算機前(儘管這樣,她們仍是抱怨)。我在本地教育委員會社群裡提供一些幫助,還組織開源興趣小組參加活動。

我在思考,為什麼以前會把如此多的時間全部用在程式設計上。大量的程式設計。那是我渴望深入研究一個類庫,一個框架或一門技術。

現在的技術的學習曲線的增加,讓我的忍耐性越來越低。各種新技術,因為新奇讓人興奮,但最終變成一場場爭論。我越來越無法忍受這些充滿市場宣傳氣息的喧囂。我對技術看重的是穩定,清晰。

據不完全統計,截至目前(2017.07)為止,中國Java程式設計師的數量已經超過了100萬。而且,隨著IT培訓業的持續發展和大量的應屆畢業生進入社會,Java程式設計師面臨的競爭壓力越來越大。那麼,作為一名Java程式設計師,怎樣努力才能快速成長為一名高階的程式設計師或者架構師,或者說一名優秀的高階工程師或架構師應該有怎樣的技術知識體系,這不僅是一個剛剛踏入職場的初級程式設計師,也是工作三五年之後開始迷茫的老程式設計師,都必須要面對和想明白的問題。為了幫助大家少走彎路,我總結出一個Java程式設計師的工作2-5年成長路線圖。

一、原始碼分析

作為一名程式設計師不要假裝很努力,因為結果不會陪你演戲

二、分散式架構

作為一名程式設計師不要假裝很努力,因為結果不會陪你演戲

三、微服務

作為一名程式設計師不要假裝很努力,因為結果不會陪你演戲

四、效能優化

作為一名程式設計師不要假裝很努力,因為結果不會陪你演戲

五、Java工程化

作為一名程式設計師不要假裝很努力,因為結果不會陪你演戲

關於技術能力

分散式通訊技術

JMS基本概念和模型

ActiveMQ結合Spring開發

ActiveMQ靜態網路和**絡連結

Kafka的高可用方案及原理分析

SOA架構及微服務架構

什麼是SOA架構/為什麼需要SOA

領域驅動設計方法/典型SOA架構設計

spring boot深入剖析

spring boot+dubbo企業實戰

Docker虛擬化技術

Docker虛擬化技術(映象/倉庫/容器)

Docker整合spring boot

Docker 服務編排

微服務技術

spring boot(mvc)

spring boot(REST)

spring boot(驗證)

spring cloud

spring cloud config client

spring cloud config server

spring cloud netflix eureka

spring cloud netflix ribbon

spring cloud hystrix

spring cloud feign

spring cloud stream

spring cloud bus

spring cloud sleuth

分散式訊息技術-kafka

kafka高可用叢集及介紹

kafka底層實現原理分析

分散式快取-redis

redis的資料型別分析

redis高可用叢集方案

lua指令碼在redis中的應用

資料庫高效能-Mysql

分庫分表深入分析及主從模型

資料庫中介軟體Mycat介紹

效能優化專題

從測試的角度解讀如何衡量效能

瞭解Linux系統

虛擬機器-JVM

記憶體模型、執行時資料

垃圾回收、GC日誌

調優實戰

mysql資料庫調優

Mysql底層儲存分析

以上就是我推薦給大家的最具有系統化的學習體系,若果你想學習以上的知識內容,你可以加這個群獲取:交流學習群:454377428裡面會分享一些資深架構師錄製的視訊錄影:有Spring,MyBatis,Netty原始碼分析,高併發、高效能、分散式、微服務架構的原理,JVM效能優化這些成為架構師必備的知識體系。還能領取免費的學習資源,目前受益良多

為了掌握這些技能,開發人員需能夠自我激勵,主動學習新技術,並在職業生涯中給自己扣上很多帽子。 繼而不斷挑戰自我,然後更好地解決問題,這就是程式設計的本質。 知識很重要,在某些複雜問題的情況下更是如此。在變化如此之快的IT技術領域中,知識的獲取在任何時候比我們已會的技能更為重要。

推薦一個交流學習群:454377428裡面會分享一些資深架構師錄製的視訊錄影:有Spring,MyBatis,Netty原始碼分析,高併發、高效能、分散式、微服務架構的原理,JVM效能優化這些成為架構師必備的知識體系。還能領取免費的學習資源,目前受益良多


相關文章