老兵的十年職場之路(二)

在上一篇文章老兵的十年職場之路(一) 裏頭,講述了我在初入職場時的一些經歷,從本身我的的感覺來講並非特別的美好,既沒有職位上的屌絲逆襲、也沒有使人興奮的意外成長,但也許這也是不少人所經歷過的,畢竟咱們都是"平凡"的人,一旦平凡就只能是"抱着不平凡的夢中度過這平凡的一輩子"...php

那麼,在接下來的這段職業中,我又經歷了什麼?相比第一段經歷,會有什麼樣的波瀾起伏? 下面讓我一一道來...html

第二家公司,是慕名而去的,之因此這麼說,主要仍是平時裏頭同事聊天時聽來的。
那時候的微博、微信都還在襁褓之中,咱們所能獲取信息的手段其實頗有限,除了百度和上目標企業的官網上看看介紹以外,更多的就是街頭巷聞。
固然,這家企業在移動互聯網領域的擴張很是快,連我原來公司的老闆都會拿來給咱們當作學習的榜樣...
真是不錯,直到後面離職時我也絕不避諱的告知了他個人選擇,而後是除了祝福的話以外,恍惚中彷彿看到了一絲黯淡。c++

別具一格的面試

記得是在清明節過兩天以後,我第一次去到新公司面試,除了前臺MM很熱情以外,還有就是對那辦公室佈滿的公仔和亮堂的燈光令我印象深入。
相比以前所在的死氣沉沉的寫字樓,感官上的差別很是的大。
面試個人是一個穿着沙灘花褲的"年輕人「,一上來也沒有問我什麼,更多的是嘮一些工做經歷。
中間我以爲無趣,多問了一句:據說這裏牛人不少,是真的嗎?
他笑了笑,故做鎮靜的說道:咱們都是"普通"人而已...
冷場十秒鐘後,又嘮了一些興趣愛好,而後是聊到陳奕迅的歌,我隨興唱了一小段以後,你們都滿意的結束了面試。程序員

以後,我一直以爲比較忐忑,這樣的面試是否是不大合適?但最終反正是經過了(花褲男是那部門的老大),
後來給個人體會就是有些事情不能老按常理去揣測。面試

新氣象

入職以後,天然是不少新氣象,有許多東西都是第一次接觸,因爲個人求知慾蓋過了壓力,因此那段時光只是一味感受到輕鬆且愉快的。
成長期的互聯網公司充滿了開放和創新的氣氛,這話不假。也就是到了這裏才知道原來除了Java 和 ssh 三大框架以外,還有那麼多人在使用其餘的編程技術好比 Php 的 Lamp,Python 等等,數據庫除了Oracle 以外,還有那麼多人在用 MySQL.Memcache 這些開源的數據庫中間件,而以前還曾天真的認爲數據庫是 Oracle 等商業數據庫的天下,MySQL 只是學生才用的玩意,真以爲本身像個井底之蛙。數據庫

全部的這些現象大概已經告示了公司的技術流派:擁抱開源!
沒錯,一切都是用的開源技術,這也包括了部門在使用的各類協同系統,基本上都是免費的開源系統搭建出來的,因此長的千奇百怪的不足爲奇。
可是開源協同系統的弊端也很明顯,除了長的醜以外,bug 也不少,要修復就得吃透整個項目的源碼,後來管事的以爲這樣下去不是辦法,因而啓動了一個的內部協同系統項目(基於Java開發),但願把這些千奇百怪的開源系統給替換了。
這裏爲何會提到新協同系統?由於當時我一開始是參與了這個項目的,但只是因爲項目比較乏味,基本上就是用的 ssh 那一套,因而我很快就申請轉崗去幹了別的…編程

編程語言之爭
前面提到編程語言的多樣性,的確,互聯網項目習慣於野蠻式的生長,基本上也都是用本身最熟悉的。因而在項目變多了之後這卻成了一件棘手的事情,好比:緩存

  • 人力資源難以調動,好比讓作 php 的去寫c++不合適
  • 代碼質量良莠不齊,一種語言就須要一套規範,而有些語言也很難找到規範
  • 新人培養上成本過高,甚至不少人並非很想嘗試太多新的東西

