三次技術轉型,程序員的北漂奮鬥史

點擊上方“程序員江湖”,選擇“置頂或者星標”

你關注的就是我關心的!

作者 | 門心叼龍

責編 | 伍杏玲

出品 | CSDN博客

臥室裏家人已經熟睡,雖然已經是深夜11點多了,我卻一點睡意都沒有,窗外的馬路上依然是車水馬龍,我坐在電腦桌旁,帶着耳機聽着汪峯的《北京,北京》,想着MV裏面裏的那些人,高樓林立、街景複雜、平凡的男女,爲了生活,奔波在這座城市的角角落落。

2012年,爲了當年的夢想,我離開了自己工作了5年的古城西安,來到了這座年輕人都向往的城市–北京,從此開啓了我的北漂生活。

這一晃就是7年,其實在大學畢業後,2007年參加工作算起,自己已經幹技術有12個年頭了,在這12年的時間裏,見證了中國互聯網的發展,從PC互聯網到移動互聯網,自己從ASP到JavaEE,再轉型到Android應用開發的三次技術轉型,而今年又是Java語言誕生的24週年,Java作爲當今最流行的編程語言,它承載着一代編程人的青春和熱血。在這個特殊的日子裏,我想很有必要寫一篇關於Java學習歷程的文章,來紀念即將逝去的青春歲月。十二年風雨兩茫茫,三次技術轉型,不思量,自難忘,披荊斬棘,處處話輝煌。

上個周寫了一幅字“Java無敵於天下”,這也是平時我的一點喜好。

16年前我與VB結緣

這一切都要從16年前說起,2003非典那一年經過高考的洗禮,自己從陝南安康的一個小鎮,和自己姑父拿着母親給買的兩個大挎包,坐着綠皮火車經過一夜的顛簸,翻過大秦嶺來到了13朝古都西安,走進了大學的校園,這也是我人生第一次坐火車,第一次走出家鄉來到大城市,一切都充滿着嚮往與好奇,爲此在走之前的前一天晚上我激動的失眠了。

報道、軍訓、分班和全國各地五湖四海的同學聚在一起學習、生活,很快一學期就結束了,一切都是那麼美好,就在這個時候發生了一件讓我備受打擊的事,期末考試的時候,自己的計算機基礎與原理科目掛了,全班40多人,就我一個沒有過。

自己是一個自尊心非常強的人,我當時就立下誓言,我一定超越其他人,於是在第二學期一開學的時候,我就在校外報了一個計算機二級VB培訓班,在自己的努力下,經過三個月的學習自己順利的通過了計算機二級考試,當時自己也是班上第一個拿計算機二級證的人,爲此還驕傲了很長一陣子,說實話雖然當時考過了,感覺就是拿了個證,僅此而已。

一次轉型ASP

2007年前後,ASP以其簡單易學的特點,成爲了當時最爲流程的Web開發技術,當然自己也加入它的學習行列,因爲自己之前有過VB的學習經歷,所在現在學習ASP就輕鬆了很多,ASP就是基於VB語言的。

大學畢業後自己順理成章找了一份兒ASP開發的工作。當時公司也是剛剛成立,人馬不夠,自己就身兼多職,除了平時做開發之外,另外一個非常重要的工作就是負責公司服務器的維護和管理。

那是一個黑客縱橫的時代,剛進入公司一個多星期寫了幾個頁面,第二個周的某天的早晨和往常一樣,打卡、開機、擼代碼,打開電腦後自己傻眼了,自己寫好的ASP頁面都打不開了,所有的ASP文件都變成了一個熊貓燒香的圖標,這就是中國網絡歷史上著名的熊貓燒香事件,那一天公司的幾乎所有的電腦都中標了,損失慘重。

那段時間,公司服務器的的多個ASP站點也隔三差五被黑客入侵,我清楚的記得那時候黑客直接修改篡改了站點的首頁,並留下了銀行賬號,把站點的源碼都拷貝走了,要求打款纔給源碼。

公司老總做了重大決定:實行白班夜班兩班倒,來堅守看護服務器的運行。

在我看來這是一個非常愚蠢的決定,最後在我的建議下,進機房對服務器進行全盤格式化,從新做系統,做完系統升級打補丁,安裝IIS,SQLServer2000,配置站點,經過一夜的奮戰,服務器各個站點重新正常運行,可沒過多久,網站再次被黑,不過這次都是小的頁面篡改,並沒有入侵到服務器內部。

找漏洞、程序打補丁,這樣幹了一年。這就當時的中國石油工具網,昨天還特意上網查了下,這個站點已經關停了,公司也倒閉了,畢竟已經過去十幾年時間了。

