這篇文章寫於去年年末,爲了參加公司內部的一個徵稿活動。本來只是想在博客中作一個備份,並未想過發表,可是今年互聯網形式依舊嚴峻,再次爆發幾回大規模裁人潮。時隔一年,我決定把這篇文章分享出來幫助那些對前途感到迷茫的朋友。css
夜已深,提交完最後一個 commit,終於能夠安心睡下。前端
在獵頭的眼裏,我不是根正苗紅的程序員。何爲根正苗紅?計算機專業畢業,從畢業起就從事特定方向的開發工做,這纔是獵頭眼中的香餑餑。程序員
我是設計出身,若是不說出來,幾乎沒有人知道我這段黑歷史。我是一氣之下逃離了設計行業,以後在徘徊和猶豫中選擇了前端。畢業以後作三維設計的那段歲月,能夠用悲慘形容,每當和人提起,我總會有點自嘲的說「睡過凌晨一點的辦公室,吃過凌晨三點的便利店,作過凌晨五點的首班車」。可是回頭想一想,我卻要感謝那不堪的經歷,讓我找到了適合本身的方向。面試
做爲技術人員,我一直有個疑問,什麼是你引覺得傲的資本?面對已經來臨的資本寒冬,應該何去何從?後端
大學期間,我每一年都會給本身總結一個詞語。回首作技術的這幾年,我一樣給本身總結了幾個關鍵詞。但願你們能夠從中受益。前端工程師
在如今這個浮躁而又拜金的社會,我相信不少人作技術並不是出於熱愛,只是被互聯網的高薪吸引,畢竟技術崗位很是枯燥,不只要面對奇奇怪怪的需求,還要不停的充實本身避免被淘汰。因此想要吃好技術這碗飯並不容易。學習
雖然我在大學選擇了設計,但我不是一個感性的人,註定沒法突破設計工做的瓶頸,因此從剛開始工做,我就對本身的職業發展感到迷茫。在作三維設計的過程當中,我喜歡上了參數化設計,漸漸的找到了自信,最終促使我轉戰技術崗位,也算是從小學習理科的歸宿。我一直在思考,我喜歡什麼,我適合什麼,我應該從事什麼崗位。個人前同事東哥和我境遇類似,只是他比我畢業早了差很少十年,畢業以後讀了在職碩士,有近三年沒有休過週末,這一點我很佩服。優化
選擇的重要性不言而喻,若是方向錯了,再努力也是徒勞。回首走過的這幾年,我自認爲我在關鍵的節點作出了還算正確的選擇。我身邊有不少對職業發展迷茫的朋友,並非每一個人都有那麼好的運氣和毅力,不少人依然是在抱怨中繼續作着不喜歡的工做。翻譯
在我後來作面試官的時候,我接觸過不少開發者。有自學轉行,也有培訓以後轉行,可是大多都是盲目選擇,並不知道本身真正適合什麼,因此工做幾年,依然沒有太多的亮點。設計
自律對技術人員的成長很重要。每一個技術人員都要知道在什麼時間該作什麼事情,該看書的時候看書,該放手的時候放手。正如前文提到的,當你選擇了技術行業,那麼毫無疑問你必須約束本身,咱們的時間是有限的,因此不可能有太多的時間去打王者,或者去刷抖音。
前段時間,個人一個發小向我吐露心事,畢業兩年,依然渾渾噩噩,看不到將來,打算學習技術。我告訴他,先把基礎書籍刷一遍,若是能堅持看下去,那麼找一份技術相關的崗位並不難,若是看不進去,那仍是算了吧,即便僥倖找到工做,天花板也是有限的。最近,個人這位發小告訴我他已經放棄了。
我一直以爲本身在大學並沒學多少東西,只是學會了忍耐,磨練了意志力。在無聊煩躁的時候能夠看看書。
在學生時代,我強迫本身每一個假期讀兩本名著以及堅持繪畫。如今,我強迫本身每個月寫一篇文章或者翻譯一篇文章。
任何行業都必須堅持纔會有所收穫,好比咱們經常談論的三萬小時定律。然而技術人員應該堅持什麼?這取決於你的興趣。堅持寫博客,堅持讀技術書籍,堅持作開源項目,堅持答疑解惑等等,能夠堅持的東西不少,咱們不知道結果如何,但過程自己就足以使人興奮。堅持的前提是自律,若是沒法約束本身,堅持也無從談起。
剛作技術的時候,我也很迷茫,只是針對性的看一些教程,彌補本身的弱點。那時候我還不知道做爲技術人員引覺得傲的資本是什麼,若是隻是循序漸進的作業務,不免讓人感受無聊。大學時,我也曾爲夢想堅持過,惋惜一切都成爲泡影,因而我明白了夢想和現實的差異。
從我踏足技術崗以後,我開始寫博客,主要記錄遇到的問題。我喜歡翻譯,中途加入了伯樂在線的翻譯組,這段經歷收穫很大。不得不說,做爲技術人員,若是英語很差,技術積累將很是困難。我喜歡閱讀並翻譯 csstricks,scotchio 上的文章。至於爲何喜歡翻譯,有兩方面緣由吧:一方面,翻譯文章有利於提高本身的英語水平;另外一方面,國外的技術文章質量很高,翻譯的同時能夠學到不少新技術,國內不少優秀的博文也是基於國外文章翻譯而來。在積累的過程當中,文章逐漸獲得你們的承認,嚐到了一些甜頭,這也成爲我前進的最大動力。
如今,我堅持作開源項目,從無所下手到給開源社區作貢獻須要不屑的努力和思考。做爲前端工程師,選擇的方向有不少,能夠從優化體驗入手,不經意之間可能就會誕生不錯的項目。如今,看到本身的小項目獲得你們的承認和喜好,心裏多了一份責任感。
我不知道究竟什麼狀態纔算忘我,或許我也沒有經歷過。忘我不是不吃不喝,而是對工做的熱愛,好比問題不解決就展轉難眠。程序員被認爲是遠離燈紅酒綠的工做狂,大多數時候都與孤獨爲伴,從前年開始,我變得特別宅,幾乎放棄了社交和娛樂活動。
以前作開源項目的時候曾有過一段時間的瘋狂。因業務繁重,每晚差很少十點到家,爲了能更快的完成項目的初版,回家以後還要繼續工做,凌晨一兩點睡覺成爲常態,那段時間真的是有點麻木,筋疲力盡。其實作設計的時候也很瘋狂,那也是被逼無奈,可是最終並無換回本身應得的一切。
不少時候我不知道這樣作會換回什麼,可能依然是一無全部,可是有所堅持總比無所事事要好一些。正如羅曼·羅蘭說過的,「生活最大的煩惱不是工做,而是無聊」。
若是問一個面試官最看重應聘者的哪一方面,我想必定是解決問題的能力。
解決問題須要一種心境,沉着冷靜是解決問題的前提。我發現不少人在遇到問題時,馬上就在 QQ 羣或者論壇提問,其實都是一些比較基礎的問題,這不是一個好習慣。技術人員必須學會獨立思考,畢竟大多數狀況下只有本身能夠拯救本身。無論遇到多難的問題,首先要冷靜,而後慢慢分析問題的緣由。說一些我經常使用的解決問題的方法。
1、睡前思考。 躺在牀上閉上雙眼,回顧一遍遇到的問題,很是管用。記得上初中那會兒,我喜歡在睡覺以前或者上學的路上解幾何題,有趣的是,每每都能獲得答案。剛工做時,我還有個怪癖,喜歡在解決問題以後大吼一聲甚至手舞足蹈,想要釋放一種壓力。因此每次遇到問題,我老是告訴本身,明天這個時候我就會大吼一聲,真是有點可笑。
2、學會放鬆。 說一件自豪的事情,大學期間,我幾乎玩遍了塞班手遊,總結出不少道理,其中之一是,任何難闖的關卡在休息一晚以後均可以輕鬆完成,技術問題每每也是如此。
以上說的都是比較虛的方法,實際點的好比瀏覽 stack overflow,翻一翻 GitHub issues。
關於這一話題的故事有不少。千禧年之際,谷歌的核心繫統(抓取網頁而後構建「索引」)中止運轉,一切都變得很是糟糕,幾乎威脅到整個公司的命運。多名工程師奮戰四天四夜依然無果。他們檢查了全部代碼的邏輯也沒有發現 bug。第五天,Jeff 和 Sanjay 開始懷疑問題可能不在於邏輯,而存在於物理層面。最終,他們將索引文件轉換成了二進制代碼,用最原始的方式確認是機器的存儲芯片被破壞了。Jeff 和 Sanjay 是谷歌惟二的高級技術專家。
做爲技術人員必須有所追求,好比代碼潔癖。林納斯對不規範的代碼老是直言不諱,「你的代碼是一坨狗屎」。不知道從何時開始,我也有了一點強迫症,DOM 層級,CSS 屬性順序,變量命名,末尾分號,空行等等,差一點就感受不舒服。
除此以外,不要把工做侷限在需求以內,在前東家的時候,技術經理一直強調作點工做以外的事情,申請一些專利,雖然有些面子工程的意思,不過我同意這種觀點。做爲前端工程師確定不能只是寫頁面,然後端工程師也不該該只是作 CRUD 的工做。
不少人不知道應該追求什麼,正如前文提到的,這要看你本身的定位與興趣,畢竟做爲程序員,愛好應該很是普遍。若是你把工做做爲興趣,我以爲也無可厚非,把工做作到極致也是一種追求。
若是如今回答文章開頭的問題,我想只要認真作一件事情並堅持下去,或許就會成爲引覺得傲的資本,即便資本市場再寒冷,咱們依然能夠從容應對。
曹丕的《典論·論文》有句很是經典的論述:「蓋文章經國之大業,不朽之盛事。年壽有時而盡,榮樂止乎其身。兩者必至之常期,未若文章之無窮」。這是我記得很熟的一段話,主要是講文章的功能性,文章是超越生死的載體,經過文章,做者能夠聲名遠播,流芳百世。一樣地,技術人員的著述以及開源項目就是實現自我價值最好的體現。