因而乎,就有了各類關於編程語言的討論,到底要採用哪一個做爲主流的技術,當時在內部社羣也爭論的很激烈,貌似最後也是沒什麼結果(編程語言之爭一直就沒停歇過),到後來從項目技術的覆蓋面上看,Java 是佔了絕大優點的。微信

我一開始所在的小組大可能是 Java 技術老鳥,老丁是隊裏的老專家,在每次代碼評審後也總會這麼說:
"這點代碼怎麼會寫很差阿,Java 簡單阿,無非就是些增刪改查嘛!"
從當時的項目看也的確如此,對於協同系統更多的就是理解好業務流程,定義好實體類,而後一通增刪改查…
而後是過了一年後,我從心裏裏就徹底推翻了這個想法。架構

修羅戰場

由於對手頭上工做沒有半點興趣,沒過多久後我就申請到了一個新部門,主要作社區類的平臺產品,然後者是就是所謂的自負盈虧部門,
這裏除了程序員以外,還有產品經理,運營妹子,運維大漢…傳說中的鄙視鏈現象也時不時在這裏出現,只是程序員和產品的關係彷佛沒那麼糟糕,這可能跟產品團隊都是妹子有極大關係,如今想一想當時的人力資源團隊仍是頗有智慧的。

在新項目中,我遇到了許多不曾遇到的挑戰,也就是在這裏我的的技術視野和能力都快速的提高了。所謂屁股決定腦殼不是沒有道理的,當你作的事情讓你感到本身像個小白時,你才能擁有巨大的提高空間。

項目的挑戰
社區平臺是一套的 Php 代碼實現的,一開始呢功能很簡單,但通過一年半的演進已經變得臃腫不堪。而隨着運營同窗的努力,用戶量也達到了幾千萬,整個系統開發維護效率極爲低下,很容易動一發則牽動全身。另一旦到了業務高峯期總會時不時的出現一些性能問題。
好了,這是系統的背景,接下來的事情就是重構!把一個龐然大物變成許多隻小飛象!
這裏聽着有點像是服務拆分的意思,但那會沒有微服務的概念,就是作成分佈式系統,一些原則和理念跟如今的微服務理念也基本是同樣的,諸如服務發現 隔離,業務降級,關注性能...
當時技術選型方面用的是Java ,Web 通訊框架則是由開源項目改造而來的,底層是封裝了Netty 用來實現 NIO高性能吞吐,而後是基於業務的特性實現了一套應用層的分庫分表框架,這主要是用來支持 MySQL 的水平擴展。除此以外,爲進一步提升性能,框架也集成了開箱即用的緩存能力(對接Redis集羣),這樣的配合基本上已經作到極致了,因而後來這套技術組合也逐漸統一了大大小小的項目。
因爲Java 掌握能力上的優點以及自身的求知慾,我很快就把這套框架的源碼給摸透了,固然這些實現並無包括以前用的 ssh 框架,這是一個很是輕量級的開發棧,風格上更像是Ruby on rails。裏面拋棄了許多 J2EE 的東西,對 Restful 的支持很是好,並且在當時Restful也是許多大平臺的首選,好比新浪微博開放接口...總之用起來是很是清爽的。
而後說由於對技術框架比較熟練,因而會常常幫同事解決一些問題,慢慢的就成了項目骨幹。再後來就是陸陸續續負責一些核心業務的開發,重大問題攻關以及作一些框架規範化管理類的東西。

這裏說到規範,不得不提關於代碼註釋的事情,團隊在註釋的要求上是很是嚴格的。你們基本上都認同的一點是:
"自解釋代碼根本不存在!因此不要由於以爲代碼寫的好就能夠不寫註釋!"
超哥是同事裏的老專家,寫了十多年代碼仍然能堅持把註釋作到極致的清晰,足見對於工做嚴謹的態度。

影響深入的事情

在一段快速成長的經歷裏面,必然會有那麼幾個時刻,讓人始終記憶猶新。

A. 怎麼樣都寫很差的文檔