二次轉型Java

在第一家公司幹了一年的時間,2008年初我離職了,到了另外一個公司,這一干就是5年的時間。

第一年很平常的做了一年的ASP開發,直到2009年,公司用ASP開發了一套付費閱讀系統,發現了一個非常嚴重技術漏洞:生成的HTML靜態頁面可以繞過登錄直接進行免費閱讀。

而這個問題用當時的ASP技術可以說是一個無法解決的問題,網上查了一圈兒得知通過Java添加攔截器可以解決它,再加上ASP一系列的安全性問題,公司決定所有技術開發人員轉型幹Java,用SSH框架對這套收費發現系統重新開發。

由於老闆要的是進度,並沒有對Java基礎做過系統的學習,直接網上找了一個開源的SSH框架,研究了一個星期,配置好系統開發環境,經過了稍微的個性化改造,框架搭建好,直接就開始開發了。

雖然有些地方當時還看不明白,但是都是模板化的代碼,經過團隊兩個多月的奮戰,開發完畢,通過對訪問的所有頁面添加攔截器進行訪問權限的判斷,完美的解決了HTML頁面直接訪問的問題,另外系統的安全性也大大的提高了。

通過這次的轉型升級,讓我深深的感受到了Java的強大。

項目是開發完了,有了空餘的時間,但是有些地方還是不是很明白的,自己決定對Java基礎進行重新的學習,當然看視頻教程是最直接的學習方法了。

在那個學習資源貧瘠的年代,當時我找遍了整個互聯網,就找到一套比較完整還算能看的視頻教程:孫鑫主講的《Java無難事》共12課時每節課平均兩個小時,從簡單的Java語法、if、For語句開始,再到接口、抽象類、IO流、多線程,學了兩個多月,也算是Java基礎入門了,接下來就是Struct1、Struct2、Hibernate、Spring的慢慢學習路。

三次轉型Android

這樣一干就是三年的時間,直到2011年,隨着移動智能手機的橫空出世,人類從PC時代進入了移動互聯網時代,新聞報道中國移動互聯網開發人才缺口近百萬,以後肯定是移動開發的天下,於是我就萌生了學習的Android開發的念頭。

當時公司也沒有人知道我學這個技術,網上當時也找了一些零散的資料,從Android四大組件開始,不知不覺就學了兩個多月。

就在這時公司的老闆也看到了移動互聯網的機會,決定把公司這套收費發行系統移植到Android手機上,我心裏暗自高興,練手的機會來了。

可是領導決定把這個項目外包出去,當時我作爲技術部負責人,當着老闆的面,我說我已經研究兩個多月了,我們都是幹技術的爲什麼不自己做,要外包出去。如果自己來做,以後技術維護也方便,還能給公司節約開發成本。

老闆半信半疑,覺得我說的有些道理,就把這個事情交給我,當時也就我一個人,後臺是另外一個人做的,就這樣拼搏了三個月項目上線了。

這件事告訴我們凡事預則立,不預則廢,機會都是留給有準備的人。

我的北漂夢

就這樣通過一個實戰項目的鍛鍊,我感覺自己技術積累的已經差不多了,我要到更大的城市去闖一闖,上大學的時候一直夢想要來首都發展,才畢業的時候感覺技術還不過硬,經驗積累不夠,這樣一晃就是五年時間過去了,是時候了。

我清楚的記得走的那一天,晚上的火車,一起共事的同事那天也正好離職了,說過來聚一下,正好給我送行,那天我們喝了一點酒,走的時候天下起雨,嘩嘩啦啦下個不停,自己打了個出租車,很快就到了火車站,那晚的火車晚點了三次才走,經過綠皮硬座火車一夜的搖搖晃晃,第二天下午安全抵達北京西站。

接站的是我的高中同學,一天一夜的舟車勞頓,出了火車站以後一身的疲憊已經消失的無影無蹤,拖着沉重的行李箱,我們直接的奔向了天安門,走在寬廣的天安門廣場上,遠望着長安街對面的天安門城樓,我大喊了一聲:北京我來了!

這是一個全新的開始,第二天我在智聯招聘、51Job海投簡歷,這段找工作的經歷使我終身難忘,甚至超過了剛畢業第一次找工作的那個時候,經歷了近兩個月的時間才把工作的事情落實下來,本以爲自己已經很牛逼了,結果四處碰壁,後來回顧這段歷史,還是北京人才濟濟,自己Android基礎不牢靠。

