最近幾天996被爭論的不少,尤爲是GitHub上的996.ICU已經有22萬+的star,做爲技術人,這個數字仍是挺可怕的。做爲一個十年的老碼農,以爲應該聊聊我所經歷的遊戲公司,有超強度加班的,也有加班強度不大,沒有不加班的,有不少失敗的項目和公司,也有成功的項目和公司。程序員
10年末的時候,我加入了某創業的遊戲公司,記得我加入的時候最多十幾我的。當時大環境社交遊戲特別火,例如偷菜啊,搶車位啊。當時公司只有一款海外的社交遊戲,同時也正準備開發一款新的戰爭遊戲。做爲公司來講,確定壓力特別大,只有一款遊戲並且收入也通常,開發的下一款遊戲若是不成功,公司均可能掛掉。因此當時加班是真的特別狠,通常都是10點以後走的,997是確定有的。當時的技術總監也是聯合創始人,是從北航畢業東軟出來創業的,技術真的特別特別牛逼,東軟的時候作.net的,後來作遊戲用的是PHP和actionscript3,用的都特別溜,是個特別懂技術的人,說真的,感受若是沒有這我的的話,這個公司後來的不少遊戲估計都開發不出來。當時有個特別好的地方,技術的地位特別特別高,開發進度開發規劃基本也都是技術爲主,主要是抄Facebook上一款排名前十的遊戲,若是有不懂的地方就去玩下這個遊戲,主策啊策劃當時感受都是輔助。當時提早一個多月說是要開啓新項目,技術總監就抽調一些人員準備新遊戲,留下一部分人維護老遊戲。抽調的人員,主要是準備遊戲框架準備各類組件,準備通訊協議等等的基礎功能。一個月後項目正式開啓,開始模塊功能開發,計劃四個月開發完成,當時你們都說估計有延期,有可能須要六個月,因爲有前期一個月的項目準備,其實開發模塊功能仍是至關快的,最後應該是五個月開發完。記得是當年的六七月上線,惋惜的是,真的強度和壓力太大了,基本9107的開發模式,常常失眠,沒能堅持到最後遊戲上線。我是當年五月份離開的。當年遊戲上線後在騰訊的朋友網上特別火,後來在QQ空間上架,聽同事說當年的DAU是兩三百萬以上。後來的某一年,這家公司被一上市公司以數10億的價格收購了。留在那堅持下來的同事也應該有個圓滿的歸宿吧。typescript
11年中的時候,我加入當時還算點有名氣的的遊戲公司。當時咱們負責的一個須要重構的遊戲項目,我因爲能會寫PHP和Actionscript3是這個項目的技術負責人,項目的製做人,可能也是聯合創始人吧,和老闆的關係特別好,之前貌似是作客服的,後來公司不斷壯大,就委以重任吧,作製做人了。這哥們人也挺好的,就是不懂技術。這個公司人已經特別多了,當年得有200號人吧,技術的地位很明顯是沒有上家公司地位高。第一天肯定要重構這個遊戲項目,次日就肯定了須要三個多月的開發時間,下午的時候製做人就找我對每一個模塊的開發時間,當時我是有點暈逼的。我覺得應該像上一家公司同樣,提早差很少一個月的時間準備框架、組件和通訊等的基礎模塊,而後再開發項目,肯定各個模塊的開發時間。可是當時製做人說了,上線時間定了,後面的模塊開發就是項目內怎麼完成的事了。我當時第一個想法就是完不成啊,沒有上一家公司那麼牛逼的技術,最主要的沒有前期準備的時間。若是單純開發模塊,我以爲三四個月時間問題不大。當時夾在不懂技術的製做人和項目開發組的技術成員之間,特別憋屈。後來就加班加點克服唄,天天幾乎都是趕最後一班地鐵,我爹來北京一週多了沒見過我。後來也趕進度按計劃時間開發完了,但這個代碼質量內心是至關沒譜的,好多代碼都沒有完整的規劃,根本談不上軟件架構設計,耦合嚴重,沒有任何擴展性,基本上都是爲了趕進度,這個結果可能製做人和老闆是比較滿意的。後來這個遊戲上了校內網,數據一直不怎麼理想。再後來,公司資金鍊問題,咱們部門被砍,人都被裁了。我領了賠償金,玩了一兩個月...後端
中間還有個小插曲,原來我帶的應屆生去了一家新創立的遊戲公司,項目開發已經接近尾聲,他極力邀請我和他們製做人見面聊下,我當時一直想去一個大點的公司,不到一年換一次工做我也是厭倦了,他給我說了好幾回。辭讓不掉,就過去跟他們技術和製做人聊了下,他們製做人說,咱們小公司給不了你多少錢,可是能夠承諾一部分期權。我當時只想去大點公司,內心想的,要你破期權有啥用。就說了,我想去大點公司,不想在大家這樣的小公司待... 後來誰能想到,這個遊戲上線後特別火,兩三個月以後流水就幾千萬了...再後來過了兩三年,被一上市公司數十億給收購了...架構
12年中的時候,我去了一家如今都特別有名的遊戲公司(我負責的項目是被收購過去的)。當時那個代碼爛到不忍直視。代碼的邏輯我看了兩三個月才理清楚,打包編譯一次須要兩三個小時.想一想發佈的時候,只要有問題,就得花兩三個小時編譯。可是這個項目,當年特別賺錢,高的時候一個月幾千萬的流水。(窮人真是不能理解玩遊戲的土豪,那遊戲單人最高充值記錄二十幾萬,記得充值界面最高只能充599,有人就給咱們客服提意見,他想衝幾千,居然須要分幾回充,後來還專門開發了一個高額充值的接口。後來咱們的新遊戲,在內測階段有個玩家天天衝一萬多...).繼續說咱們項目,後來咱們整個團隊,都去開發這個老款遊戲戰鬥方式的新遊戲去了。說下咱們這個團隊,製做人是原來那個成功遊戲的策劃,不懂技術。技術的地位比上一家公司高點。並且人員配置比較充足,不像上家公司同樣,我邊寫框架邊寫模塊。在這個項目中,我主要寫框架通訊等,兩個同事寫組件和模塊,有個技術好的同事寫地圖和戰鬥方式。這我的員配置以爲特別合理,跟第一家公司很相似。可是項目沒有話語權,製做人在公司話語權不高,這個項目還作了一個月的封閉開發,後來的工做模式一直是997或者9107吧。可是最噁心的地方出現了,這麼多人加班的主要做用,就是把上一週開發的東西推到重作,顛覆性修改,下一週的任務就是把上一週開發的推進重作。開發人員基本都很憋屈...後來這個項目內測數據不理想,後來項目關閉。人員都流動到其它項目組。再後來我就離職了...框架
離職的主要緣由,遊戲公司的客戶端開發變化太快了,根本沒有時間和機會深刻研究。那會也是公司頁遊向手遊轉型,我開始先作的actionscript3的開發,後來作cocos2d-x+lua的開發,再後來又作U3D的C#開發,後來還作過egret 的typescript開發...離職後,我去了某手機公司,沒作客戶端,開始個人老本行服務端開發了,如今一直在非遊戲行業,不多有周末須要加班 996 997的時候。最近跟個人遊戲行業的同事吃飯的時候,他們還照樣須要週末加班,約飯常常約不到一塊去。性能
後來反思那些成功和失敗的項目,有的代碼特別爛,可是它賺錢,有的代碼寫的特別好,一看代碼就以爲架構特別好,就知道是個有講究的程序員寫的,可是不必定賺錢。發現通常技術領導主導或者技術領導強勢的項目,通常不會受啥委屈,能學到東西,項目成不成的很差說,但至少內心是有譜的,出了問題立馬能定位到,這樣的項目成功的比例比較高;不懂技術的策劃主導的項目,若是技術不強勢,沒啥地位,無畏的加班和受委屈是必然的,成功機率會低不少。不懂技術的管理人眼裏,項目進度是能夠經過加班和加人解決的,在他們眼裏一我的三天的進度,跟三我的一天是同樣的,常常讓技術花很大的代價去開發一個優先級比較低產出意義不大的功能,並且會以爲開發人員的能力是同樣的,他無論軟件設計的原則,只要按計劃完成就好了。可是長期疲勞加班搞出來的代碼通常都是湊合的代碼,沒啥軟件設計的原則,出了問題很難定位。我所經歷的遊戲公司,基本都是開始幾個創始人作了一款遊戲,後來這款遊戲賺錢了,拿到投資了,就招人慢慢壯大公司,開新的項目,我的團隊在當時能作大,確定幾個創始人必然是能在各個方面獨擋一面的,製做人、技術、測試必然是比較優秀的,單個遊戲成功了,公司不斷髮展壯大,開新的項目,原來的策劃去作製做人,原來的運營測試去作製做人,原來普通的技術人員去作項目技術負責人,這就有必定的機率作很差,公司發展的速度遠遠超過了公司創始人當前的技能素質,若是創始人的技能水平可以跟上來新項目成功的機率就大,若是創始人的技能水平沒能提升上來,項目失敗的風險就比較大。測試
後來經歷愈來愈多的公司,愈來愈以爲遇到一個懂技術尊重技術的領導是開發人員的幸運。若是公司或者項目的負責人是技術轉行產品或者策劃的,那對開發人員來講簡直是撞大運了。pony也說過 咱們但願的產品經理是從技術晉升而來的。確實是這樣的,遇到過不少次,因爲策劃產品的不專業,整個團隊都要跟着作錯誤的事情,他們寫錯文檔了,該幾個字就改過來了,開發和測試須要作不少工做量才能改過來。幸運的是,後面我遇到的部門負責人公司負責人都是技術出身的,偶爾也會週末或者晚上加班,但沒有出現過強制996或者長期加班,以爲爲了趕進度,短時間的加班是無可厚非的,公司要生存,產品須要快速迭代,就須要加班,可是長期強制加班的必定是領導管理人員的無能。lua
------------------------------------end
一塊兒關注高性能WEB後端技術,關注公衆號
.net