- F0 o! D8 ?* y( O4 Q! |4 Y8 W
本人Java開發(fā)6年半不到7年的樣子。 英語專業(yè),,臨畢業(yè)跟著隔壁專業(yè)去培訓(xùn)了四個月 Java ,。 跟他們一起來了北京找工作,一找就是 5 個多月,,面試 100 多家公司,。最終還是隔壁專業(yè)的同學(xué)介紹到他們公司才就業(yè)了。 入職后同學(xué)就是我的上司,技術(shù)相對一般,,我們做 Java 游戲后端的,,時間很快,一眨眼,,我就跟著混了四年,,每天就看些博客,書籍,,業(yè)務(wù)上也會做功能,,但自覺做的比較蠢。沒什么太大進(jìn)步,。 四年時間很快樂,,跟著老板,同學(xué),,從一點(diǎn)不會,,到能獨(dú)立完成工作,能自主做一點(diǎn)小小設(shè)計(jì),。但技術(shù)上說真的,,差得太遠(yuǎn)。 隨著心越來越慌,,工資水平屬實(shí)也太低 6K 多,,于是四年這個節(jié)點(diǎn),我跳槽了,,工資翻倍,。這是一份非常苦的工作,,曾經(jīng)2個多月沒放假,,也曾經(jīng)連續(xù)四天四夜沒回家,工作到凌晨 3 點(diǎn)是司空見慣,。 然而我只是個小兵,加班加了 10 個月,,游戲上線兩個月,,人員就全部裁掉了。由于 Java 一直感覺沒有入門,,框架方面 掌握的也比較少,,這個 MMO 的項(xiàng)目本是練手大好時機(jī),連忙帶懶就也這么過來了,。 隨后不知道算走運(yùn)還是算倒霉,,找到了上市公司的工作,20K「我夢想中的工資是 25K,如果達(dá)到就打算不再跳槽了,,為什么是25K,?因?yàn)橛螒?/font>Java后端基本上 30K 算是一個封頂,哈,,當(dāng)時比較幼稚,,以為就這么干著,早早晚晚也能混到最后,,就算技術(shù)不行,,吃透兩套框架,在游戲圈就能立住腳」,。 說是走運(yùn),,因?yàn)楣ぷ飨鄬唵危?/font> 1 個后端對 6 個前端,,聽起來挺唬人,,但其實(shí)還是做業(yè)務(wù),但因?yàn)橹挥形乙粋人接手這個項(xiàng)目,,所以我也算是主程,,當(dāng)時我覺得我的人生的每一步真是走的太好了,缺什么來什么,,想要架構(gòu),,想要自己來就有機(jī)會了,這一年多感覺特別順利,,也覺得自己終于像是入了門,,不再害怕工作上的需求了。 但說是倒霉呢 ,,其實(shí)也就是因?yàn)檫@一切其實(shí)都是假象,,我根本還是幾年前的那個自己,只是因?yàn)闃I(yè)務(wù)熟練了,,以為自己行了,。 這公司也是裁員,我在這里做了一年半不到,,臨走給了 N+1,,美美的拿著錢,找自己夢想中的 25K 去了,。并且決定不做游戲了,,因?yàn)橛螒蚬居忻木湍菐准遥瑳]啥發(fā)展,,還是互聯(lián)網(wǎng)好,,差不到 40K 封頂,,我以上所說的封頂都是指很普通的人啊,大佬就別跟我計(jì)較了,。 就在裁員的第二天,,我面試了京東一個物流創(chuàng)新部,好像是這個名字,,那天我記得特別清楚,,經(jīng)過了一下午面試(面試的難度真是超級低,我在那里侃侃而談,,最難的問題也只是線程池那幾個參數(shù)),。 然后,過了,。我真的感覺自己要一飛沖天,,當(dāng)時在想,在這里不能做太久,,公司的文化太詭異,,一切圍繞著強(qiáng)東轉(zhuǎn),公司的人說話好像都在躲著什么東西,,加班也是每天固定,,然后大小周。因?yàn)檎s上過年,,面試的人說年后人事會聯(lián)系我走流程,,就能入職。 這一去就天差地別了,,我在家等了一個半月,,中間經(jīng)過無數(shù)詢問面試者,人事等,,后來,,流程跑著跑著就沒了。當(dāng)時覺得京東真是讓人開眼,,還特么帶這么玩的,。 這時候,我還是不知道愁~然而,,馬上就要覺醒了,。我又去面試,還是25K,,有時候你認(rèn)真的要價真的比猥瑣要好很多,我當(dāng)時就是愣要,,大部分人還真信,。記得收到的OFFER有必要商城,,贏時勝等等,后來去了一家做語音的公司負(fù)責(zé)做云平臺,。哈哈,,這份工作只做了三天半。從入職第一天就夜夜失眠,,為毛,?因?yàn)榭床欢a,壓力很大,。 以前做游戲覺得大家都是吊絲,,每天在一起呼呼哈哈,確實(shí)也快樂,,有什么需求甚至直接在座位上喊著溝通這樣,。但是這家公司就比較正規(guī)了,我以為互聯(lián)網(wǎng)公司都是這個樣子的,,同事之間一天一句話都不說,,主程也只給我簡單說了說流程,就自己看代碼吧,。 我雖然技術(shù)渣,,但有時候?qū)ψ约阂筮是挺高的,總想快速的上手代碼,,這代碼這手上一天,,兩天,三天,,連個皮毛都沒看出來,,就慌的不行,當(dāng)時就開始知道自己代碼水平有點(diǎn)渣了,,但以為自己是不適應(yīng),,這次找工作其實(shí)也挺波折,醒悟是一個緩慢的過程,。 所以還是想著回游戲行業(yè),,畢竟自己歷經(jīng)三家公司,都沒碰到什么難度,,雖然尋路啊,,地圖啊,戰(zhàn)斗啊這些自己都完全整不了,,但是還是能完成普通工作的,,此時的我還以為自己能搭框架呢,啊哈哈,。 于是我就辭了,,公司真的不錯,,14薪,要走還好頓要留我,。當(dāng)時以為自己是不適應(yīng)走的�,,F(xiàn)在回頭想想,其實(shí)怕暴露真實(shí)代碼水平,,不好意思才走的「身體不騙人,,我的腦子居然會騙自己」。 于是,,我開始面游戲了,,還是 2 ,但面著面著覺得不對勁,,為何大部分面試我都答不上來個啥,,三問兩問就癟了。兩周時間,,居然 10 家只收到 1 個 OFFER,,并且是小公司做主程。我開始慌了,,很慌,,這 10 天里我慢慢認(rèn)清自己的真實(shí)水平了,不敢細(xì)想,,細(xì)想連面向?qū)ο蠖疾辉趺磿�,,那些繼承啊接口啊,從來也沒寫得好看過,,都是照著別人已有的模塊,,拿來粘貼,還做得挺快,。 多線程一想就蒙蔽,,數(shù)據(jù)庫就會點(diǎn)簡單操作,Linux 也是一樣就會個CP MV CAT top啥的,,最常用的是 ps -aux|grep,。原來,原來我什么都不會啊,。但是上天還是眷顧我的,,居然這十幾家我最看好的那家公司,第 11 個面試,。過了,,哈哈,當(dāng)然這時薪資下來了一點(diǎn),,但是我管不了那么多,,從上家裁員到現(xiàn)在,,已經(jīng)整整過了 2 個月零一周了,這些天過得真不怎么樣,,每天都特別焦慮。也瘦了七八斤,。 就這樣吧,,入職好好干吧,我收到OFFER時,,暗暗想著,,我要為公司腦涂地,它在我危難之時,,向我伸出了關(guān)愛之手,,感謝公司。 于是更大的噩夢開始了~~入職到現(xiàn)在 2 個月了,,我?guī)缀趺矝]做,。每天都想逃避都想跑,心臟壓得我天天疼,,好堵啊,,現(xiàn)在也還是如此。這 2 個月我徹底認(rèn)清了自我,,和入職半年的新生小手差不多的水平,,一直用這水平干了這六年工作。,。 真汗顏,,以前用的 SVN,到了新公司學(xué) git,這 git 是真難啊,,怎么都學(xué)不會,,網(wǎng)上那堆教程跟屎一樣,看著好像是會了,,用著都特么不對,,差得遠(yuǎn)呢,到現(xiàn)在還只會create a branch,,寫,, pull develop ,切回來把develop 合過來,,然后再把branch合回到develop,,再push,基本上是在用svn的方法在用git,,而且 git我感覺很奇怪,,好像沒幾個真的會用,,不管是網(wǎng)上還是我的同事。 光說痛苦了,,說說自己為什么痛苦吧,,我知道每個人都有自己的心酸事。我只是想說說我的,。 哎,,主要說說新公司的事吧,這么多天了,,我死去活來,,難受的要命。比如我從剛?cè)胄芯筒淮蠖_發(fā)的根本問題是什么,,也許書本上的解釋我也看得懂,,但是真要理解這件事,應(yīng)該不是只停留在字面理解,,如果你有懂那一天,,你應(yīng)該立刻就知道,它會直接在頭腦中告訴你---啊我入門了,。 鑒于此,,我一直都保存著前幾家的源碼,我想著,,開發(fā)既然自己不能理解好,,也沒有舉一返三的能力,也不會自主寫出什么東西,。那就收集多多的代碼,,涉及到的哪一部分不懂,可能就能在其中找到例子,,靈感,。這樣就可以在框架層面也不至于什么都沒有積累。 這次的工作,,服務(wù)端也分了好幾個進(jìn)程,,之前我都是用redis搞數(shù)據(jù)溝通,比如你要生成唯一ID,,每個子服務(wù)里都有redis,,incr就好。新的框架也是這個主程用了好多年的了,,不想加入新的東西,,但是又要求我按他的思路去做,又說代碼版權(quán)等問題,之前所有的源碼都不能給我看,,我想其實(shí)也是合理的,,畢竟我是 P6,高級開發(fā)哎,。按理說,,招我進(jìn)來可以從 0 開始搭建架構(gòu)的。我的能力也就是 curd 了,,甚至可能 curd 還做不太好,,也就說不上怎么能硬氣的跟他說明。 比如上面 id 的問題,,那我可能就要每個服啟動時,去 mysql 查一批id存放在每個子服務(wù)上面,,設(shè)一個警戒值,,不夠了再取。但是這樣吧,,對我來說就很難,,這就要考慮到警戒值不夠用了怎么辦,各服務(wù)啟動時要把id拿到才能對外服務(wù),,還有 id 如果實(shí)在沒有了,,可能要進(jìn)行同步阻塞去查詢,但是同步怎么寫,?不會寫同步~~ 另外再舉例子,,如果是加好友功能,這種單用mysql,,而且還弄出一個 dbserver 的服務(wù),,什么都要寫個異步的協(xié)議過去,那加好友原來是: addFriend { 各種條件判斷,,不合條件返回個tips 執(zhí)行加好友 } 現(xiàn)在可能變成這樣了: addFriend { 異步去查數(shù)據(jù)庫了 } gameserver -> dbserver ,,當(dāng)dbserver->gameserver返回時,又是另一個協(xié)議,,handler什么的又得另寫,,執(zhí)行判斷,再返回,,等等,。 當(dāng)然寫得好的人,這些問題都不存在,,而我只會直腸子寫Java,,就會個 List.add if else for循環(huán)。 這基本上是我的全部本領(lǐng)了。就在這框架里有很多難處,。還有個問題是怎么寫gate與game的玩家session對應(yīng),,想了N久才想出個辦法,包裝了個protobuf二層協(xié)議,,,,哦問題多了去了。應(yīng)該都是開發(fā)者該在工作中解決的基本問題,,而我一步一個坎,。 再者公司的氛圍也是頭疼的緊,一整天也沒人說話,,除了要甩鍋的時候,,根本沒人會溝通。交待任務(wù)啥的,,給我壓力也特別大,,比如主程今天說,docker了解一樣,。然后明天讓我搭 dokcer 自動化部署流程了,。今天說git flow了解一下,明天就要嚴(yán)格執(zhí)行 git 工作流了,。 還是那句話,,可能這是一個 P6 真正要掌握的本領(lǐng),就是有個關(guān)鍵詞,,然后就能自己看外文文檔,,然后就能搭建出一個看上去很像樣的工程化產(chǎn)品。好吧,,這樣來看我離真實(shí)的 P6 的實(shí)力,,至少得差 5 個檔次。 自己特別的低迷,,心臟堵的難受,,每天早上一醒來就感覺自己活不起了。有天晚上夢中,,看見一堆代碼,,卻怎么看都不懂,又醒不了,,難過,,懊喪了一整夜,連睡覺的時間都不放過我,,自己的痛苦多了就經(jīng)常跟朋友家人說,,到后來反倒讓我認(rèn)清了,,什么狗雞巴朋友,哪有朋友,,沒人會care你一丁點(diǎn),,各自有自己的煩心事不說吧,沒有共同經(jīng)歷的也難為互相理解,。 總之,,在朋友對我的反應(yīng)上,基本就是你想多了;你不干得挺好的嗎;程序員一個拿那么多錢你還瞎苦惱個什么;不光你,,誰沒困難;其中特別好的一個也差不多最多寬慰兩句,,你行,你可以挺過去之類的,。之后就再無信息,。 當(dāng)時也是苦惱了好一陣,認(rèn)識你們有個什么用,,你說我最想聽什么,,我聯(lián)系你們的目的是什么,哈哈,,算了算了,都是故事,,你們并沒有那么好,。但回頭吧,仔細(xì)想想不禁就明了了這件事,。 30多歲了,,這是關(guān)乎你自己生存的問題,這個問題不是靠什么運(yùn)氣和神跡才能改善的,,它積累在你多年生活的每一天里,,你的理解是什么,你對工作的態(tài)度如何,,你怎么利用你的時間的,。 這一切的一切都是你自己該解決該思考的問題,別人幫不上任何忙,。然而這些年我都是養(yǎng)生過來的,,一直都沒學(xué)會如何去思考,這應(yīng)該是與有所成就的人最大的區(qū)別了,。 有人說做職業(yè)規(guī)劃,,而我腦中也只有這四個字的淺層意思。也許有的人對這個就比較上心,,有著深刻理解也說不定,。 也就是說別人怎么決定你的人生,別人怎么決定你的想法,都得自己去選擇,,自己去承擔(dān),,指望著別人給你的,只能是「放松心情了解一下努力了解一下」這樣看似沒用實(shí)際也沒用的東西,。 今天先寫到這吧,,寫得亂糟糟。 無論怎么寫也寫不出你真的在痛苦時那種無助與萬念俱焚,,你很難再去回想,,你是怎么失眠一個月的,你很難想你在公司樓下對著鏡子,,顫抖著害怕著不敢回辦公桌時的心情,。 然而這一切都沒意義,生活不會因?yàn)槟阃纯嗑屯蝗蛔兒昧�,,別人不會因?yàn)槟阃纯嗑湍芊胚^你了,,這些對任何人都沒意義。 我還將繼續(xù)下去,,這家干不了了,,還要找下家,還要每天學(xué)習(xí)「雖然效果不怎么樣」,。然后等待著,,這些遲早該發(fā)生的事。 你再想想,,今天雖然這么痛苦,,是不是可能是你接下來生活的最好的一天了。畢竟你就坐在那里十幾個小時,,就有人幾百上千的送給你,。然后我干不下去這行了去做什么,銷售,?開個麻辣燙店,?去工地真正的搬磚? hi,,哈哈哈哈哈,,外人看叫矯情,自己看屬實(shí)是活不起,。 作者:Java填坑之路 & @( U: h9 a6 K" ~$ Q' O
|