後來我經常和同學們聊起這段往事,我就感慨萬千,真是不容易,當時我是9月1號抵達北京,都快到了10月底了工作的事情還沒有落實下來,我真是一點信心都沒有了,把回去的火車票都定好了,把房子裏面的東西都打包好,把電腦,一些衣服郵寄回去,準備打道回府回西安,下樓去找快遞,就在這個時候一個電話打斷了回去的計劃,這是一家公司讓我去面試的電話。

我想,我要再去試一試,就是這個電話,改變了了我以後人生的發展軌跡。

第二天我早早的就去了要面試的公司,與面試官簡單的介紹一下自己,面試官給了一張紙、一支筆,說寫一個冒泡排序。

我拿着筆,兩分鐘時間寫完。面試官連說三個好,面試通過了。

人生它就是這樣的戲劇性。

這次的經歷告訴我,堅持是多麼的重要,用馬雲的一句話來說就是:今天很殘酷,明天很殘酷,後天很美好,很多人都死在了明天晚上而看不到後天的太陽。

這是一家創業公司開發一款打車出行的App,類似於現在的滴滴打車,幹了不到一年時間,由於資金鍊斷裂,就倒閉了,這一年自己狠狠的把Android基礎補了一遍,開年就開始重新找工作,這次自信了很多,也很順利,很快就搞定了。

在這一干就6年的時間。

除了技術,還有藝術

一切都是按部就班,默默無聞的在這公司幹了兩年,2014年公司要搞年會,我想這是一個展示自己的大好機會,於是我也報名了,但是公司負責節目的人事總監並不看好,平日默默不聞的你,也能上臺演節目?但我就是這樣一個人。

這是自己原創的一個節目,劇本都是自己一個字一個字寫的,坐在地鐵上,公交上,時不時有好點子蹦出來,自己就一點點地記下來,自己花了很多的心思,最後定稿兩千多字,自己一個人在臺上脫稿20分鐘,有陝西方言話的脫口段子,有6分鐘的唱歌,最後一段兒還有一個跳秧歌的舞蹈,臺下四五百號的公司員工,頂着巨大的壓力,最後節目贏得了滿堂彩。

當時我心中就只有一個信念就是要挑戰自己,人生就是要賭,否則你連贏的機會都沒有。

那次領導們重新的認識了我,都豎起了大拇指頭給我點贊,開年後,領導找到我暢聊一次…。從那以後自己成了公司年會的常客,2018年會再次參加了表演的的節目是“新聞歪報”。

除了技術,還有書法

平日除了研究技術,最大的愛好就是寫毛筆字,前一陣子,喜迎Java誕生24週年,忙活了一天,寫了幾幅字,希望各位碼友都能馬到成功。

2017自己參加海淀區職工書法大賽還獲了獎,我把自己平日寫的字都傳到了CSDN上。

除了技術,還是技術

在CSDN的賬號09年就註冊了,而堅持在CSDN上寫文章是從今年年初纔開始的,也只有大半年的時間,堅持一週一篇,保質保量,分享實戰開發經驗,傳業授道解惑,原創81篇文章,瀏覽量25萬+,開通了五個專欄。

5月16號,大清早一不小心成專家了,也感謝平臺的支持、肯定、與認可,知識在於分享,寫作使你思路更加的清晰。

我是一名熱愛開源開發者,喜歡把自己的代碼分享給他人,方便他人學習和提供建議從而完善代碼,我追求開發高質量及擁有良好用戶體驗的應用,擅長應用架構設計,編寫了組件化+MVP框架FlyTour ,並把其發佈到 GitHub 頗受好評;同時在後端也有一定研究,到目前爲止已經形成了自己Fly系列的八大開源框架矩陣,GitHub地址:

https://github.com/geduo83/

編碼要有道

三次的技術轉型,讓幹技術的我經常在感嘆,技術更新換代太快,但是不管怎麼變,永遠不變的一個核心思想就是“調用更加方便、更加安全、架構清晰、代碼簡潔、反對臃腫、代碼之間的耦合度更低”,這是一個好的軟件永遠追求的目標。

在唐代有一位大詩人叫白居易,他每作一首詩,都要給不識字的老太太念念,老太太能聽懂的,就要,聽不大懂的,就改,這也是爲什麼他的詩一直在民間廣爲流傳,而且還流傳到了日本。

