子曰:吾十有五而志於學,三十而立,四十而不惑,五十而知天命,六十而耳順,七十而從心所欲,不逾矩。人生又有幾個十年?程序員
距離三十還有7年。7年看似很長但也很短。或許有人說我過早的杞人憂天。架構
三十歲對於一個程序員來講,是一個警鐘。雖然很多博文或者某些國外週刊說,有七八十歲的程序員,也有四五十歲的程序員,作一生的程序員沒有什麼不行。框架
可是那是國外。國內與國外的情形是不同的。IT的技術更迭是很快的,你想要不斷成長和強大,就須要不斷的學習。做爲年輕的我來講,特別是雙休的時候,天天能夠抽取八個小時的時間來學習。可是呢,分佈式
當我結婚生子後呢?我還能有那麼多時間專一於學習嗎?更可能是陪伴本身的家人,教育孩子。工具
今天我主要說的話題是做爲程序員有比寫代碼更重要的事情、不能僅僅只關注於本身的領域、要有憂患意識、要有理想等。學習
1、做爲程序員有比寫代碼更重要的事情區塊鏈
那麼到底什麼是比寫代碼更重要的事情?網站
記住,這句話不只僅對我本身說,也是對同在IT一線奮戰的同志們說的:不要把本身看作碼農。職業規劃
記得我在以前的文章說過,寫代碼是思惟運動,而不是體力運動。不要將腦力勞動變成體力勞動。編碼
爲何這麼說呢?
如今不少有三年甚至五年及其以上的工做經驗的開發人員,可是有這麼一個羣體,僅僅只是將兩年的工做經驗或者是一年的工做經驗重複到五年或者三年以上再或者更久。
我想這也是爲何有的企業在招聘網站招人有這麼一條,擁有和工做年限相稱的廣度和深度。
以下圖美團的Java高級工程師招聘:
或許有人說,這與你說的「做爲程序員有比寫代碼更重要的事情」沒有關係吧。
嗯,確實沒有關係。可是我只是想強調一點。編碼是一項腦力與體力相結合的工做,腦力爲主,體力爲輔。而不是體力爲主,腦力爲輔。
下面說說,做爲程序員有比寫代碼更重要的事情。
首先我說說個人想法:
(1)做爲程序員不能僅僅只關注於功能實現,還要深入理解業務,明確一條,技術是實現業務的工具,技術當然重要,業務也同樣重要,不要僅僅只關注於技術,而忽略業務;
(2)按期寫文檔總結,回顧本身在工做中對業務的理解和解決的問題,並將其寫成文檔或者博文的形式,內部分享或者是在不有損公司的利益狀況下,分享給廣大的IT朋友們;
(3)溝通,溝通很重要,特別是技術團隊內部,不要埋頭苦幹,各自爲戰;
(4)鍛鍊身體,身體是革命的本錢,前段時間的新聞,讓我心有餘悸,特別做爲在一線奮戰的IT朋友們,必定要按期鍛鍊,就算不是跑步的形式,也應該去戶外走走,徒步也是一種鍛鍊的方式,固然了,若是能跑步,或時常上下蹲、俯臥撐、仰臥起坐等等,也是不錯的,鍛鍊身體能讓你的大腦更靈活;
(5)要有一顆恆心,回顧個人IT學習生涯,若是不是一顆堅持的恆心,恐怕我和班上一部分同窗同樣,最後只能轉行去作作搬運工、流水線、普通工人或者餐飲的服務員等等,這裏我要強調一點,我這麼說,並非歧視這些人,而是要強調一點,想要在一個領域有所成就,必需要有一顆恆心,固然了,機遇也很重要;
(6)要有熱情,你能夠理解爲興趣,興趣是最好的老師,要想在一個行業長久的發展下去,興趣(熱情)是很必要的,雖然有一萬小時這樣的理論,可是你要想有興趣的長期堅持一件事情超過或者等於一萬小時,或者是被動的堅持一件事情一萬小時是徹底不同的,曾經選擇IT,僅僅只是由於看上工資高,到後來慢慢喜歡上它,由於它就如生活同樣,帶給我酸、甜、苦、辣、鹹;
這裏我要檢討的是,上面的想法我目前而言並無徹底作到,
談到(1),當初開發軟件時,我僅僅只是抱着功能實現就好,其餘一切無論,最後的惡性循環是,不斷的出現問題,不斷的解決問題,同時呢?也不斷的加班。最終的結果,就是由於本身的不負責任、不理解業務形成的。
談到(2),按期寫文檔總結,的確,這個很是有必要,以前我說過,人的大腦容量是有限的,固然了,也不能忽略一些大腦容量超常的人,不過畢竟那些是少數人,因此,做爲大多數的人來講,不管是工做中仍是學習中,按期總結和回顧是頗有必要的,好比,咱們Java團隊在與安卓團隊對接時,有些接口相關的請求url、請求參數、響應參數,時常由於彼此不記得翻代碼找半天,這一點雙方都有本身的責任,做爲Java研發團隊中的一員,咱們的責任是沒有及時記錄,以致於找的時候花費不少沒必要要的時間。雖說,接口寫文檔是一件麻煩的事情,可是用一個叫Swagger的工具是能夠徹底實現自動化的,這個工做是個人,仍是由於個人不負責任,沒有管它聽任自如,我仍是要檢討本身。
談到(3),溝通很重要,我發如今實際開發中,bug出現的機率高的緣由,除了咱們沒有深入的理解業務以外,還有就是溝通,咱們溝通太少了,以致於時常由於這個那個浪費不少沒必要要的時間。曾經的我,之因此選擇了IT,是由於我不喜歡和人打交道,僅僅只想着,「雞犬相聞,老死不相往來」,,最好是你們各自幹各的,都無論彼此。事實證實我是錯的,每一個人對每一塊的業務模塊,理解是不同的,有的理解深,有的理解淺,經過溝通能夠彼此互補,技術也是如此。在軟件開發整個流程,不管是曾經的瀑布模型,如今的逆向瀑布模型,仍是如今的敏捷模型,軟件的成功因素,不只僅取決於業務的前景和好的商業模型,更取決於整個團隊的良好協做,本質上能夠理解爲溝通二字。
談到(4),還有一點我遺漏了,那就是少熬夜和不熬夜,如今我很年輕才23歲,記得在上家公司工做的時候,常常是2點到3點才睡,那段時間也是沒有辦法的事情,由於我所面臨的,不只僅是生存上的危機,還有來自不少外部的壓力,包括我什麼都不會,一切從頭來過和一些其餘因素等。當我解決了生存危機後,感受身體其實也沒有什麼,有段時間,我確實有點墮落了,享樂主義的思想逐漸佔據了個人大腦,熬夜看一些沒有養分的電子書(什麼修仙、霸道總裁等等)或者是看看娛樂電影等等。可是後來被一我的無情的打擊下,我逐漸醒悟。
前面說的,或許與少熬夜和鍛鍊身體沒有關係,可是我以爲享樂主義的思想是形成熬夜及其不多或者不鍛鍊身體的緣由之一。
談到(5),要有一顆恆心,我同廣大的朋友們,都同樣,沒有深厚的背景關係,也沒有富裕的家庭。有人說,這個世界上充滿着不公平。在我看來,借用《深度思惟》中的某句話所說的那樣,這個世界有兩個東西是公平的,一個是大腦思想和時間。雖然說如今少年得志的人很多,好比前段時間受邀參加某個酒會,遇到很多年輕有爲的CEO等。可是那只是少數人。更多的平凡人,其實也能夠成功。只不過須要沉得下心,並不斷堅持的去作一件事情,能夠是興趣愛好,也能夠是職業。這個時代既是物價飛漲的時代,也是充滿機遇的時代。有人經過本身的興趣愛好而得到成功,也有的經過專一與職業而得到機遇取得了成功。成功並非偶然的,也有其必然的因素。
談到(6),熱情或者是興趣,熱情對我來講也能夠等同於興趣。對一件事情十分有興趣,就會不斷有動力去作。做爲IT界中的一員,IT的技術不斷更迭,你想不落後,不只僅只是靠擠時間去學,並且也要有興趣,有熱情去作。否則毫無興趣的去作一件事情,效率不高,也浪費時間。不少人總說,沒有時間去學習,包括我本身也說過不少次,其實那都是藉口,由於本身不想去作,也不肯意去作,更沒有興趣去作,何談熱情去作呢?
2、不要僅僅只關注本身的領域
不要僅僅只關注本身的領域,爲何要這樣的說呢?
緣由有以下幾個方面?
(1)容易陷入偏狹,一葉而障目;
(2)咱們須要瞭解業務領域的知識(好比作金融相關的開發,須要瞭解和熟悉金融的,作區塊鏈的,須要瞭解區塊鏈相關的知識等等),同時也不能僅僅爲了業務而去學,日常也要有意識的去拓展本身的知識領域,就我而言,我對理財、文學、產品、物聯網等感興趣,我就會去看看相關的書籍和資料;
(3)借用吳軍先生的《見識》所說的那樣,你能走多遠,取決於你的見識;
其實這三個緣由概括下來,能夠用一句話表示,那就是眼界的深度與廣度,不只僅決定你的職業發展,同時也決定了你的將來。
我給本身的建議,也給他人的建議以下:
(1)多多閱讀,特別是對工做時間長,休息時間短的朋友們來講,閱讀是獲取知識的最佳途徑之一,閱讀不一樣的書籍,你能夠領略不一樣人的思想或者是不一樣的行業,也能夠是你本身的不一樣感覺,說句慚愧的,我也有好久沒有看書了,只是最近以爲,我不能僅僅只關注代碼和學習新的框架或是深度研究現有的框架原理等等,還得去了解這個世界不同的東西或者是這個世界不同的地方;
(2)溝通,不能僅僅只閱讀而不溝通,溝通能提升你的表達能力,同時經過溝通,也能學習對方的看待問題的方式及其獲取對方領域的知識(固然了,溝通也沒有壞處),特別是廣大的IT同胞們,若是表達能力不行的話,找女友很差找啊,每次朋友圈看着秀恩愛的那羣傢伙們,心中老是有種莫名的憤怒,哈哈,稍微幽默下;
再貼個圖:
閱讀和溝通,不只僅使你能擴大本身的知識領域的廣度,還能給你遇到問題時,會有不少的解決問題的思路和方式。這裏也要提到積累也很重要。
上圖中有四個紅色標記處,前兩個,你以爲你沒有想過的積累,你以爲你可以勝任嗎?或許能夠試一試。這個世界上,沒有你想作而作不到的。關鍵是前面說到過的恆心。長久的閱讀積累和溝通和技術的沉澱,總會給你帶來意向不到的驚喜和機會。
3、要有憂患意識
居安而思危。不要僅僅只知足與安逸的環境下,有一點我要檢討我本身,有段時間我確實有點聽任自如了,以爲本身身處如今的崗位,就有些忘乎所以。
人工智能的發展是很是的迅速,編碼之後也會被機器人取代的。這個多是將來的趨勢之一。先不說這個,再說近的,如今的培訓機構層出不窮。培養了大批的軟件開發工程師,同時如今的大學生,專科的、本科的、研究生或者博士愈來愈多,你還以爲你所處環境很好嗎?這句話是對我本身的說的。「咱們不要僅僅只知足於如今,還有着眼於將來「,這句話人人都知道。但沒有幾我的作到?我想這也是貧富差距的緣由之一。
下面我要說出我本身的想法,同時也是給我本身的建議,廣大的朋友能夠參考:
(1)要有職業規劃;
(2)要培養本身的核心競爭力;
(3)既不要妄自菲薄,也不要驕傲自滿;
(4)實事求是;
談到(1),Java開發工程師的職業規範通常爲以下:
初級開發工程師->中級開發工程師->高級開發工程師->架構師/項目經理->技術總監->CTO
同時也能夠變成這樣
初級開發工程師->中級開發工程師->高級開發工程師->產品經理->產品總監
還能夠變成這樣
初級開發工程師->中級開發工程師->高級開發工程師->技術合夥人(參與創業)
職業規劃,意味着你知道本身的下一步想作什麼,有個目標總比沒目標強。不少人說本身迷茫,包括我本身也同樣。其實一點都比迷茫,只不過是爲了逃避本身的責任罷了。
好比我,記得有段時間,經理想讓我作TeamLeader,可是我當時畏懼了,由於我怕同事們不配合我,同時也怕本身萬一搞砸了失去這份工做怎麼辦,還怕本身由於對於別人代碼不熟和業務不理解被嘲笑等擔心。這些擔憂當然有必定的道理,可是換個角度來看,同事們不必定會不配合你,只要你作事負責任,搞砸了也不可怕,最重要的是你努力去作,不熟悉和不理解,能夠經過熟悉和理解(嘗試經過與同事及其領導溝通來達到理解業務的目的等等)。在這裏我想強調一點,缺少勇氣去嘗試,意味着你一生只能默默無聞,其實歸根到底就是由於不想擔責任,缺少責任感。
在工做中,我想每一個人都會遇到這樣的場景或者是這樣的人,好比某某人和某某人一塊兒工做,忽然某某人被領導提拔,而那我的以爲本身工做能力不錯,爲何提拔的不是他(她),而是他(她)呢?不少人,包括我本身遇到一些問題和事情,最早想的不是如何解決,而是如何推卸責任。這一點,我真的要很反思。再好比戀愛中的情侶們,當在一塊兒的一段時間裏,男方總會以本身的想法爲由,大男子主義,每每忽略的女方,最後分手了,老是說,爲何會這樣,不是個人錯。每每老是從本身的角度上看,而不換位思考。不管是工做中,領導總會給員工們升職的機會,或者你在追求某某人時,某某人總會給你的機會,只不過每次你都錯過了,任何事情看似偶然,實則必然。
接下來,我但願本身不只僅要有明確的行動去實現職業規劃中的目標,還但願本身在人際交往中,不管是團隊,仍是追求某人或者和某人在一塊兒,都要儘量的換位思考。
談到(2),要有本身的核心競爭力?
記得看過一篇文章中說過,隨着IT的門檻相對而言,愈來愈低,開發人員愈來愈多,伴隨着質量廣泛不是特別高,我知道我說這句話,會有很多人噴我。可是事實就是這樣,開發人員流動性很強,跳槽更是廣泛,寫代碼不規範(除了一些大中公司有必定的代碼規範約束,其餘中小公司通常沒有什麼規範,全靠自覺,包括我本身代碼也寫的是亂七八糟,不過意識到這一點後,我嘗試着讓本身的代碼可讀性變好,改進本身的代碼,業界中Java開發的代碼規範,我以爲阿里巴巴的Java開發守則值得參考),僅僅只是關注用技術實現業務,不多深刻理解業務,以爲理不理解業務不關本身的事情。
看下圖,我列舉的幾個招聘網站上的例子:
圖一:
圖二:
經過圖一和圖二,我只想代表兩個觀點:
第1、程序員的核心競爭力,不只僅來自技術上的積累,還來自業務,技術是實現業務的工具,業務是用來賺錢,沒有業務,技術也毫無用場;
第2、隨着如今程序員愈來愈多,你要想不被淘汰,你要有意識的培養本身在某個領域的深度,能夠是技術,好比分佈式的研究,存儲等,也能夠是業務,儘管你的技術不是很是牛逼,可是你對業務的深度理解,有助於進入業務對口公司;
記得看過阿里的某位技術人的文章,提到過,你對業務架構的價值領會的深度與廣度決定你身處的位置。在這裏仍是要強調一點,程序員不能僅僅只關注技術,而忽略業務。若是你還想更進一步,業務是必須的。
總而言之,程序員的出路能夠有不少,你能夠選擇到30歲之後或者不到30歲去培訓機構當老師,還能夠自主創業(固然了創業有風險),還能夠一直專一某項技術成爲領域專家,也能夠進階到管理層面。
出路有不少,關鍵是出路是否長遠。這個須要本身深度思考。
談到(3),既不要妄自菲薄,也不要驕傲自滿。不少人,也包括我本身看到比本身強的人,會有點自卑,同時也伴隨着嫉妒。若是要說怎麼解決?答案是有不少解決方案。你能夠選擇去向比本身厲害的人學習,也能夠選擇給本身定一個小小目標,而後慢慢實現一個有一個,固然了,還能夠選擇無視(不過你以爲你能無視嗎,我是不能,嫉妒也不能解決問題,解決問題的最佳方式是面對問題,這就好像人與人之間交際的過程當中遇到問題時,問題並非拖着解決的,而是經過面對解決的。驕傲自滿更是要不得,不要以爲老子天下第一,世界上比你強的人多的是,我曾經也由於本身寫過某段程序,而別人沒有寫出來而沾沾自喜。到最後發現那些都是屁,沒什麼好沾沾自喜的或是狂妄。我以爲還須要學習不少。將來還有很長,可是也不是那麼很長,我但願本身可以虛心而不自大,樂於助人,樂於助人在於彼此提升。
談到(4),實事求是很重要,不要給本身定一個難以實現的目標,那樣既不現實,也會挫傷自信心。就像《深度思惟》的做者說過,既然不能少年得志,那麼大器晚成也是很不錯的。
我還想強調一點,成長比金錢更重要,特別是對於工做年限不長的朋友們,當眼前的工資足以解決本身的溫飽時。有很多IT朋友們,是由於發現沒法在這家公司得到更多的成長時離職,也有是工資給的不到位,還有的是以爲太累的。不過我最想給本身的一句話是,在一家公司以爲本身有很大的成長空間時,能夠暫時忽略來自外部的巨大誘惑,好好專一本身的領域,提升本身。
這篇文章我一直想寫,可是每次落筆時,沒法進行下去,由於難以靜心。其實此次寫也是難以靜心,可是寫的過程當中逐漸使個人心慢慢靜下來,同時思緒也打開了不少,即給本身看,又給廣大的IT朋友們或者是即將進入IT界的大學生們看。