前言
掐指一算在某互金公司呆了一年零兩個月(哈哈,終於離職了,小小慶祝下),在這段時間算是嘗盡了人間的酸甜苦辣,五味雜陳。去年陰差陽錯就進入互金行業了,感覺水深不可測。
外行開熱鬧,內行看門道
俗話說“外行看熱鬧、內行看門道”,剛進入這一行確實啥也不知,什么是標的?什么是債券轉讓?系統的代碼量龐大到想暈倒,主站、SOA、微信、定時任務、協助系統等等一大推,要把所有系統全部搞清楚沒個幾年那都是扯淡。業務的變化也是瞬息萬變,國家出台的合規政策一環扣一環,開發人員累的跟個狗似的,甚至不如。
公司管理的混亂
對於互金行業來說發展也就是四五年的時間而已,很多公司都發展上千人的大規模公司了,用野蠻生長來形容一點也不假,人員的變動太快了(呆夠一年都算老員工了),代碼經手人應該都上千人了。公司組織架構的變動更不用說了,三天一小變,五天一大變,一年多時間總監換了三個、組長換了三個。剛入職時還是每個組都還是比較明確,.NET就是.NET一個組,Java的就是Java,按語言進行划分。發展到現如今的按照產品線去划分(產品、.NET、Java、安卓、IOS、測試)等等划為一個組了,而且還要求.NET的會Java開發,Java會.NET開發,我覺得人的精力是有限的,能很好的掌握一門語言(精通)就很不錯了(眉毛胡子一把抓),最終開發人員累死累活還沒有好下場。之前也在大公司呆過,分工非常明確,CS做CS的,BS做的BS的,這個就.NET而言,我覺得每個人有每個人的專長,發揮出自己的專長最重要。也許做.NET的人花了一段時間學會了Java,可能在效率和能力上也不一定放心,術業有專攻,不知公司咋想的。
簡單事情復雜化
軟件的生命周期就是設計=>編碼=>測試>上線,這當然是一個簡單的流程。而我們是產品出設計文檔=>開會說明=>開發出概要設計=>開會說明=>編碼=>測試出測試用例=>開會評審測試用例=>開發進行測試用例自測、單元測試=>代碼審查(經理)=>分支測試=>集成測試=>預發布環境測試(經理提交代碼)=>上線,整個流程下來累的夠嗆,開發人員全程參與,經理變態式的代碼審查機制(命名必須按照他的一些要求進行,不明確的命名必須要改,必須進行StyleCop檢查,檢查結果必須為0,需要進行單元測試,進行Mock數據,並且單元測試要能通過),提交代碼到預發布環境必須是領導再一次進行代碼審查,開發人員還要保證各個環境通暢(分支環境、集成環境、預發布環境),每次開發前還得評估開發環境,每天早上有晨會,每天一個會又一個會,為了保證進度必須利用晚上加班加點,甚至周末加班加點都不一定能完成任務,高要求高標准又不肯給時間,強化開發質量,弱化測試,我不知這是咋想的,我覺得金融行業應該重視測試,但是我們公司弱化測試,很多時候測試的質量都不高,很多問題都沒測試出來,沒測試出來上線出了問題又是開發人員去排查或者修復數據,哎...做開發實在不易,做了一年多的時間人也憔悴了,我覺得很多時間可以更簡單點,可我們復雜到不行,時間就這樣一點點浪費了,也許大公司有的是時間,能耗得起吧!
由於人員的高流動性,導致一個領導換一個領導,領導風格的變動,每個開發人員還得去適應他們的管理方式。人員的高流動帶來的代碼質量參差不齊,相互銜接太差,沒有相應的交接文檔,導致很多時候開發人員都是靠閱讀代碼去實現,現在公司才開始抓代碼質量,提出各種規范,但我看來也是在亡羊補牢,不知是否為時已晚。
當然很多互金行業的不好不敢披露,怕大家以后不投資互金了,O(∩_∩)O哈哈~
大公司小公司
出來工作有些年數了,大公司小公司都呆過,現在再出發都不知怎么選擇了?大公司有大公司的好處,能學的東西確實是多,但是大公司明爭暗斗,人與人之間可能為了自己那點利益啥事情都能干的出,集體榮譽感基本全無,都是為了自己的地位、利益等等。小公司很多時候就像一個大家庭,大家互助友愛,集中力量干好事情,業務在小公司受重視的程度遠大於大公司,在大公司缺你一個不少公司照樣運轉,小公司可能自己就是核心,哎...職場難尋?正走失在迷途中...