前言
應該不止一次參加這樣全國規模的前端會議了,從六年前踏入前端到今天依然在帶一個前端小組在夜以繼日的寫業務程式碼。在會議中會因為切實的大佬對技術的獨到觀點而興奮而替他們高興、會因不同團隊對前端輪子創造的充實和自豪感、會因他們對技術前驅的倡導而膜拜。是的,我整個會議議程聽下來是這三種感覺的混雜。
也有對自己職業的深刻感想,僅此分享給將要入行前端以及入行多年,不管是在杭州還是北京、上海,不管是小公司還是BAT這樣的大廠,說一說自己從業下來的幾個體會。與技術本身弱相關,與前端與職業與人生方面強相關。
選擇合適的目標
在自己之前的掘金文章中分享過一個技術人員的職業生涯大概是怎麼樣的,每個階段應該做什麼,但那是個標準版的答案,相信很多人最後不是那樣的一個過程。(傳送門:技術人員的職業規劃可能是這樣的)
可能目標一 :技術大佬
應該說能夠開發維護一個開源框架,或者造出一個還不錯的開源輪子,都算是行業內的技術大佬了。比如vue作者:尤大;elementui的餓了麼團隊等。
如果要做到這點,需要很強的技術執念,很好的技術基礎,耐得住技術本身的枯燥,看得到技術本身優化帶來的未來價值,能夠在最後的升級、技術產品中找到自我定位、人生成就感、自我的快感。
如果說是想成為這樣的人,但對於還不確定是否自己就是這樣人,那看下首先:
1 自己是否持續關注了一些最新技術的特性,比如deno,vue3,webpack4,關注了代表你是有興趣的,而你關注的時間如果是下班或者休息時間就更證明你是這類人。
2 分析已經在用的技術究竟好在哪裡,為什麼這麼用,我們的用法合理麼。比如面試題裡會問es6,會問react和vue的對比,但實際上,難道不面試、沒人問我們,我們真的不去思考麼?當陣列的find、includes語法出來之後,為什麼不去分析下他的效能、合理性、簡潔在哪裡,為什麼不去思考下我如果用了vue用的是否夠好,是否理解了vue的核心思想,去更好的實踐,而不是vue的高階api使用者。因為在很多時候,我會看到大部分的號稱中級甚至高階前端,在寫vue頁面程式碼的時候,對於class,style的部分的理解和使用還是用原來jq還有原生的套路,去找這個元素,然後去改的樣式,如果有看到element的原始碼,應該很容易看到,元件是把這部分用data或者方法去承載的吧。
3 自己是否是技術興奮型的。反正我是,但不是很強烈的那種,當我聽到尤大在講vue3.0在進行升級,優化了執行時、體積、記憶體之後,以及是通過什麼樣的思路優化這些時,很贊有沒有,我們也可以看到他在分享時的那種享受,對自己成就的自我肯定。但照進現實,我們的公司或者技術團隊是否能採用,是另外一回事。如果從這點考慮,也許很多人會對新技術本身是失望的,因為不能解決自己工作中、業務中的棘手問題。很明顯的,我感覺到當尤大講到會不會支援ie時,大家是關注這個點的,因為業務就是業務,我們需要關注剛需。所以是否自己或者團隊能找到業務和技術興奮度的平衡感是很重要的。因為有些公司的技術棧可能還是jq的,對於可能近幾年都不能轉型為新技術的前端來講,這裡的技術福利是香而不可食的。
4 自己是否有期望有可能成為引領技術變革的人,公司是否會給你這樣的機會。如果說註定是要想成為技術大佬的人,那麼按捺不住的你一定會選擇去創造新技術,去技術棧好的公司,去為現在的公司做技術架構調整。這是一名技術執著的大佬會有的魄力。而有些雖然掛著技術經理、技術總監頭銜,卻職業定位完全是專案經理、業務經理的人,重心是不在這個領域的。而實際來講,對於公司,不同階段,這兩種人都是需要的。
番外篇:曾經在杭州一個高階技術群裡和一些ceo交流過一些問題,關於技術人員定位或者cto定位的問題,發現很多ceo對技術是有一定偏見的,尤其是對底層的程式設計師,對他們的定位完全是業務實現者,而對他們的專業能力、專業瓶頸完全不考慮,也不會說考慮技術本身的更新性。當然,更不用提技術反推業務了。在業務方或者ceo或者其他職能的眼中,管你是什麼技術,我的需求是最緊要的,至於因為技術迭代換新導致的問題,需要技術自己完全買單。而技術給自己買單的過程,卻全程不給機會,沒有合作的平臺。大部分小公司都是這麼幹的,在他們發現問題的時候怎麼操作呢?把這批技術人員下線,重新招聘高能力人員。但仔細對比就會發現,在一些獨角獸或者bat的大廠,技術是可以承載更多價值,可以引導吧需求做的更好,可以反推需求,可以利用技術成品去大量的降低成本,這種模式是很成功的。而小公司不這樣做,核心原因是耗不起、容不得不成熟的技術團隊去試錯的成本,另外一個核心原因就是看實際情況,我們目前不需要那樣。不管怎麼操作,都完全沒有問題的,只是希望都能看長遠一點,不要僅僅做了當前那些事。我相信,這個現象不僅僅是程式設計師的,也是後端、產品經理、大資料還有等其他專業性職能都有的問題。
可能目標二 :高階前端
在網際網路快速發展的今天,前後端分離的今天,除了後端、產品當專案經理外,對於前端來講,當一名高階前端也未嘗不可。
我們就是成不了大佬但是能完美精確的完成需求的那批人,我們就是制定團隊規範、組織好團隊指導團隊完成業務攻堅的人。技術不一定是行業最好的,也不一定要很牛逼的東西,但工作範圍內足夠用,當偶爾超出業務範圍、技術範圍,我們也能解決。
與上面的技術大佬不同的是,這樣定位的前端已經對技術本身沒有那麼狂熱,而是對公司業務、實現產品價值更有興趣。也許在3-5年裡,技術提升也只有那麼一兩次在必要的時候精進,但這樣就夠了。事實上,有很多中小公司的技術總監都是這樣承載下來的。不要唯技術論,而要唯業務論,業務為主心骨,技術只是必要時、嚴重欠債時才會考慮。
番外篇:即使作為高階前端,也要有一點點的技術敏感性。不要完全為業務需求所累,因為即使這樣,當新需求苛求新技術時,自己如果不會,那就尷尬了。
可能目標三 :專案經理
在網際網路快速發展的今天,前後端分離的今天,除了後端、產品當專案經理外,對於前端來講,當專案經理也沒有很嚴重的壁壘,尤其在中小公司。
我們都知道專案經理的角色基本是確定需求,跟蹤進度,協調資源,風險控制,專案測試以及交付,後續運營輔助。
那麼,其實在整個開發鏈中,發現前端是整個業務感知最細膩的,尤其對使用者交付是直接負責的。而且前後端分離之後,前端對於資料的敏感性、操作性會進一步加強,能力稍強的可以整理出整個業務的資料流,業務邏輯等。所以前端對整個開發進度是有一定能力去把控的。
也許有人講到肯定是後端能力把控更合理,因為資料是核心,因為後端的問題前端解決不了。那我也想說,前端的問題後端就能解決麼?在我經歷的專案團隊中,也許大多數的前端程式碼看起來都非常簡單,但只能說明那些頁面需求很簡單,需要前端專業能力的,後端也是一片空白。然後作為一個開發團隊,不要指望專案經理要有能力解決專業問題才可以當。如果這個邏輯的話,那產品經理當專案經理不是更不合理。在組建團隊的時候,對於每個職能,就應該有對應的預期和風險評估,每個職能是否有能力完成自己的任務。如果後端或者前端能力不行,應該是換能力強的人上或者找職能主管輔助解決。
可能目標四 : 一份工作 && 一份生活
與後端的性質不同,前端是一名入門門檻很低的職業,而且薪資也還可以,工作性質屬於程式碼可見,最短鏈路的一個工種。所以,必然的會帶來很多非本專業的同學,很多女性同學。比如女的java,女前端,比例非常高。
不是很多人都有強烈的職業目標,有很多人只是作為一份工作。就和行政、人事一樣,很多可能做三五年,也並沒有太大的職業能力變化和職業規劃的變化。我對它沒有那麼的熱愛,也不想變成自己的事業。
對於小公司的大多數的前端需求,尤其簡單重複需求,其實本身就不需要招資深的前端去完成。這是一項工作,一個並不需要挑戰最新技術、嚴謹邏輯的工作。比如我們知道的,登入註冊頁、列表詳情頁,點選一個按鈕頁面跳轉,實際上很多基本操作因為我們的使用者規模、期望的體驗都沒要要求,所以都很簡單。
如果把前端當做一份普通的工作,其實就可以擁有一份生活。在阿里的文化裡,大家都強調很拼,為了理想可以996,甚至906。但還是有很多人也有理想,卻不是阿里那種。可能是我們在中小公司也有自己的價值和快樂,可以承載自己的業務。可能是我們可以收穫興趣和愛好,收穫家人。
幹工作確實要努力一點,尤其是年輕的時候,但也可以稍微不那麼拼,用一生去積累。多體驗一些生活,多去設計,多去實踐。不只是工作裡才有成長,你的工作也不是全部的可能,也許下一份職業就在你收穫其他,靈感其他時而變成自己的事業。
可能目標五 :人生充滿可能
我想大家在當前端時,一定沒有想過自己能做多久,自己的瓶頸會是什麼,自己是喜歡前端的什麼,又什麼時候會失去對他的興趣。當你不喜歡它的時候,也許工作本身就會變的乏味。當你喜歡時,就是一直坐在那裡做自己喜歡的事情。
大家一定不會懷疑像尤大,阿里大佬勾三股四,大漠這些人會不會對技術有什麼疑惑,還能幹多久。因為在技術的生涯裡,他們已經走了那麼久,找到了對技術的熱愛,所以技術不是工作,而是事務,而是做下去會開心的事情。包括大家都知道的阮一峰老師,人家寫了那麼多部落格,在沒有任何酬勞,可能沒有預想過自己會進軍阿里、成為帶隊人時。
而對於我們來說,如果你還沒有做那麼久,也還沒有達到對前端的一定的積澱或者沉澱。一定要好好想想這個問題。
技術是做一件事的一種技能,你是否喜歡做這件事。能做這件事是因為技術本身還是因為事情本身。在很多阿里的p89出來創業的時候,大家會明顯的發現,他們這時候重點在做事上。我們要用技術這個能力去做一件我想做的業務,我想做的產品,而不是關注此時我的技術還差多少沒提升,自己要不要搞最新的技術,我的技術帶來的薪資是怎麼樣的。
如果你決定你做事為核心了,那麼其實我們每個人都有無限的可能,前端只是一種最小的選擇。我們可以選擇從前端入手,瞭解網際網路產品的開發流程,可以瞭解醫療行業背景,可以瞭解大資料,可以瞭解與人溝通的能力,可以瞭解區塊鏈,可以瞭解一個產品背後的邏輯與商業模式。當變成這些時,你還有很多職業選擇。
大會能給我們帶來什麼
技術動態
在上面講到,作為技術,只要還是在做前端,我們需要關注技術動態。不管是不是能用到,不管我們是不是技術大佬還是管業務的經理,或者我們就是想不要丟了自己的飯碗。那麼來參加一些技術行業的知名會議,對於我們更好的關注一些重要技術的狀態是很有幫助的,因為大會雖然分享的少,但一定會列舉的是比較里程碑性質或者程式設計思想角度的大問題。
從這個目的觸發,瞭解下就好的角度,大會是平時我們關注動態少,關注不到重點的一種彌補。這個是傾聽學習瞭解的角度。
程式設計思維 && 漲見識
不管怎麼說,在一個固定的公司裡,我們的技術棧一般不會大的變革,我們的一些程式設計思想也比較固定了。
那麼這裡看一些知名的團隊在做些什麼,有那麼一兩個問題是自己也在關注,看下他們怎麼做的,沒有乾貨,也能溼潤下自己。
再不濟,也比我們大多數時候看網路上良莠不齊的文章,來的高效。作為大多數非資深前端來講,其實很多問題、很多技術上都是迷茫的,而大廠在這方面的內容輸出少的可憐。所以大家在看到阮一峰教程時才會覺得眼睛放光,除了通俗易懂,更大的特點是,能通過他的教程得到了從入門到進階的一個階段。
另外一個特點,就是目前的90、00後都不喜歡看書,也不喜歡研究原始碼。所以可以看到很多社群隨便分享下佈局知識、高階程式設計的知識,前端社群就炸鍋一樣的,甚至每個人都發一遍自己的版本。
而大會上,肯定講的是一個不一樣的版本,有過實踐的,很漲見識對不對。
前端同行
對於前端來講,其實和大多數技術社群是一樣的,大家都會進很多群,卻很少交流。大會上能看到同行,這麼多,應該是很大的一種欣慰。
那麼對於一場大會,我個人覺得非常有價值的部分是diss,尤其針對主題性質的有價值的Q&A.
比如這次有提問到為什麼要對比antd vue 仿照antd react,怎麼支援阿拉伯語,至少從我的角度看,這兩個問題都很好。其實參加會議的每個人平時積累下來,都會有不少於十個以下的精華問題,而這些問題很多時候都是被零散的解決或者妥協了。而大廠或者一些技術大佬似乎能很好地解決問題,那麼他們是如何解決這個問題的,這個是大家最想聽到的一部分,最想diss的一部分。
團隊思考 && 業務思考
在分享之中,我們也能看到每個分享人基於自己或者團隊的立場,去分享一個事情的時候的核心點是什麼,分享的水平如何,其基本的思路是什麼,出於什麼樣的場景去解釋這個問題,以什麼樣的方法論、技術方案去解決。
我們更多的時候會發現,我們之所以沒有臺上的嘉賓做得好,除了公司的原因,還有運作方式不一樣、團隊思考不一樣。他們有更多的角度去讓技術產出、技術驅動變得可能,而我們更多的是技術讓需求變得可能,除此很少去思考出其他的可能。
我記得之前校寶有次邀請到了螞蟻的一個資深技術,後面轉型管理的分享。她講到很重要的一點,其實開始也是做技術啦,不過到後面發現,產品還有業務方有些細節設定的不合理,有些地方沒有考慮的更好,到這裡還是和我們一樣的。但後面他們變成了什麼呢?他們的技術加班加點,在技術考慮到位的基礎上,吧需求更嚴謹的描述一遍,用嚴謹的資料模型、資料包表分析給產品、業務方,然後讓他們看到技術帶來的影響。在拿到話語權之後,他們針對需求有越來越多的控制權、分析的能力,在解決基本需求完全沒問題的情況下,他們又做了技術的產品,去承載團隊內部技術需求、額外的業務需求、創造使用者需求。當在看到部門的產品矩陣時,可以看到好幾個技術產品。
雖然以上的過程不可複製,但值得參考,尤其阿里或者騰訊在幾乎任何需求的情況下,都不是直接完成,而是分析需求特點進行歸類工具化方案解決,這種點很好。把簡單重複的解耦出去,解放開發者能力,把剩下的再根據業務進行封裝。
人生百態
從波波的主持中,我們可以看到他在一直努力的嘗試做好他原來不擅長的事情,也會遭到知乎其他人的評價,甚至diss,詆譭。
其實每個人都何嘗不是如此呢,尤其作為管理者、倡導者,基本都會遇到不少的阻力、反對。但大家在堅持,有那些表率在堅持。
我們也看到這些嘉賓,我不知道他們是有償還是無償的,但是他們來分享了他們的收穫,我是感激的。尤其一些大佬,在分享、挑選自己要講的內容時,講的很好,也有的講師可能講的不是很好,但也非常盡心了。
這是一種分享的精神,而不要被理解成打廣告,我個人是有點反感打廣告的,也希望在以後的會議中大家多一點內容,廣告開始結束說下就好了,不要總是插播,這其實有點影響很多很遠趕過來希望聽點內容的觀眾。
而我也是樂於分享的,所以寫這樣一篇文章,包括掘金、部落格上也發了很多,很多是偏簡單的,但這樣就夠了,做自己想給大家分享的經驗,看看大家平時的工作中遇到的問題,踩過的坑,一起樂一樂,吐槽或者點贊下自己的開發團隊,不是很好的事情麼?
對於一場會議,不要因為麼有得到什麼而沮喪,失落,人生有很多時間投入了是沒有回報的。如果說我們沒有直接的收穫,那那些分享的人不是更加負的收穫麼。
總結
感謝波波老師還有大佬們今天還有之後開的一切會議,因為這樣才多一些機會了解,才能越辦越好,到中國的前端技術氛圍都變得很好,這是一個剛剛開始的過程。
我們的分享的嘉賓都還很年輕,聽講的也還都很年輕,我們的從業年齡和前端最新框架的發展年齡是一樣的,一起期待以後更好的每一年帶來的變化。