代碼很爛,所以離職?

前一段時間一直在面試,有很多感悟,今天分享下其中的一個話題。

我在面試的時候通常會問這麼一個問題:你爲什麼離職?

其中有不少同學會提到這麼一個原因,現在的項目代碼太爛了,前人留下了很多坑,我實在忍受不了了。

其實在我看來,這個原因顯得未免太不職業了,而且可能把工作想的太過於理想化了。如果因爲代碼很爛就離職,那麼你跳槽到下一個公司依然會面對同樣的現狀,因爲幾乎每個人,都會覺得自己公司的項目代碼很爛。

我們先說說造成這種現象的原因是什麼,首先,我們得相信,沒有任何一個人故意把自己的代碼寫的很爛,每個人都想把自己的代碼寫的很優雅,擴展性很好,但是可能當初水平不夠,在當時看似還不錯的代碼,日後在別人看來就是所謂的垃圾代碼,我們每個人都在進步,別說別人了,你現在看你三個月之前的代碼,可能你都會覺得寫的很垃圾,如果你沒有這種感覺,只能說你在止步不前。

其次,技術更新換代太快,市場的變化也太快,產品自然也一直在演變,也許在當時看起來還不錯的代碼,隨着時間的推移,功能的更新,代碼的堆徹,慢慢就變成後來者眼中的爛代碼了。

也許你說,我跳到一個新的公司,做一個全新的產品,就不用忍受那些垃圾代碼了,我有信心把架構設計的非常牛逼,爲之後做足夠的擴展性考慮,我只能說你想的過於理想化了,我們永遠沒法預測未來,隨着需求與市場的變化,我們的功能一直在迭代,我們的產品也一直在變化,你會發現很可能你之前花了很多心思設計的架構,完全被推翻了,尤其在新產品剛推出的階段,這是一個快速驗證快速迭代的階段,你的理想化的技術性思維,對產品沒有任何幫助,隨着產品的更新迭代,代碼的不斷增加組合,慢慢的你就會發現,你的那些優雅的代碼設計,很可能就是你自己口中的爛代碼,這是一個必然的結果。

這裏也衍生出一個問題,在產品的初期,不要過多的考慮架構設計、性能優化之類的,先把主要精力把功能實現,把產品的體驗提升上去,技術人總是沉醉於先把自己的代碼寫的完美,其實殊不知,產品能不能成還是一回事呢,先實現再優化,是當今快速發展的互聯網市場最基本的原則。但是你也沒必要故意把代碼寫的很爛,想着以後單獨抽時間去做重構,我以一個過來人的經驗告訴你,給你單獨的留出時間去做重構幾乎不可能。

所以,如果一家公司各方面發展還不錯,僅僅因爲代碼很爛就離職,跳槽到了另一家公司很可能更糟,而且越是成熟的產品,代碼遺留問題越多,包括 Google、BAT 等大型互聯網公司依然如此,如果你覺得這家公司還不錯,想一起發展下去,代碼很爛的話那就試圖去改變一下,給你單獨的時間去做重構很難,那就邊開發功能邊重構,邊迭代邊優化,在不影響產品迭代的情況下,嘗試着去做些力所能及的改變,在這個過程中你會發現,其實你也在慢慢的成長。

大部分人其實都在抱怨環境,只有極少數人會去做點改變,哪怕這些改變微不足道,有些時候,你很可能會因爲這些微不足道的改變,得到一些更好的機會。

版權聲明:本文轉載自 stormzhang 原創文章!

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