致職場新人:我初入職場曾多次吐槽公司技術爛

一入IT深似海

不知道你有沒有過這樣的經(jīng)歷:剛剛進入職場時,進入公司實習妖混,沒多久就發(fā)現(xiàn),為什么公司的技術也這么爛啊轮洋,啪啪啪制市,隨意就能指出十幾個問題來。

我們當初四十幾個同學大四集體去北京找實習單位弊予,當時學校把我們集體安排住在一棟排屋里面祥楣,我們工作之后下班經(jīng)常坐在一起閑聊,聊的最多就是吐槽自己的公司代碼很爛汉柒,當然也包括進入BAT公司的同學误褪。

一、為什么我公司的技術這么“爛”碾褂?

Too Young Too Simple Too Naive

五年過去了兽间,當我最次回想當年的閑聊時,狂笑當年的我們Too Young Too Naive正塌。

你只看到了爛的表面嘀略,而背后的邏輯和原因思考過沒?大學里學到的所有典型的策略乓诽、算法帜羊、邏輯,在職場里鸠天,只是最基本的一些東西讼育,甚至可能是已經(jīng)被顛覆的東西,比如數(shù)據(jù)結構里強調的第三范式在高并發(fā)場景中早就被摒棄了稠集,也就是你即便在課程里得到了滿分窥淆,你來到職場,依然可能是菜鳥一名巍杈。因為你所面臨的場景、業(yè)務環(huán)境扛伍、需求變更的頻次筷畦,和你在學校里學到的完全不同。

那么是不是說你就不能發(fā)現(xiàn)職場的問題呢刺洒?當然不是鳖宾!我們先來說說職場上所謂技術問題是哪些原因造成的。

1逆航、年代久遠鼎文,菜鳥的產(chǎn)品

巨頭也是從初創(chuàng)公司起步的,在起步之初因俐,可能技術實力也不是很好拇惋,而且我們知道信息技術成長性很快周偎,現(xiàn)在我們司空見慣的一些東西在十年前還屬于無人知曉的黑科技,在這種情況下撑帖,一個持續(xù)運營的公司蓉坎,多少會有一些歷史上很粗糙和菜鳥的代碼,并且可能部分仍在運營胡嘿,這是正常的蛉艾。

那么為什么會仍在運營呢?說明這個東西雖然不夠好衷敌,不夠正確勿侯,但是一直沒有出大的問題,沒有給系統(tǒng)添太多麻煩缴罗。所以助琐,雖然這個東西不好,但是基于以業(yè)務為核心的訴求瞒爬,企業(yè)技術部門并不是特別有解決的意愿和動力弓柱。

2、需求迭代的產(chǎn)物

和教科書不同侧但,職場上的需求是瞬息萬變的矢空,一些初入職場的人會覺得公司需求經(jīng)常改,要求 經(jīng)常變禀横,無法接受屁药,覺得是不規(guī)范、不健康的表現(xiàn)柏锄。 15年前酿箭,乃至20年前,我們說印度軟件業(yè) 最為發(fā)達趾娃,其開發(fā)流程最為規(guī)范缭嫡,當時很多中國企業(yè)去印度,學開發(fā)規(guī)范抬闷,覺得印度在 IT方面 遠遠領先中國妇蛀。但是發(fā)展到今天,在互聯(lián)網(wǎng)大潮中笤成,請問哪個互聯(lián)網(wǎng)公司還會去印度取經(jīng)學習 開發(fā)流程和規(guī)范评架?請問誰還會說印度比中國在互聯(lián)網(wǎng)研發(fā)領域領先?問題在哪里呢炕泳,中國互聯(lián)網(wǎng)產(chǎn)業(yè)之所以發(fā)展快就在于沒有包袱纵诞,敢想敢干,隨需應變培遵。傳統(tǒng)軟件工程領域里浙芙,印度可以 作為定制開發(fā)的楷模登刺,強調需求確認,強調定稿茁裙,但是這種模式在互聯(lián)網(wǎng)時代是自尋死路塘砸,你 必須能隨時跟著需求走,跟著時代的潮流前進晤锥。在互聯(lián)網(wǎng)行業(yè)掉蔬,很多開發(fā)往往是沒有明確的邊界條件,也沒有明確的需求確認矾瘾。