有一次主管讓我爲一個自動化框架編寫一個用戶手冊,我不以,花了一上午加一個小時給整好了。發到工做羣裏後被一陣痛批:
「這是給別人看到仍是你本身看的?「
「Api請求頭說明到哪去啦?「
「把所有錯誤碼放到一個表格很差嗎?「
...
也就是從那件事以後,我開始認真對待個人每一篇文檔博客,直到有一天,某位大師跟我講:
「嘿,我以爲你小夥子不錯!」
「爲啥?「
「由於我看過你的文章!「

B. 突如其來的救火

有一次系統上線了一個緊急補丁,結果因爲併發性能問題直接致使系統局部宕機,我在快速攻關後定位到了根因。在問題重現到代碼修復足足花費了兩個小時。這時已經超過了維護時間窗口,若是再進行測試時間將致使問題出現一再延遲,更嚴重單事情就是用戶流失。
記得那會你們都很是焦急的時候,一直很平靜的主管忽然對我吼了一句:"能不能保證質量!"
他的音量很大以致於周圍的人都驚詫了,而後是我硬着頭皮說 "能..."(當時也只好這麼說...)因而在沒有測試的狀況下有驚無險的上線了新補丁。

「工做就是打仗,互聯網行業裏用戶爲王,用戶就是上帝」
這是我所獲得的體會。

C. 羣猿的通宵夜

一次平臺的重大升級變動中,咱們團隊和運維的大漢兄弟們進行了緊密的協做。由於版本變動太大屬於架構級別的變化,因此你們都是不敢懈怠的,運維和開發的兩兩配對,每一步的操做都要另外一我的二次確認。
儘管如此,期間仍是問題不斷,好比髒緩存問題,dns出錯等等,整個變動和保障花了整48小時,吃睡也都在小黑屋..
能夠想象當時空氣中瀰漫的那種宿醉的異味。
固然這些異味不是重點,而是,在完成升級以後的凌晨,產品經理和運營經理都來找咱們質問,
"爲何系統中斷了半個小時,不是說好平滑的嗎..."

你所認爲的很值得驕傲的事情,在別人看來可能不屑一提,由於你們的想要的東西並不同。

其餘的事

若是讀過個人一篇文章的朋友可能還記得,在我第一家公司裏頭髮生了許多八卦的事情。然而在這裏,我幾乎一點花邊新聞沒有收到,爲何?緣由可能有這麼幾點:

  • 公司處於快速的上升調整期,高管彷佛都把心思放在了事業上面
  • 身邊的同事,包括我都扎進技術裏頭了,對這類事情並不關注

惟一會聽到的小道消息可能就是諸如某某跳槽去了某遊戲公司,薪資翻倍什麼的之類,可是聽多了會懂得這個就是常態的東西。
而更多的時間裏就是你們都在爲項目或是自我提高而持續的奮鬥着。記得當時的主管講過一句話:
"最恐怖的是,比你牛的人比你還要努力!"
這話一點沒錯的,團隊呈現出來的特色只有努力兩個字了。同事裏不乏能力強又謙遜的,有些至今已成爲了業界裏有影響力的技術專家。

整體來講,我算是在一個比較好的時期加入了這家公司,在團隊規模上恰到好處。同時管理層是技術出身,其對於開放,創新文化很是的重視。
因此,很重要的一點是,不多會碰到如大企業各類繁雜的流程,勾心鬥角之類的事情。
公司是移動互聯網領域的佼佼者,我所在的兩年半里規模擴張了一倍不止,在阿里收購之際,我也離開了公司。順帶還拿到了一點期權回購的錢,儘管那點錢其實不多,但卻在我最困難的時候成了個人救命稻草!

曾經一位前輩跟我講過,只要你一直在學習,當你作了五六年以後會達到一個小高峯。
的確是這樣的,當時的我以爲本身技術還不錯,幾乎什麼系統均可以去作,甚至以爲不少事情好像都很容易。
那個階段是移動互聯網的風口,各類互聯網人創業成功的故事也是滿天飛,在這樣的環境中,我在一次偶然的機會下選擇離職創業,又開始了下一段旅程。

(未完待續)

相關文章
相關標籤/搜索