從P4到P9, 在馬雲家寫程式碼到雙11前端PM
作者簡介:ç,來自淘系技術部前端團隊。目前負責淘系(淘寶+天貓)的營銷活動、互動的業務,也在阿里巴巴前端委員會主導搭建體系的技術方向。
P4:懵懂學生入行記 (2008.10-2009.12)
2008年10月,入職阿里巴巴日文站,以前端崗加入UED團隊。日文站 ( ) 的業務源於阿里巴巴國際站 - 提供線上的平臺化服務,專注撮合中日貿易。
在那個前端的鴻蒙年代,頁面重構工程師和Javascript程式設計師還是兩個細分職位: 在阿里,前端、互動、視覺共同劃屬使用者體驗部門。
而在部份公司,有專門的重構工程師。
在日文站亦如是:現實情況是杭州和東京的團隊,具備寫JS能力的工程師均不多。不少同事專注在HTML/CSS領域,且專研極深。舉個例子:在日文站,所有的HTML/CSS程式碼必須透過兩個Lint工具:HTML文書の文法をチェックし、採點します、[The W3C Markup Validation - 這讓程式碼的規範性更好外,也能獲得更好的搜尋引擎分析&索引權重。
隨著業務發展,需求場景多且複雜起來,對Javascript開發能力要求就越高。同時,也激發了我的技術熱情。除了看書,我迫切想參與其他事業部的前端交流會。感謝時任主管的支援,我開始主動跨部門溝通,將他山之玉和學習所得有了更多結合。慢慢地,在團隊內部提出一些技術方案並逐漸應用到杭州/東京兩個團隊 (特別感謝最早時代的D2)。
在那個階段,我幾乎參與了所有較為複雜的專案。結合當年的熱門大作《高效能網站建設指南》、Yahoo網站效能最佳化黃金法則,負責了主站的效能最佳化,取得了一些不錯結果。
2009年10月獲得了日文站優秀員工,年底順利晉升到新的層級(P5)。
P5:從熱血到成長(2010.01-2011.06)
2010年開始,業務略微調整,參與“日本買家獲得”(Buyer Growth)。這個業務本質是透過平臺技術最佳化(SEO、SEM等)獲得更高的搜尋引擎權重、提高Landing到轉化。
在這期間,隨著被認可度提升、持續的專案歷練,我的自信心也得到了鍛鍊。除了參與更復雜的專案外,我開始主動對業務和技術體系做出一些提案(Proposal) - 包括參考Google Webmaster Guidelines進行技術最佳化、參與了各種SEO專案,提出了現在回想起來各種或靠譜或不靠譜的提案。非常感謝歷任主管的支援和包容,讓一個楞頭青能夠沒有後顧之憂地敢想敢做。
日文站初版克隆自Alibaba.com,加之外包參與、跨東京和杭州多團隊開發等原因,全站前端框架混雜,包括不限於YUI/Mootools/PrototypeJS/ExtJS/TBra等前端框架&類庫混雜在同一業務甚至頁面。新人上手、多人協作、效能最佳化的成本很高,但歷史原因積重難返,大家苦不堪言。
結束一個大專案後,時值“憤青”的我對全站的程式碼做了個調研和分析,說服了主管們,決定啟動一個重構專案——旨在將全站混雜的程式碼統一到 jQuery。並大體確定了執行方案:隨業務迭代上線、專案成員1人,我兼任PM、開發/自測。
在之後,一個如同打了雞血般的前端程式設計師,白天黑夜的翻歷史PRD、熟悉程式碼邏輯、閱讀各種類庫的手冊,陸續將各業務線的指令碼重寫了一遍,邊做業務專案邊重構,整個專案持續了半年多,直到11年Q1完成。
現在回想起來,有些事情真需要一股衝動,正如買房、結婚。如果主管讓我再多考慮半天,我興許就慫了。當然,人生也可能走入另外一條主線。
2011年日文站業務合入B2B,我也參加並透過新事業部的年中晉升(至P6 ) 。
2011年阿里巴巴日文站誓師大會
P6:內部創業 + 前端的無線爆發 (2011.07-2014.06)
兩段非常寶貴又特別的經歷。
2011年下半年主動選擇加入阿里內部的創業專案:打造一款面向個人消費者的雲產品。 團隊不大,20多人,各路專家雲集,各負責人級別都很高。很享受這段工作旅程,我第一次參與桌面Hybrid端專案,第一次開發SPA Web應用,第一次參與跨桌面軟體/PC Web/H5的專案,第一次領略敏捷管理的魅力。在來自美國的技術Leader帶領下,我接觸到很多新領域,極大地開闊了技術視野。
“創業失敗是要承擔風險的,沒有加薪,沒有晉升,而且還是996,直到專案成功”。第一次面試這個專案前,業務負責人,阿里工號16的虛竹告訴我。
不算幸運的是,最終這個專案沒有取得如預期的成功,業務有了變化和調整。
但幸運的是:這段經歷讓我親身體驗了一把“創業”,也感受了技術以外的方方面面艱難。這個過程中形成的產品和業務思維,對我日後帶來了深刻影響。當然,也在我之後幾百次想離職創業時,這段經歷讓我能夠靜下心來思考創業的核心 - “為什麼要創業?我有什麼資源、能做什麼事情、創造什麼價值?”
忘了說,這段經歷之所有特別,還因為辦公地點在湖畔花園——馬老師家。
湖畔花園辦公場地
2012年7月,加入到天貓的前端團隊。 主管給予了充分的信任,讓我負責天貓H5首頁的研發,開始接觸淘寶前端—— 一個更成熟完整的技術體系。
2012年底,@三七 加入天貓帶領前端團隊,作為國內前端領域最早的拓荒者之一,他在隨後的兩年時間給天貓的前端技術帶來體系化的變革——從模組化到工程化再到生產環境的NodeJS,並引入了Mobile First理念。在他的支援下,我帶領了一支前端小組陸續參與多條業務線的開發工作。我自己也加入集團級技術建設,主導跨端Web的專案,推進了前端體系的移動化建設。
除專業技術外,花了比原來更多的功夫在團隊工作上,包括不限於團隊氛圍、風格和文化的打造,學會在內網分享中學習借鑑前輩大拿的的管理方法論。在阿里的文化中,非常強調傳承。一個人牛不算什麼,讓一群人厲害才算厲害,最好是讓下屬比自己還強。
時間花在哪兒,結果就會在哪兒。團隊內一些業務尖兵逐漸冒出頭來,在後來幾年成為天貓甚至大淘系的中堅力量。
這個過程既痛苦又快樂。痛苦在於要做越來越多的超過自己能力層級、遠離舒適區的工作,快樂的則是能明顯感知到自己在這個過程中的快速成長。
很幸運,在14年年中,順利透過晉升(P7)。
P7:從雙十一中打將出來 (2014.08 - 2016.01)
2014年註定是難忘的一年。在這一年,我開始負責營銷活動的業務,並擔任2014年雙十一前端技術PM工作。
營銷活動是一個頂有趣、富有故事的業務:
從技術上:它可以極致簡潔到切一個頁面上線就行,也可以複雜到如雙11一般 ——它是阿里技術的年度大考。
從業務上:它既可以簡單到直接把現實生活的促銷活動進行虛擬世界的進行流程投射,也能如網際網路史上的春運般整合零售生態和供應鏈。
我和多個團隊在天貓制定了各個維度的技術規範,如內控標準、外包規範,有驚無險地渡過了14年雙十一。
在PC時代,營銷活動的研發模式,對於前端來說,實在過於“簡樸”:“5到6位正式前端常年帶著數十個外包,根據運營需求開發成百數千的頁面,透過一個叫做TMS的運營系統預留坑位給運營同學填資料,交由後端應用推上線(CDN)。” 這類業務活動頻次高、頁面量大、協同成本高。某種意義上講,對前端技術挑戰並不高,為了更高效的研發,我們能做的是不斷提高元件和模組複用率。
感謝TMS,它幫助前端們快速迭代出一個又一個頁面,支援了集團的業務,即使在今天,它的設計思路都能稱得上精巧犀利。
發生變化來自2014年雙十一前,線上發生了一次令我終生難忘的離奇故障(涉及敏感資訊,略過細節):當時因臨時未排查出原因,VP現場觀摩面,我和CDN運維團隊的同學們能做的只是不斷重啟叢集應用緩解問題。
我作為時任前端PM,也因技術方案選擇失誤受到批評責罰。(時隔多年,大家也偶爾調侃,責罰不冤,幸而那天的問題提前暴露而未發生在11.11號當天,否則後果難料 )。
那年雙11最終還是完美謝幕,GMV 571億,移動端成交42.6% ,很多人敏銳的感覺到:移動化時代到來了。
之後技術覆盤,我們針對問題做了多輪討論和推演,決定啟動一個代號“斑馬”的產品專案:基於我們對營銷的理解,運營的實際需求、過往的技術痛點,設計一個高效的頁面系統來支援運營快速釋出活動上線,更重要的是它是完全的基於Mobile First設計的系統。
正所謂 “一飲一啄,莫非前定” ,因為過去一年的打磨錘鍊、痛過後的反思,我們很快把方案框架敲定,並和多個業務搭檔共同推進專案實施。
專案於15年初立項,我代表團隊“激進”的將階段目標定為“支撐2015年3月的春季大促” 。這種既要支撐日常高頻的大促業務,又要同時從0到1做平臺研發,不啻於“飛行中升級引擎”,困難很大。但我背後的思考是:“這就如同創業,沒有一往無前的決心和一鼓作氣的氣勢,等想多了細了,多半就慫了怕了”。
我負責整個系統及PM工作,團隊培養出來的中堅力量們承擔各個功能模組研發。為實現我們心中所定計劃,整個專案組如同創業般激情,為了一個共同的目標奮進。春節假期不少同學還在主動提交程式碼,節後迅速返回公司繼續專案。
很幸運,克服了重重困難,“斑馬”專案順利上線,併成功支援了2015年第一個S級大促。基於新的系統,我們共同把營銷活動送上新的軌道:因模組化帶來的效率提升讓我們完全解除了外包依賴、因具備跨端能力運營們可以單次同時進行PC和無線活動、我們設計並推動了CDN構架,單在15年雙11就節省了數千萬預算。
隨著技術迭代,“斑馬”這個技術產品,在後面幾年成為阿里的基礎運營平臺之一。
2015年5月,我參與了P8的晉升提名,結果未透過。Leader和我溝通:“成長很快,能力和規劃出色,業務成果需要時間驗證”。我很坦然接收了建議,晉升答辯中的技術評委的建議中肯不失公正,讓我受益很大。
“但行好事,莫問前程”——在隨後的時間,“斑馬”的能力更為完備。我再次擔任了2015年雙11的前端PM工作,業務也順利上線。那一年,雙11當天GMV 912億,移動端成交68%。
16年1月,新主管告訴我,綠色通道透過,晉升至P8。
雙十一令牌/虎符
P8:立足業務,敢想敢造 (2016.02 - 2019.07)
一次偶然的機會,看到一張圖 :如遵循民意蘋果手機會變成什麼樣?給我帶來一些對業務和技術的思考:“頁面釋出系統本質上是一個通用的工具平臺:前端/運營/設計師都是它的使用者,每個角色都有對它的功能需求。但每個新增功能在解決一類使用者需求的同時又增加了平臺複雜度,降低的客戶的易用性,丟失掉另一類使用者的民心。”
“這興許是一個產品的輪迴宿命”,我內心有些敬畏地想。帶著這個敬畏,時間到了2017年,隨著斑馬的功能日趨複雜,我決定將運營操作平臺和底層技術能力進行剝離:
將斑馬定義為運營系統,專為運營打造極致的頁面搭建。
將底層能力抽象成服務平臺(代號“天馬”),提供開放的研發標準、搭建方案、頁面渲染能力。
隨著時間推移,“天馬”的開放能力不斷完善,越來越多的事業部基於它構建面向業務的平臺系統,帶來的技術回報是:技術複用減少從0到1的研發&硬體成本、標準統一使跨業務協同變為可行。
而在技術的另外一邊,業務發生著悄無聲息的變化:16年雙11GMV 1207億、17年雙11則是1682億。每年雙十一在如此巨大的基數下還能持續業務高增長,個性化演算法、推薦技術的大規模應用起到了非常重要的作用。在全域性效率上,大資料優於人工干預逐漸得到了共識。在我看來,這些變化意味著時下大家認可的大促會場模式,也將帶來新的變化。
2018年2月,我在內部做了個分享,描述了對營銷活動未來的預判:
業務化:面向“活動”組織,而非頁面。
產品化:構建常態化、心智化的大促產品矩陣,而非單純是模組級的抽象。
智慧化:投放演算法化和規則化,而非運營的動態化。
基於以上預判,我和團隊的小夥伴,計劃聯同業務、上下游技術團隊共同構建一個面向營銷活動的平臺產品(專案代號:方舟)。
很感謝歷任主管實仙/四虎的信任,願意幫我頂住重重壓力,經過多輪溝通,我們達成了一致共識。
和過去幾年稍有不同的是,我逐漸把包括不限於方舟的一些重要產品放手給團隊中的骨幹/TL,讓他們去規劃、去驅動、去變革。我更多做了輔導性、資源性、業務判斷的全域性性工作。
隨著時間的推移,越來越多的結果開始凸現:
斑馬逐漸成為集團級的通用平臺,數萬小二同學用它釋出管理業務。
方舟作為業務平臺交付成為大促體系的核心部分,併成功應用到雙11期間,在效率、效果和交付質量上取得矚目的結果。
天馬透過“開放共建、出海上雲”,為集團多個BU提供基礎的技術搭建服務。
在業務中,團隊中沉澱出一個個技術產品:渲染引擎、API聚合閘道器等,也把曾經僅服務於內部的產品開放到商家、ISV。
在2018年中,提名參加晉升面試,結果未透過,技術委員會的評委們建議更多參與“集團級的技術建設、更高格局的視野”。
我很快走出了沮喪,畢竟在阿里,常勝不常有失敗倒常伴。更重要是,主管 @四虎 的開導讓我開始思考更全域性的未來。
隨後的時間,我繼續投入了2018的雙11前端整體工作,推進了多個端技術方案落地天貓。感謝阿里前端技術委員會主席圓心的舉薦,我加入前端委員會,擔任搭建技術方向的Sponsor - 旨在站在集團視角,定製標準、融合並打通搭建技術體系,在更大範圍內賦能業務。
在集團內各個前端Leader的支援下,我們很快跨多個事業群達成了共識,制定完善了技術標準,基於一體化方案啟動了多個層面的專案。
2019年5月,參加了年度晉升,順利透過P9晉升。感恩。
P9:不止於前端
現在,仍然有太多的事情值得去深入:
1. 以雙11為代表的大促前端體系仍然是業內最具技術挑戰的業務場景之一,包括不限於客戶端容器技術、服務端渲染(Node)、框架與元件體系、跨終端技術等綜合應用。
2. 阿里有數以億計的消費者,如何為我們的消費者構建一個好玩有趣的互動購物體驗,是我們這個團隊一直需要探索和改進的。
3. 在未來,源自於前端的搭建技術,不僅能支援小二還能服務生態角色,不僅能支援國內還要服務全球。
除以上,我也深度參與阿里前端技術委員會的工作:
在阿里的前端體系,除了搭建方向以外,有相當數量的跨事業群共同建設的技術方向&專案,包括不限於Serverless、IDE、智慧化、中後臺、資料視覺化、工程化、Node技術等。這些技術方向或者始於前端,但又不止於前端,共同為打造行業領先的技術生態服務。
有期待有更多的優秀的同學加入阿里,讓我們的智力和努力觸碰到數以十億計的使用者。歡迎加入聯絡我:wenliang.shuwl [at]alibaba-inc.com
最後分享一些過往些年的的心得:
關於工作:
1.想做好一件事情前,獲得上級的認可非常非常重要,這是把一件事情做成、做好的催化劑。
2.很多時候,源自“事”的困難都可以用態度解決,來自“人”的困難可以用換位思考解決。
3.對於剛參加工作的同學,如果家中無礦,啥也別說,努力就對了!畢業五年內的表現,可以決定人生很多事情。
4.如果你和領導發生分歧:拿出你的資料/理由/態度盡最大的努力去說服他,如果充分溝通還形不成共識,那就先聽他的 。這不是媚上,而是“在必須達成一致的前提下,相信更有機率做出正確決定的人。”
5.在工作中,如果某個時間突然發現和往常不一樣,陡然壓力變大/身心疲憊,別害怕 ,因為,這有可能是你在成長、突破瓶頸前的黑暗期。
6.專業技能是立身之本。從長期來看,它是價效比最高的投資標的之一。
7.結合資源,盡最大的努力、用最好的態度,做好手上的工作,也是一種創業。
8.不要因為背靠大樹久了,就誤認為自己是顆大樹。對客戶&使用者的尊重和價值創造是我們很大的護城河。
關於生活:
1.技術人讀書工作掙錢養家,一步步成長同時也會一歲歲變老。相比不少行業,網際網路行業自身有賽道上的優勢,但如果單純以同比其他行業略高的溢價按年/月出售自己的時間和技能,這不應該是我們做的。堅持不斷的思考、透過技術優勢帶來疊加價值,在過程中不斷成長 , 這興許會更好。
2.學會獎勵自己。如果經受了辛勞、痛苦和壓力走了過來,再不好好的、肉痛地獎勵自己一把,哪對得起過去和未來的自己。
3.除了在工作中,人生處處皆可學習:學理財、學打球、學拍照、學游泳、學健身、學拍短影片、學習怎麼把生活過得更好。
4.最後,我們們技術人可能很忙,有可能沒法“work-life balance”,這是一種取捨。但健康的身體一定是最寶貴的一筆財富,沒有之一,不能捨。謝謝大家。
原文連結:https://mp.weixin.qq.com/s/W7QGj3OqAbX8gDlna2jg7g
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31562044/viewspace-2668144/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 從教女友寫程式碼中學到的
- 真▪一行程式碼完成從前端程式碼build到部署線上行程前端UI
- 程式設計師從教女友寫程式碼中學到的程式設計師
- 從前端到全棧前端全棧
- 從 Java 程式碼到 Java 堆Java
- 從前端到“錢”端,前端程式設計師的出路前端程式設計師
- 《程式設計師修煉之道:從小工到專家》之程式碼質量程式設計師
- 前端從? 到? gRPC 框架前端RPC框架
- 程式設計師修煉之道-從小工到專家程式設計師
- 程式碼真的有必要寫到完美嗎?
- 從0到1編寫一個指令碼引擎指令碼
- 從前端到“錢”端,前端程式設計師的出路在何方前端程式設計師
- 前端技術 | 從Flux到Redux前端Redux
- 從前端小白到大佬 flex下前端Flex
- 從設計到程式碼:探索高效的前端開發工具與實踐前端
- 從後端到前端之Vue(二)寫個tab試試水後端前端Vue
- 從後端到前端之Vue(一)寫個表格試試水後端前端Vue
- 從 1 到完美,寫一個 js 庫、node 庫、前端元件庫JS前端元件
- 從零到一編寫MVVMMVVM
- 《程式設計師的修煉之道:從小工到專家》程式設計師
- 從電商到軟體市場,阿里雙11戰火蔓延阿里
- 從0到1編寫一個JS指令碼引擎JS指令碼
- 從猿到IT程式猿
- 從程式碼到部署微服務實戰(一)微服務
- dlopen程式碼詳解——從ELF格式到mmap
- 把成熟的程式碼從.NET移植到MonoMono
- 從try-with-resources到ThreadLocal,最佳化你的程式碼編寫方式!thread
- 微前端框架 之 qiankun 從入門到原始碼分析前端框架原始碼
- 讀《程式設計師修煉之道:從小工到專家》有感程式設計師
- 從Java程式設計師到架構師,從工程師到技術專家,迷茫之路如何點亮Java程式設計師架構工程師
- 這樣寫程式碼,真是帥到沒有朋友
- 從DTFT到DFS,從DFS到DFT,從DFT到FFT,從一維到二維FFT
- 我從程式設計寫軟體學到的 7 件事程式設計
- 從開發小白到音視訊專家
- 從業務專家進階到管理者
- 從0到1,小白的前端摸索之路前端
- 從前端到全端:JavaScript逆襲之路前端JavaScript
- 從django的SECRET_KEY到程式碼執行Django