所以女轿, 對于一個產(chǎn)品,最初設計的目標是A壕翩,但是開發(fā)過程中突然發(fā)現(xiàn)B才是真正的目標蛉迹,而好不容易把開發(fā)一半的目標A的系統(tǒng)轉為目標B,上線之后又發(fā)現(xiàn)需要兼容C和D的目標放妈。所以北救,新人不了解這個背景,這個迭代的歷史芜抒,就會覺得珍策,這系統(tǒng)誰設計的,邏輯怎么都是擰著的宅倒?沒辦法攘宙,小步快跑,不斷試錯拐迁,不斷調整蹭劈,快速迭代,就是這樣過來的线召。

3铺韧、所謂的正確的架構,存在著你所不知道的坑

就好比前面說的第三范式缓淹,新人一看祟蚀,數(shù)據(jù)結構各種冗余,你怎么不會第三范式啊割卖,大學課程啊,因為他不知道涉及分布患雏、涉及負載均衡的時候鹏溯,這個第三范式無法滿足快速擴展的需求。所以很多時候淹仑,教科書上的一些范例丙挽、方法肺孵,并不適應新的業(yè)務需求和應用場景,而此時颜阐,就會被只讀過教科書的孩子們認為是平窘,代碼太爛,技術太遜凳怨。

4瑰艘、技術演進中的印跡

一個多年運營的系統(tǒng),在演進的過程中肤舞,會存在大量不同的參與者紫新,每個參與者都會有自己的邏輯、想法李剖,以及處理的方式芒率。那么在代碼迭代中,技術的迭代往往是優(yōu)先考慮最緊迫的任務篙顺,優(yōu)化最耗費資源的模塊偶芍,在不斷迭代中,代碼的一致性和結構的一致性可能就無法維持德玫,導致一些本來架構優(yōu)美的結構可能只剩下兩三個模塊匪蟀,但是新人就覺得,這模塊做得好復雜化焕,好啰嗦萄窜,很多沒意義的東西塞在里面。請相信我撒桨,再優(yōu)美的技術結構查刻,經(jīng)過幾茬這樣的迭代,都會變得面目全非凤类,雜亂無章穗泵。然后等待下一個神做整體的重構。

5谜疤、側重點不同的考量問題

比如說佃延,新人發(fā)現(xiàn)一個報表系統(tǒng)效率很低,耗時很長夷磕,于是嘲笑履肃,連索引都不會嗎,這么爛的結構怎么設計的坐桩?但是他不知道的是尺棋,這個數(shù)據(jù)結構首先要滿足一個非常巨量的每日數(shù)據(jù)新增,而后才要滿足每周一次的報表生成绵跷。那么膘螟,如果按照他認為生成報表的優(yōu)美結構來設計成福,所增加的索引和數(shù)據(jù)字段的設計,就會日常帶來大量的i/o開銷荆残,數(shù)據(jù)新增的邏輯就會導致額外幾倍十幾倍的開銷奴艾,也就是說需要很多臺額外的服務器來支撐,而收效卻是内斯,可以每周生成報表的時候從幾十分鐘縮短到幾秒鐘蕴潦,那么如果你是老板,你會同意這樣的方案嗎嘿期?

6品擎、資源緊缺的作品

大公司也會資源緊缺嗎?至少人力資源一直是緊缺的备徐,比如有個緊急的活動萄传,有個緊急的任務,時間特別緊蜜猾,程序員只好急急忙忙從第三方開源軟件抓了一段代碼秀菱,改改塞進去了,反正業(yè)務滿足了蹭睡,至于不好那也實現(xiàn)沒時間了衍菱,結果這個臨時活動效果還不錯,于是慢慢成為常態(tài)活動肩豁,而這個工程師又去干別的去了脊串,這個代碼反正也沒出錯,那就一直跑著清钥。新人來一看琼锋,這啥玩意啊,代碼東一榔頭西一棒槌祟昭,這程序員不會設計系統(tǒng)嗎缕坎?

二、我應該怎么樣解決這些爛代碼篡悟?

不要迷失了自己

你要明白谜叹,哪些是真的問題,哪些是你涉世不深的誤會搬葬,不要只是站出來喊荷腊,這些垃圾那些垃圾,這只能暴露你的淺薄和無知急凰。

那么停局,新人就不能提出現(xiàn)有系統(tǒng)的問題嗎?就不能提出改進的方案和建議嗎?當然可以董栽!但是,這需要有一個正確的認識和思路在前面企孩。

1锭碳、盡可能更完整地了解系統(tǒng),查看一套代碼的時候勿璃,了解所謂的不好的起因是什么擒抛,歷史演進的過程是什么,了解其在業(yè)務系統(tǒng)中的地位和價值是什么补疑,有了一些認識和理解后歧沪,再來思考所謂好和不好的問題。

