一个前端的职业轨迹
本文首發于歐雷流《一個前端的職業軌跡》。由于我會時不時對文章進行補充、修正和潤色,為了保證所看到的是最新版本,請閱讀原文。
從春節回來開始直到現在,公司就像開了閘的西湖水一樣進行著新陳更替,可以說開發團隊算是重組了。眼看著身邊發生這種情況,雖然沒有什么想法但還是有了點想法,所以想寫篇文章闡述一下。幾天前還在朋友圈里撒下了種子——
本來是打算著重寫「職場危機」的,但前幾天看到了「計算機之子」程劭非(winter)的文章,也就是在第二屆 FEDay 前端開發者大會上的分享的補充版,《一個前端的自我修養》之后有些共鳴,再加上最近在職業發展上有點思想上的轉變,所以這篇文章的主要內容就變成了講述「職業軌跡」。
本文是從自身經歷出發,再結合對他人的了解所進行的總結,故標題中的「前端」可以理解成「前端工程師」這個職業,也可以理解成是我自己。
背景
我是一個 80 后,準確點說是 85 后,再準確點就是 80 年代的尾巴。掐指一算,已經快 30 歲了,想想有點小悲傷呢……
內向的我絕大多數時候不想動嘴,喜歡一個人靜靜地待著。
因為這種性格,我社交能力不是很強,也不喜歡隨隨便便就跟一個人建立聯系;但是我思考總結能力略勝一籌,想象力也稍微豐富一些。沒辦法,普通人在社交能力和思考能力當中只能占一樣,這是性格特點所帶來的「技能加成」,如果全占的,不是天賦異稟就是自我訓練能力特強。
因為做事方式,有些人會誤以為我是處女座,然而并不是,實際是跟下面這位一樣——
借喬幫主的光,為我指明道路。
職業選擇
我天生就是個好奇心重的人,對很多方面的事情感興趣,也愿意去為了感興趣的事物付出。我是一個興趣驅動的人,絕對相信只有對一件事情抱有興趣甚至愛上它才能夠做好那件事。
所有事情中,最激動人心的就是去創造一個東西!寫作是創造,繪畫是創造,編程也是創造,這些都是我的愛好并且一直堅持在做。但作為職業,寫作和繪畫不太適合我。其他的創造類的事情中成本最低的就是軟件開發了吧?去進行實物的創造需要不斷地購買原材料,試錯的成本較高;然而寫代碼就不一樣了,基本有電腦、電和網就差不多了。因此,填志愿時我報的是軟件專業。
在實習時,我是做客戶端開發的,用的是 VC6,做起來很是枯燥,一點激情都沒有。后來開始寫博客了,想要個性化自己的頁面,發現能夠很容易地將自己所想的用代碼表達出來,感覺很是好玩,讓我充滿激情!以之為契機逐步了解前端技術,記得那年是 2009 年。我是先接觸的 HTML、CSS,在找第一份正式工作時才去學 JavaScript 和 jQuery。
工作經歷
第一份工作是在老家的一個算是外包公司的小作坊,每個人整天到晚就是忙著工作,都沒什么技術交流,在那期間沒學到什么很有用的東西,不到一年我就離開了那里南下杭州另尋一片天空,聽說走了不久那就倒閉了……
來杭州后的第一份工作是在濱江的一家 web 安全行業的公司,不是互聯網公司,做的是面向企業的 B/S 架構產品。因為做的不是互聯網產品,成就感就是差一些,并且沒太大的挑戰性,再加上客戶的性質,不適合我。
之后的公司是一家既做游戲又做在線教育的公司,這兩個業務分別是不同的「子公司」在做,我是做在線教育的。當時的專職前端只有我一個人,沒什么人交流專業技術,感到有些孤獨寂寞冷……另外,都兩年多了業務一直沒怎么起來,所選擇的方向做起來有點困難,人生苦短,再耗下去我就完了……不過,這家公司在開發方面還是有很多優點的,氣氛也是比較緩和輕松。
再后來,就是做汽車電商的買好車了。入職后把代碼拉下來看了一下,給我的感覺就是一個詞——混亂!無論是目錄結構還是 git 分支。B2B 業務開始后,前端采取了新的開發方式,目錄和代碼的劃分更為清晰;雖然還不夠嚴格,git 分支的管理也開始使用 Git Flow 了,提交規范也要搞起來。這些都在朝著好的方向發展。在這里,我想也希望自己能夠擔當團隊中一個重要的角色,不是 leader,而是幫助團隊加強生產力,引領提高整體水平的存在。
思考
多年的工作經歷以及通過各種形式在跟其他同行交流后,讓我對職業、職場和與公司之間的關系有了更全面更客觀地認識,看到了一些問題。
職業素養
無論何時何地,一個人在群體中活動時需要有公共的規章制度進行約束,更需要個人對自己的制約,這是更為重要的事情。在職場當中,就是職業素養,大概包含以下幾個方面:
職業道德;
職業思想;
職業行為習慣;
職業技能。
前三項用通俗易懂的語言來說就是:忠于公司、愛崗敬業、遵紀守法、積極進取。不管從事什么行業,這些都是共通的,是作為一個職業人所必備的基本素質。第四項則主要包括日常工作技能及專業技能。一個白領在日常工作中應當能夠書寫用詞得當、排版規整的工作郵件以及掌握辦公軟件的基本操作;關于專業技能的事稍后會說,這里就不贅述了。
不得不說,「有些人」的職業素養真的很差!他們會有如下思想和行為——
做軟件開發的工資高,這是很多人對軟件行業的認識。尤其是分支之一的 web 前端開發,由于近些年來互聯網行業和前端技術的發展,前端工程師的薪資水漲船高,一大批人涌進這個行業。
這些人中有很多是因為這個職業看起來薪資高且門檻低才選擇進來的,這催生了一些培訓機構和從培訓機構出來的人。他們對這個職業根本就沒什么興趣,完全是沖著錢來的。在面試時如果碰到稍微有些要求的公司,都會被 pass 掉。運氣好的話會遇到沒有專職前端的或者要求較低的公司順利通過面試,這很有可能是一家節奏較慢,不怎么緊張的公司。
在一家沒有緊張感的公司待了一兩年,養成了懶散的習慣:經常性遲到,甚至是嚴重遲到;稍微感到不舒服就請假,即使年假已經用完;每天準時下班,就算當天的工作沒有完成;不思進取,專業水平跟不上也不去努力學習;無法溝通,讓與他協作的人無語;工作時間的大部分是在聊天灌水而非工作或自我充電……
這種人上班就是去打醬油的,拿著公司給的工資而不作為。這些惡習一旦養成,無論他們換多少工作也很難改掉。不過,恐怕離開了那個「安樂窩」,他們就再無去處了。
技能成長
每個從業人員都應關注自身成長,這不僅關系到自己的專業程度和所體現出的價值,說得實際些,還關系到拿到手的 money 和圈內的聲譽名氣。
程劭非的那個分享的主題就是關于前端工程師的成長。他將成長分為「知識」與「能力」兩個方面,比重分別是 20% 和 80%?!钢R」中包括了比較穩定且幾乎不會被推翻的「標準」和變化很快的「技術」;「能力」里包含了用代碼解決問題的「編程能力」、解決代碼規模問題的「架構能力」與解決協作問題的「工程能力」。這種劃分方式我是十分贊同的!
可以看出,對于一個前端工程師來說,去閱讀理解標準和訓練培養能力才是真正穩健并有益的做法,追逐日新月異的技術和框架是很膚淺浮躁的行為。
技術或框架的誕生是為了解決某個場景下出現的問題,有一百個場景就可能有一百個以上的技術或框架,它們是特定問題的解決方案,是工具。創造一個技術或框架,需要的是上文所提到的能力,然后遵照標準去開發。由此可見,標準和能力的重要性遠遠大于技術和框架。
不光光是前端工程師,只要是從事軟件開發的人就應該意識到,一名軟件工程師的核心實力不是懂多少語言會多少技術,而是編程、架構、工程等能力的高低。優秀的開發人員不會把自己局限于某種語言或某個技術,那些都是可以根據實際需要進行調整更替的,而能力是不可替代的。
遺憾的是,很多人在工作三五年后的關注點仍是在技術、框架或工具上。這些人要么是功利心太重,進入這行就是為了拿高薪,沒有愛;要么是沒去思考過職業規劃,別人學啥就學啥,隨大流;要么就是不夠聰明,沒有看破軟件工程師這個職業的本質。他們要學的東西受市場需求影響很大。
寫進一家公司的招聘信息中的對應聘者所掌握技術的要求,是這家公司的技術架構所決定的,而其技術架構是公司里的軟件工程師根據業務場景經過技術選型所制定的。也就是說,那些沒頭腦的「軟件工程師」的職業路線受軟件工程師所擺布。
「軟件工程師」在進了一家公司后基本只能做做底層的苦力,核心業務啥的跟他們沒太大關系。還想拿高薪?先講講「閉包」是什么?
如果能像賀師俊(Hax)那樣牛逼,你就是站在「金字塔」頂端的人!
公司挑選
在公司中的歷練對一個人的成長起著十分重要的作用,在不同類型的公司中待過之后,我覺得對于我們寫代碼的人來說公司一定要精挑細選!我在各種場合不只一次說過:
選擇到什么樣的公司去工作是一件需要萬分謹慎的事情。進錯公司毀一生,我不是在開玩笑!不要小看人性的弱點和環境的作用。
是的,不要小看人性的弱點和環境的作用!
在「有的公司」里會遇到如下情況——
為了節約成本會把不同崗位的事情都塞給你一個人去做,傻傻的你覺得這是一種鍛煉,了解了多個崗位的事情……Are you kidding me?干多個人的活拿一個人的工資,還覺得這是鍛煉自己?要真想鍛煉為啥不利用業余時間做些自己想做的項目?
工作從早忙到晚,做的竟是些重復性沒難度的工作,對自己的成長毛幫助沒有。公司沒提供有挑戰性的工作也就算了,還剝奪個人自我學習成長的時間。當別人問起工作咋樣,聽到自己工作忙像是挺好的樣子,實際啥都沒學到,白白浪費了青春。
你在公司的作用就是干活的人肉機器而沒有發言權,提出的建設性意見在上級眼中就是屁,需要你去做的事情在討論需求階段不叫你去參加而直接分配給你任務去做……還談什么參與感?!什么把公司的事業當成是自己的事業?!
如果想要自己的事業路線走得順利,就要避免進入具備上述特點的公司。但這些在沒進去工作一段時間時很難知道,除非有認識的人或者通過其他方式進行側面了解。不過,有些特點在網上查查或面試時問問就能知道:
是否為互聯網公司;
是不是某集團下屬的子公司或已融資 A 輪以上的公司;
五險一金會不會全交以及繳納基數;
年假的天數多不多;
升級體系是否完善;
是否提供零食、飲料、水果;
有沒有健身休閑娛樂室。
要是一家公司有好幾點沒達標,那么基本可以把它判定為「不靠譜」,就不必考慮了。
有人會覺得 6、7 條就是扯蛋,有沒有那些又有什么關系呢?當然有啊!它們的存在可是體現了一家公司對員工的人文關懷啊!也許你會問:「照你這么說,那些公司就沒人去了?!」當然有啊!那是給「有情懷」的人去的。
當然,例外總是會有的。要是某初創公司的 CEO 從各方面被證實了人品性格好,富有卓越的遠見和優秀的行動力,即使只滿足 1、2 點也是可以考慮的。
職業之路
自己所要走的職業道路的目標和規劃都是越早做越好。在踐行的過程中難免會有偏離正軌的時候,但只要大方向上沒錯就沒太大問題,能始終如一是一件難得的事情。
起初,我是想在技術上進行深入研究,走在業界前沿,成為一名布道師到處進行演講,就像程劭非和賀師俊他們那樣。然而,現在我的思想中混入了對于科研型技術人員來說具有致命破壞性的「不純因素」——財富。因為我對未來生活的憧憬,我想要的那種生活需要一筆巨大的資金作支撐。
現在想想,能夠讓我在技術上進行深造的同時擁有大量鈔票的方法,能想到的只有在某個具備上市潛力的成長型創業公司中身居技術部門核心地位并且手握很多股權,當時最好是 33 歲左右。
那么問題來了——如何分辨一家公司是否具備上市潛力,并且讓還算年輕的我能夠在合適的時間經過努力奮斗處于核心地位,是一件較為困難的事情。
如果時間能夠倒流,剛畢業那一兩年說死我也要進大公司去工作!一次面試不行就閉關一段時間后進行第二次,再不行就三次,直到進去了為止!若是那時進了阿里巴巴,還有股票拿。
現在的我處在職業和人生的十字路口,該往哪走,且容我再好好想想。
總結
- 上一篇: js中创建form表单
- 下一篇: chrome浏览器net::ERR_TO