而我們寫代碼也是一樣的道理,越簡單也好,我曾經看過別人寫的一個關於App應用市場下載的功能,一個簡單的功能搞了十幾個類,各個類之間層次不清,引用關係混亂,實在讓人看不下去,一個好的工程師,不在於你寫了多麼複雜的功能,而在於你寫了一個多麼好的功能,代碼簡潔,結構清晰,人人都能看懂,這纔是好代碼,反對臃腫,真正的做到了簡約而不簡單,這纔是編碼高手。

技術要過硬

軟件開行業有這樣一句話,初級程序員寫UI,中級程序員寫框架,高級程序員寫算法。

初級開發員不懂原理,不懂底層,只會調用框架。中級開發人員能夠熟練各種框架的使用,並能根據自己項目的需要,搭建屬於自己的項目框架,也就是我們所說的架構師。高級資深開發工程師是指在某個技術領域細分領域有自己深入系統的研究,比如在IM及時通訊、視頻直播、系統安全,性能優化等方面的資深專家,這些都是可以深耕細作的方向,形成自己的核心競爭力。

另外作爲軟件開發人員,還是要有些工匠精神的,對於我們所寫的代碼,大部分開發人員都是開發完了,測試沒有Bug就完事了。

其實我們在做完之後可以回頭看看有什麼可以優化的地方,包括我們的每一個類的命名,變量的命名,方法的命名有沒有更合適的我們都要仔細去推敲,對於自己寫的每一行的代碼,實現的每一個功能有沒有更好的實現方式?有沒有什麼更好的架構設計?我們都要深入的思考,把它當做是自己的一件藝術品去打磨。

最後我還要說一點兒,作爲技術人員永遠保持對新技術的狂熱,永遠保持對新技術的好奇心,對於新出來的技術要快速的去研究並掌握它,保持自己在整個行業的領先地位,形成自己的核心競爭力。

什麼是自己的核心競爭力?

我認爲就是:“別人會的,你也會,別人不會的你也會,而且還研究的非常深入”,這就是你的核心競爭力。

人品要過關

作爲一個技術人員,不但要技術好更重要的是還要人品要好,平時除了技術我最大的愛好就是寫毛筆字。

我最喜歡的四個字就是“厚德載物”,低調做人,高調做事一直是我的風格,這些年在這個行業形形色色的人也見了不少,有的搞技術官僚,搞形式主義,有外行領導內行型的,這種類型是最可怕的。

有新技術,新框架自己不懂反正就是不用,有保守型的,記得在多年前由於工作需要認識了一個在IBM工作的夥計,技術很牛,時常向他諮詢一些技術問題要一些技術資料,總是一句話”網上都有,你可以的網上查查”。

還有滿瓶子不響半瓶子晃盪型的,有的人知道一點兒,就覺得自己牛逼的不行,而且這種人還不少。

我覺得作爲一個幹技術的人,你永遠要記:山外有山,人外有人,永遠要保持謙虛,才能保持你在這個行業持久發展。

技術和人品都是成正比例的,我記得牛根生有一句很著名的話:“有德有才破格使用,有德無才培養使用,有才無德限制使用,無才無德堅決不用”。

人生要總結

我們80後這代人,時常在感嘆,我們上小學的時候人家上大學是免費的,而且工作還是分配的,我們上大學的時候人家上小學時免費的,當我們大學畢業的時候,房價是暴漲的,我們中考的時候國家中考改革,我們高考的時候,國家高考改革。

做技術的我們有的隨着年齡的增長,已經不做開發轉做管理、轉做產品了,這樣的人也是大有人在,在軟件行業有很多人都在講:這是吃青春飯的。

其實我一直認爲:年齡不是問題,要知道年齡越大,技術經驗越豐富,除非自己很菜,沒有自己的核心競爭力。

北漂7年了,7年前暫時的離別,也是爲了7年後最好的相聚,此時,我想起了《鋼鐵是怎樣煉成的》主人公保爾·柯察金說過的一句話“每當我們在回首往事的時候,不因虛度年華而悔恨,也不因碌碌無爲而羞恥”。

每當聽着汪峯《北京北京》都有着不一樣的感覺,靜靜地聽着。“歡笑、哭泣、活着、死去、迷惘……我在這裏歡笑,我在這裏哭泣,我在這裏活着,也在這死去。”

2019年6月4日 00:10於家中臥室

作者:門心叼龍

原文:https://menxindiaolong.blog.csdn.net/article/details/90760275

聲明:本文系作者投稿,轉載請聯繫原作者。

推薦閱讀:

程序員工資爲什麼普遍很高,原來是因爲這個...

【真實案例分享】面對BAT大廠的競爭對手時,小公司Java工程師是如何敗北的?【石杉的架構筆記】

喜歡本文的話,就點一下“在看”吧

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章