之前還沒寫過知乎體,不過這次真的是一個(gè)非常有意思的體驗(yàn)捏雌,就寫一寫吧跃赚。
進(jìn)入公司
在2015年校招的時(shí)候來到了美團(tuán),當(dāng)時(shí)想著腹忽,嗯来累,我是去了一家用戶過億的公司上班呀!想想還有點(diǎn)小激動呢~
實(shí)習(xí)的時(shí)候一直以為自己在做大項(xiàng)目窘奏,嗯嘹锁,加油~
實(shí)習(xí)接到的第一個(gè)正式任務(wù)是做一個(gè)移動版的BD小秘書,由于踩了manifest離線緩存的各種坑(坑就千萬不要在安卓的WebView下用manifest緩存GET請求)着裹,因?yàn)檫@個(gè)坑忙活了快一個(gè)月才做完领猾。公司一共一萬多BD呢,我想著每天訪問量沒幾萬也得有幾千吧,后來聽說這個(gè)頁面有過一段時(shí)間掛了摔竿,都沒有BD反饋面粮,還是開發(fā)人員發(fā)現(xiàn)的,我突然覺得好像并沒有什么BD在用……
又接了一個(gè)任務(wù)继低,做一個(gè)賬號綁定的后臺頁面熬苍,沒有設(shè)計(jì)師給設(shè)計(jì),自己YY頁面袁翁,最討厭沒有設(shè)計(jì)稿的任務(wù)了(>﹏<)柴底。當(dāng)時(shí)想著,這個(gè)后臺這么復(fù)雜粱胜,一定要好好做柄驻,測試同學(xué)還很忙,我做完第一版后QA童鞋還專門給測試了焙压,直覺告訴我這個(gè)東西一定很重要鸿脓。這個(gè)語氣你一定知道我接下來要說什么了,后來發(fā)現(xiàn)這個(gè)項(xiàng)目就只有組里的產(chǎn)品妹子一個(gè)人用涯曲,在一些詭異的用戶行為下野哭,會有一點(diǎn)小bug,我告訴產(chǎn)品妹子掀抹,反正就你一個(gè)人用虐拓,你先湊合用心俗,我現(xiàn)在忙著別的需求呢傲武,你用的時(shí)候不要胡亂操作就不會出bug了……
實(shí)習(xí)走之前,最后一個(gè)任務(wù)城榛,是我們團(tuán)隊(duì)剛開的一個(gè)新項(xiàng)目揪利,我去負(fù)責(zé)做了一個(gè)注冊流程頁面,貌似團(tuán)隊(duì)很重視這個(gè)新項(xiàng)目嘛狠持,還給我配了一個(gè)非常厲害的美女設(shè)計(jì)師:)疟位。可是設(shè)計(jì)師設(shè)計(jì)需要時(shí)間喘垂,設(shè)計(jì)稿還沒出呢甜刻,我就按照產(chǎn)品的設(shè)計(jì)先去做,其中注冊的幾個(gè)流程狀態(tài)是一些前面帶著凸出來的三角形正勒,后面帶著凹進(jìn)去的三角形得院,當(dāng)時(shí)還很用心的去用CSS畫它們,畫完之后還覺得挺厲害的章贞,看這個(gè)可以用圖片做的祥绞,我用CSS畫出來了吧,哈哈哈~
可是,等設(shè)計(jì)稿出來后蜕径,我發(fā)現(xiàn)白做了两踏,人家設(shè)計(jì)的是一個(gè)大圓嵌套一個(gè)小圓的,這我才知道原來設(shè)計(jì)稿可以和產(chǎn)品文檔一模不一樣-_-|||兜喻。我想還是要寫的酷一點(diǎn)梦染,不能用圖片,又用CSS去畫朴皆。突然有一天leader說這個(gè)以后有可能要兼容ie8呢弓坞,額,我還是假裝不知道這事吧车荔。
后來注冊頁面添加了新需求渡冻,我寫的代碼不能滿足那個(gè)需求,就被team里的前端妹子重構(gòu)了……
正式入職了忧便,感覺用戶過億的大公司有大項(xiàng)目在等著我做
入職后發(fā)現(xiàn)實(shí)習(xí)的時(shí)候做的注冊頁面那個(gè)項(xiàng)目族吻,確實(shí)是個(gè)大項(xiàng)目,我們團(tuán)隊(duì)居然有五分之三的前端資源都去負(fù)責(zé)這個(gè)項(xiàng)目了(其實(shí)當(dāng)時(shí)團(tuán)隊(duì)不算leader一共就五個(gè)前端珠增,三個(gè)人負(fù)責(zé)這個(gè)項(xiàng)目超歌,說的好像有多少人一樣,不過這么說不是比較酷么~)蒂教。
用戶只有一個(gè)人的"大項(xiàng)目"
雖然"大項(xiàng)目"打了雙引號巍举,不過我沒逗你,這真的是一個(gè)大項(xiàng)目凝垛,就是目前用戶少了點(diǎn)……
有一天(故事的開頭都是這樣的)懊悯,一個(gè)我們產(chǎn)品的用戶因?yàn)橛貌涣诉^來問下怎么回事,剛好那個(gè)模塊是我負(fù)責(zé)呢梦皮,趕緊看看去炭分。打開控制臺發(fā)現(xiàn)報(bào)錯(cuò)了,怎么會這樣剑肯,報(bào)錯(cuò)的代碼我怎么會提交呀捧毛。打開報(bào)錯(cuò)的文件發(fā)現(xiàn)代碼不是最新的,又打開git上同一個(gè)文件让网,納尼呀忧,我已經(jīng)提交了呀。leader去刷新了一下溃睹,突然正常了而账,原來是緩存問題,由于當(dāng)時(shí)自動化構(gòu)建工具還沒來得及做丸凭,緩存問題想用構(gòu)建工具統(tǒng)一解決呢福扬。
我很著急腕铸,和leader說:“這個(gè)用戶出現(xiàn)了這個(gè)問題,其他用戶由于緩存很可能也不是最新的文件啊铛碑,這算線上bug狠裹,我要趕緊去做一個(gè)緊急的線上fix!”
leader淡定的說:“不用了汽烦,沒事涛菠。”
我吃驚的問:“線上bug不能不管捌餐獭K锥场?”
回答道:“反正就他一個(gè)人用牍颈,下次上線的時(shí)候自動化構(gòu)建工具弄好了就行迄薄。”
我:“哦……”
我陷入了深深的思考(@﹏@)~
在一家用戶過億的公司上班煮岁,居然做著一款只有一個(gè)人使用的產(chǎn)品……
一群人辛苦做了好幾月的項(xiàng)目讥蔽,居然還只有一個(gè)用戶……
說好的你代碼會影響上億人的生活呢……
說好的你會戎碼一生呢……
只有一個(gè)用戶……
一個(gè)用戶……
一個(gè)……
一……
要說體驗(yàn)了
標(biāo)題是:在一家用戶過億的互聯(lián)網(wǎng)公司做著一款只有一個(gè)人使用的產(chǎn)品是一種怎樣的體驗(yàn)?
那到底是怎么樣的一種體驗(yàn)?zāi)兀?/p>
由于是新項(xiàng)目画机,初期一定要先把功能做完再上線冶伞,這個(gè)階段產(chǎn)品的需求和愿景還沒有特別的明確,開發(fā)的時(shí)候也經(jīng)常很難預(yù)期到以后會有怎么樣的功能步氏。
先說說麻煩事:
- 程序架構(gòu)可能不合理响禽,總是修修補(bǔ)補(bǔ)
- 可能一不小心就嵌套了幾層回調(diào)
- 變量命名可能和以后的功能需求產(chǎn)生歧義
- 應(yīng)該組件化的東西還沒有組件化
- 有時(shí)候因?yàn)楫a(chǎn)品的一個(gè)很小的需求變更前后端都要重構(gòu)代碼
- 給幾萬行的已經(jīng)沒人維護(hù)的工具做二次開發(fā)會遇到非常多的坑
- 邏輯復(fù)雜的模塊沒有很好的解耦和復(fù)用
- 新項(xiàng)目無論在產(chǎn)品上還是技術(shù)上總會有好多坑
再說說好處:
- 需要優(yōu)化的地方太多了,工作有挑戰(zhàn)性
- 做新項(xiàng)目維護(hù)工作比較少荚醒,如果維護(hù)別人寫的代碼一定沒有自己寫新的快
- 自己做數(shù)據(jù)可視化用的開源工具是我leader的開發(fā)的芋类,工位就在我左邊,有問題直接問作者
- 團(tuán)隊(duì)和項(xiàng)目一樣也很新腌且,有二分之一是剛剛校招入職的梗肝,大家可以在一個(gè)技術(shù)次元交流學(xué)習(xí),沒有全是老員工就自己一個(gè)小朋友的感覺
- 并沒有傳說中產(chǎn)品童鞋會給新項(xiàng)目往死了添加需求的情況铺董,產(chǎn)品汪和程序猿并不是總撕逼(這么說怎么感覺有點(diǎn)像曾經(jīng)撕過一樣,其實(shí)我和產(chǎn)品童鞋很好的禀晓,我們從來不撕……)
- 一點(diǎn)點(diǎn)慶幸的是業(yè)內(nèi)已經(jīng)有一個(gè)非常成熟的產(chǎn)品可以參考了
總結(jié)一下精续,麻煩事基本都是所有新項(xiàng)目都會遇到的問題了,其實(shí)也沒什么粹懒,項(xiàng)目不成熟沒關(guān)系重付,只要團(tuán)隊(duì)沒放棄,只要團(tuán)隊(duì)還在持續(xù)積極輸出凫乖,項(xiàng)目漸漸就成熟了确垫。不過目前大部分精力都在做業(yè)務(wù)需求和與產(chǎn)品經(jīng)理梳理產(chǎn)品邏輯弓颈,總是沒時(shí)間梳理和優(yōu)化技術(shù)。
但是由于在做新項(xiàng)目删掀,挑戰(zhàn)會有很多翔冀,可以在這個(gè)過程中學(xué)到很多東西。現(xiàn)在去工作的大都是去維護(hù)別人的寫的代碼披泪,如果遇到不喜歡寫注釋又隨便命名的代碼纤子,真是想全刪了重寫,并不是所有人都像我一樣寫注釋跟嘮嗑似的款票。由于團(tuán)隊(duì)和項(xiàng)目都很新控硼,有一種團(tuán)隊(duì)和項(xiàng)目共同成長的感覺。
其實(shí)你的用戶是幾個(gè)人不是最重要的艾少,最重要的知道所做事情的價(jià)值所在卡乾。