2莲组、從一個最有把握诊胞,結構最簡單的地方入手,用你認為正確的方式修改一個最小的結構锹杈,先通過測試撵孤、分布的流程,然后再通過運維和其他主管人員獲得反饋竭望,了解改進是否具備對舊版本的比較優(yōu)勢邪码,以及比較優(yōu)勢究竟有多大,多重要咬清。不重要沒關系闭专,但是你要了解是否這個改進是正確的;完成第一個后旧烧,努力去完成第二個影钉,當你能夠順利分布完成十個或更多的這樣的改進和優(yōu)化,并確認你的代碼比較優(yōu)勢確實明顯的時候粪滤,再來吐槽別人的代碼的問題斧拍。

3、如果你這些都做到了杖小,你可能就不屑于吐槽別人的爛代碼啦肆汹,因為你會把它們當作一個個小怪獸。

三予权、一些說明

最近在讀曹大的《你憑什么做好互聯(lián)網(wǎng)》這本書昂勉,書中很多內容寫出了我初入職場時的心態(tài)和做法,這些曾經(jīng)經(jīng)歷過的事不吐不快扫腺,本文內容基于書上的做了一些修改岗照。


謝謝你的閱讀,愿初入職場的你少點吐槽,多了解點真相攒至。愿曾經(jīng)也吐槽過的你厚者,和我一起一笑而過。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末迫吐,一起剝皮案震驚了整個濱河市库菲,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌志膀,老刑警劉巖熙宇,帶你破解...
    沈念sama閱讀 212,383評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異溉浙,居然都是意外死亡烫止,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評論 3 385
  • 文/潘曉璐 我一進店門戳稽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來馆蠕,“玉大人,你說我怎么就攤上這事。” “怎么了丛晌?”我有些...
    開封第一講書人閱讀 157,852評論 0 348
  • 文/不壞的土叔 我叫張陵庶柿,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,621評論 1 284
  • 正文 為了忘掉前任诞吱,我火速辦了婚禮,結果婚禮上竭缝,老公的妹妹穿的比我還像新娘房维。我一直安慰自己,他們只是感情好抬纸,可當我...
    茶點故事閱讀 65,741評論 6 386
  • 文/花漫 我一把揭開白布咙俩。 她就那樣靜靜地躺著,像睡著了一般湿故。 火紅的嫁衣襯著肌膚如雪阿趁。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,929評論 1 290
  • 那天坛猪,我揣著相機與錄音脖阵,去河邊找鬼。 笑死墅茉,一個胖子當著我的面吹牛命黔,可吹牛的內容都是我干的呜呐。 我是一名探鬼主播,決...
    沈念sama閱讀 39,076評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼悍募,長吁一口氣:“原來是場噩夢啊……” “哼蘑辑!你這毒婦竟也來了?” 一聲冷哼從身側響起坠宴,我...
    開封第一講書人閱讀 37,803評論 0 268
  • 序言:老撾萬榮一對情侶失蹤以躯,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后啄踊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,265評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡刁标,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,582評論 2 327
  • 正文 我和宋清朗相戀三年颠通,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片膀懈。...
    茶點故事閱讀 38,716評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡顿锰,死狀恐怖,靈堂內的尸體忽然破棺而出启搂,到底是詐尸還是另有隱情硼控,我是刑警寧澤,帶...
    沈念sama閱讀 34,395評論 4 333
  • 正文 年R本政府宣布胳赌,位于F島的核電站牢撼,受9級特大地震影響,放射性物質發(fā)生泄漏疑苫。R本人自食惡果不足惜熏版,卻給世界環(huán)境...
    茶點故事閱讀 40,039評論 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望捍掺。 院中可真熱鬧撼短,春花似錦、人聲如沸挺勿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,798評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽不瓶。三九已至禾嫉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間湃番,已是汗流浹背夭织。 一陣腳步聲響...
    開封第一講書人閱讀 32,027評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吠撮,地道東北人尊惰。 一個月前我還...
    沈念sama閱讀 46,488評論 2 361
  • 正文 我出身青樓讲竿,卻偏偏與公主長得像,于是被迫代替她去往敵國和親弄屡。 傳聞我的和親對象是個殘疾皇子题禀,可洞房花燭夜當晚...
    茶點故事閱讀 43,612評論 2 350

推薦閱讀更多精彩內容