JS工程師的成長路徑

JS 提及來必須是一個神器,這個當年10天內被開發出來的神器,以一種誰也想象不到的速度快速發展,它擊敗了Java Applet,逼死Flash,當Android和IOS看似一統全球的時候,JS慢條斯理的和Html5一塊兒蠶食App市場,甚至還出來了NodeJS 這種連後端都不放過的殘暴東西。
 
原生和WEB的兩種方式一直在爭論不休,而我本身在三年前就是絕對的WEB支持者,windows對於JS支持的更完全,只是Winphone一直不給力。
 
好 吧,對於拿NODEJS作後端工程項目我仍是有點不情願,然而提供各類輔助工具什麼的仍是挺不錯的。JQuery,Ajax和RequireJS和 Angularjs和PhoneGap都是一些標誌性的轉變,還包括ReactJS。JS簡直了,簡直了,簡直什麼都不放過。
 
因此JS簡單麼?我帶着大家瞭解一下JS工程師是什麼樣子的。
1 工做內容:
 
JS工程師其實分紅兩類,一個是套頁面的,一個是先後端分離的。
 
對 於套頁面來講,JS工程師的職責很是簡單,一個是作一些簡單的動畫和交互和驗證,輪播圖,彈框,驗證用戶名是否爲空等等。另外一個就是經過Ajax取一些後 臺數據,而後在頁面上展現出來。那個時候的JS工程師並不被太多人重視,不少時候一些後端的人把前端的工做也作了--除了寫CSS,大部分的後端工程師寫 點JS仍是不成問題的。
 
可 是先後端分離的出現,不折不扣的改變了前端的世界。前端竟然有架構了,前端竟然也有「編譯」的概念了(你能想象麼,JS的項目竟然不能直接打開源碼直接使 用了,必需要通過編譯才能夠)。前端工程師和後端工程師只經過Json數據交互(感謝Nginx提供了一個完美的跨域解決方案,不再用什麼Jsonp 了),而後服務器端的同窗發現:好簡單啊,我對Android,對IOS,對Html都只須要提供一套API就夠了~~
 
前 端同窗更開心,不再用去搭建各類悲劇的開發環境了!前端變的很輕,並且控制慾很強(AngualarJS好贊),頁面跳轉神馬的SoEasy,並且也有 了Bower這樣的包管理工具,還有相似於JSP自定義Tag的指令,MVC,還有了Service的概念,馬丹,前端到底發生了什麼!
因此咱們如今說到的,基本上就是先後端分離的工程師,他們的工做職責就是和IOS&Android的工程師同樣,跟後端定接口,肯定框架和架構,分模塊,而後跟後端聯調互相吐槽對方是渣渣。
 
項目結束以後修復線上Bug,不停的跟用戶說:在我這裏是正常的,你換個瀏覽器試試?不行就清一下Cookie,再否則就換臺電腦。
 
2 須要技能:
 
環境【IDE(WEBStorm,Sublime,EditPlus),源碼管理(SVN/Git) ,WEB服務器(nginx)】
基礎【Http,REST,跨域,語法,組件,F12,Json,Websocket】
框架【JQuery,AngularJS,Bower,RequireJS,GruntJS,ReactJS,PhoneGap】
業務【金融,教育,醫療,汽車,房產等等等等各類行業】
第三方【微信,QQ等各類第三方登陸,支付,IM,地圖,語音,視頻,圖片】
 
環境不說了,參考CSS的。
基礎跟CSS差異就好大了,要有一些網絡協議的基本概念,要了解什麼是Http,什麼是Https,什麼是WebSocket,什麼是Rest,各類JS的語法(太複雜的徹底不用管,別去管什麼閉包什麼Prototype什麼This的指向),Json是必不可少的東西。
 
框 架就多了去了。直接拿JQuery來學習就好,表去太在乎什麼原生語法,大部分場景你都不用擔憂引入一個JQuery的庫致使系統變 慢,AngularJS真是一個好東西,表太糾結一些細節,Bower,RequireJS和GruntJS這些會有一些前端大牛幫你搭好框架你直接用就 好了。 
想作點App就用PhoneGap,想嘗試一下ReactJS就去試吧(我很想試一下然而看到有Render就看不下去了)。
 
必須提醒一次,若是你是從CSS轉到JS的,這裏強調的就是,你必需要懂業務邏輯,這跟CSS徹底不須要懂業務邏輯簡直是天壤之別,不少時候你並非由於技術而沒法學會JS,而是缺乏對於業務邏輯的理解。
 
固然啊,這並無完。還有無數的第三方庫等着你,作微信呢你必需要用WX的SDK,要用百度地圖呢就必需要用百度的SDK,還有各類支付啊神馬的。若是你要作IM就有環信啊神馬的。
 
因此。JS就是一個真正的程序員,一個真正的工程師,不但要能把代碼實現,還須要理解需求,須要懂得編碼規範,須要知道如何控制項目流程和進度風險,須要修復線下Bug,須要調優,須要作版本管理,須要制訂接口,須要編寫技術文檔,還須要作新技術的調研或者是帶新人。
 
如今你瞭解了咩?
 
3 發展前景:
 
我說了那麼多,大家對JS的指望也很高了吧。坦白的說,有點高的離譜!
JS是惟一一個能夠在兩年以內薪水到20K的職業。雖然工做五年或者是七年的JS在薪水上差異並不太大,可是也已經讓不少人難以置信了好麼。
 
好多人在別的行業,工做十年都拿不到10K啊親。
 
0~6個月:6K~10K
6~12個月:8K~14K
一年~兩年:12K~20K
兩年~五年:18K~30K
五年以上:24K~
 
JS的入門相對來講比CSS難的多,可是他的好處是學會一點是一點,並不像Java同樣,絕對是前期Gank型英雄,到了6級就能四處殺人。Java是後期,要到16級之後才能出山纔可以震撼全場。
 
因此JS相對來講比較平滑,並且如今學習的曲線也比較清晰,慢慢在業界都造成了相對完善的框架。JS能夠選擇前進的路有不少種,只要你不是太瞎,就沒什麼大的問題。
 
成長路徑:JS菜鳥-JS初級工程師-JS中級工程師-JS架構師-UED-前端Leader-前端大牛
 
大概這個樣子啦,JS工程師在後面有一點後續無力,通常來講,我仍是強烈推薦JS,IOS,Android三者通吃,在個人帶的Team中也一直要求他們這麼作(雖然並未能徹底實施成功)。
 
這三者有太多類似之處了,到最後你會發現,語言只是一種工具而已。要作的事情,實際上是差不太多的,並不須要對全部的語言都特別熟悉,有一種打底的,其餘的均可以隨意去玩了。
 
4.入門門檻
 
必須有CSS基礎,必須有CSS基礎,必須有CSS基礎。或者是有後端Java基礎。
 
總之你要麼是會了CSS,要麼是精通了一種後端語言,千萬不要CSS沒學好,後端語言也不會就直接學JS,內心會沒底,不踏實。
 
其餘的都沒什麼了,列出來的基礎知識,本身慢慢補就好了。
 
5.哪些行業適合作JS
 
IT界:CSS,而後是全部的均可以
其餘界:全部的均可以
 
好蛋疼的結論然而事實上就是如此,這波JS的紅利受益於微信,以及移動端的普及。我不肯定在三年或者是五年以後會不會仍是這種狀態,然而三年和五年已經足夠能夠改變你的人生了,因此,你在等毛線?
 
6.職業限制
 
JS的職業限制也挺多的,主要就在於學習的方向上很容易誤入歧途(至少在我眼裏是這樣的,相信我,我不是什麼好人,我並不會我說過的每一句話負責)。好比說一直堅持喜歡用原生,各類喜歡寫一些奇奇怪怪語法(我把我看不懂的語法都歸結爲奇怪的語法),各類回調等等等等。
 
學到一些好的框架其實很讚的,對於大多數人來說,就夠了。只是缺乏一個清晰的指引。
有的時候你會發現,你對Http瞭解的比較少,會是一個瓶頸。
你對數組啊,循環啊不瞭解,是一個瓶頸。
你對MVC不瞭解,也是另外一個瓶頸。
對Json不懂,不知道怎麼定接口,也是個問題。
 
這些都學會了,也會遇到一些問題。就是JS的工程師三年,五年,七年的差異,大多數人都不算特別的大。
因此總會有人想學後端--可是我絕對不同意學Java,NodeJS也能夠不去學,不如去學習Python,更不要提PHP啦(我真心不喜歡PHP,不知道爲嘛)
 
或者說,後端並非語法,而是牽涉到算法,架構,性能,業務,選型等等跟前端幾乎沒有任何關係的知識,因此學習一門腳本語言,能作點簡單的東西就行了。
 
仍是須要把注意力轉到IOS,Android上去。
 
7.去哪裏學,怎麼成長
 
若是你不想用這種方式去學習,仍是我以前說的那些話,W3C,而後作點東西,跟着去一家公司實習。
 

參考文獻 : 鳥哥筆記:互聯網行業14個熱門崗位html

相關文章
相關標籤/搜索