A. web前端初級面試要求
想要通過前端面試順利進入一線大廠成就高薪前端夢。那麼首先,我們得知道前端面試中,社招和校招究竟有啥區別?
對於前端開發來說,如果說社招更看重對前端技術體系的深入理解,以及解決問題的能力話,那校招更看重的其實是基本功和學習能力(或者說是潛力)。
但其實,無論是社招還是校招,面試的時候都會問到一些曾經操作過的項目,尤其是大廠,或者熱門高薪部門,面試官除必問的技術經驗外,也會對技術深度進行一個基礎的考核,那在這種情況下如何hold住大廠面試呢?
前端面試三要素:簡歷、個人介紹、技術能力。下面,就來分別聊一聊。
1、簡歷篩選關:
HR一般會去看簡歷中所提的技術棧是否匹配,怎麼看呢?我們可以抓住簡歷中的技術名詞,一般來說如果一點技術名詞都沒有提到,那麼大概有以下幾種可能:很水、很牛但概率很小、不會寫簡歷。所以,一部分人可能會因為簡歷的問題沒有了面試機會,這點是需要非常注意的。
2、個人介紹關:
通過了簡歷篩選階段,就真正到了面試環節。這時候一定要准備好一段最多3分鍾的個人介紹。請注意,最多3分鍾!言簡意賅的說明自己的工作時間,擅長技術棧和自己的工作預期。
3、項目經驗表達:
對前端開發學習者而言,JS並不陌生,但大廠的JS面試題卻總是顯得很「陌生」,怎麼樣能夠真正做到深入理解與高級應用?這不僅是面試過程中對前端求職者的要求,也是大多數前端開發者的痛點。
大廠面試中,面試官除了關注你的項目經驗外,還往往喜歡和面試者深入探討前端某些技術領域成體系的前端知識。比如:模塊化、非同步解決方案、網路、框架及原理、線程等,但在與面試官的正面battle中,求職者總會敗下陣來。
所以,建議大家在Web前端面試前一定要注重這三個方面的內容。注重了這些想找找到一份適合的Web前端開發工作並不是難事。
B. 前端開發前景怎麼樣
前端開發的前景當然是很好的。
web前端人才需求還會持續增加
據國內權威數據統計,未來五年,我國信息化人才總需求量高達1500萬—2000萬人。其中「網路工程」「UI設計」「web前端」等人才的缺口最為突出,所以2020年web前端的市場需求還是很大的。
更有甚者,目前不僅大型互聯網公司擬相繼成立了專屬的web 前端部門,中小型公司和創業公司也急需專業的web前端工程師。
web前端薪酬工資仍會上漲
從這組小數據和趨勢圖可以看出,前端開發行業薪資水平呈上漲趨勢,Web前端開發早已不是做帶動畫的下拉菜單的時代了,他們已成為互聯網主宰者,各行業都用其開發互聯網應用。
但目前整互聯網行業的Web前端開發工程師緊俏,企業正高薪求才,薪資待遇一漲再漲!
web前端就業方向廣
web前端開發在軟體開發中,就業門檻比較低,是比較好就業的,薪資待遇平均超過13k。在目前互聯網時代,只要公司有需要開發互聯網產品,包括網站,網頁,H5,小程序,APP等等,就需要前端開發工程師崗位,具體的就業方向還可以按公司的技術需求來區分,側重點各有不同,就業行業隨著互聯網的發展,已經變得越來越廣泛了。
我目前是在職前端開發,如果你現在也想學習前端開發技術,
在入門學習前端的過程當中有遇見任何關於學習方法,學習路線,學習效率等方面的問題,
你都可以申請加入我的前端學習交流裙:前面:六零零 中間:六一零 最後:一五一 裡面聚集了一些正在自學前端的初學者,
裙文件裡面也有我做前端技術這段時間整理的一些前端學習手冊,前端面試題,
前端開發工具,PDF文檔書籍教程,需要的話都可以自行來獲取下載。
web前端未來發展前途大好
隨著5G時代的到來,之後在移動互聯網領域將會出現新的開發場景,包括自動駕駛、車聯網、物聯網、人工智慧、智能家居還有可穿戴設備等領域將帶來大量的前端開發需求。有需求就會有市場,所以2020年web前端還是會一如既往地「紅」下去。
所以,想要學習前端開發,就不要猶豫;推薦來北京尚學堂,獨特的七大課堂優勢,雄厚的師資力量和科學的授課方式,絕對會帶給你最完美的前端學習體驗。
C. Web前端開發的職業方向定位有哪幾種
技術研發方向:
Web前端工程師、移動前端工程師、全棧工程師、技術總監、高級架構師
產品運營方向
交互設計師、產品工程師、產品經理、產品總監
D. 如何面試前端工程師
1、基本知識
我們生活在互聯網時代,你想知道的任何事情幾乎都能在15分鍾內找到相關信息。可是,能找到信息並不等於你會使用它。我認為所有前端工程師至少都應 該掌握某些基本的知識,才能有效地完成自己的工作。如果一遇到問題,就停下工作上網四處搜索解決方案,怎麼可能保證按期完成工作呢?聽聽,還有誰在說「我 不知道,但我可以上網搜到。」請這些同學把手舉起來,讓大家認識一下(immediately raises a flag for me.)。下面我列出一些基本的知識點,這些都是我認為一名前端工程師(無論工作年頭長短)在沒有任何外來幫助的情況應該知道的。
DOM結構——兩個節點之間可能存在哪些關系以及如何在節點之間任意移動。
DOM操作——怎樣添加、移除、移動、復制、創建和查找節點。
事件——怎樣使用事件以及IE和DOM事件模型之間存在哪些主要差別。
XMLHttpRequest——這是什麼、怎樣完整地執行一次GET請求、怎樣檢測錯誤。
嚴格模式與混雜模式——如何觸發這兩種模式,區分它們有何意義。
盒模型——外邊距、內邊距和邊框之間的關系,IE 8以下版本的瀏覽器中的盒模型有什麼不同。
塊級元素與行內元素——怎麼用CSS控制它們、它們怎樣影響周圍的元素以及你覺得應該如何定義它們的樣式。
浮動元素——怎麼使用它們、它們有什麼問題以及怎麼解決這些問題。
HTML與XHTML——二者有什麼區別,你覺得應該使用哪一個並說出理由。
JSON——它是什麼、為什麼應該使用它、到底該怎麼使用它,說出實現細節來。
重申一下,上述這些知識點都應該是你應該「想都不用想」的東西。我一開始問的所有問題都是想摸清你對所有這些領域知識的掌握程度。雖然上面列出的這些知識點並沒有面面俱到,但我覺得你至少應該掌握這些,才有可能跟我坐到一間辦公室里來。
2、少量提問
我非常贊同面試者問的問題越少越好。反復問應聘者各種問題既不公平,也很無聊。我在任何一次面試中,通常只問三個大問題,但每個問題又會涉及我所能想到的多個方面。回答每個大問題一般要經過幾個步驟,這樣我就可以在每個步驟中穿插著問一些小問題。比如說:
現在有一個正顯示著Yahoo!股票價格的頁面。頁面上有一個按鈕,你可以單擊它來刷新價格,但不會重新載入頁面。請你描述一下實現這個功能的過程,假設伺服器會負責准備好正確的股票價格數據。
這個問題牽扯到一組我想要考察的基本知識點:DOM結構、DOM操作、事件處理、XHR和JSON。如果我要求你對換一種處理股票價格的方式,或者 讓你在頁面中顯示其他信息,就可以把更多的知識點包括進來。對於經驗比較豐富應聘者,我也可以自如地擴展要考察的知識范圍,最簡單像JOSN與XML的區 別、安全問題、容量問題,等等。
我還希望應聘者給出的任何解決方案中都不要使用庫。我想看到最原生態的代碼,你就當頁面中沒有包含任何庫。你說你對哪個庫了解多少多少,但我不能把 關於庫的知識作為評判能力的因素,因為庫是會隨時間變化的。我需要的是真正理解庫背後的機制,特別是能夠徒手寫出一個自己的庫的人。
3、解決問題
做為一名前端工程師,最值得高興的事莫過於解決同一個問題會有很多種不同的方法,而你要做的就是找出最合適的方法來。我在提問的時候,經常會在應聘 者解釋完一種方法後問他們還有沒有第二種方法。此時我會跟他們說,假設你的這個方法由於種種原因被否決了,那麼你還能不能給出另一種方法。這樣做可以達到 兩個目的。
首先,可以測試出他們是否在毫無意義地復述書本中的東西。不能不承認,某些人確實有過目不忘的天賦,聽他們在那裡滔滔不絕地講,你會覺得他們什麼都 明白。可是,只要一跟這些人談到怎麼查找方案無效的原因,以及能否拿出一個新方案來,他們往往就傻眼了。這時候,如果我聽到「我不明白這個方案為什麼不夠 好」之類的反問,心裡立刻就明白我的問題已經超出了他們的能力范圍,而他們只是想拿自己死記硬背的結論來矇混過關。
其次,可以測試出他們已經掌握的(還是那句話,「想都不用想」)瀏覽器技術知識。如果他們對瀏覽器平台的核心知識有較好的理解,想出解決同一問題的不同方案根本沒有那麼難。
對一名前端工程師來說,這絕對是最重要的能力。前端工程師在工作中遇到本該如此卻並未如此的難題(說你啦,IE6),應該說是一件很平常的事。一個方案無效就無計可施的人,做不了前端工程師。
考核應聘者解決問題能力的另一層原因,與我的個人喜好有關。在搞清楚應聘者知道什麼不知道什麼之後,我就會想著問一個他們知識領域之外的問題。這樣 做的目的,就是想看看他們怎樣運用已有的知識解決新問題。在解決問題的每一步,我也准備了一些提示,以防有人會卡殼打艮(在我面前15分鍾一言不發,對我 評價這個人毫無幫助)。我真正感興趣的,是他們能夠從上一步前進到下一步。我希望看到一個人就在我眼前學到新知識。
注意:所有問題都與瀏覽器技術相關。我不相信出幾道抽象的邏輯題,就能夠考出某人解決Web技術問題的能力。在我看來,這無異於讓素描大師畫肖像(或者讓劉翔跟博爾特同場競技),沒有意義,也得不到任何有價值的信息。
4、有激情
要成為一名優秀的前端工程師,最重要的莫過於對自己做的事要有激情。我們技能都不是從學校中或者從研討會上學來的,因此前端工程師必須具備自學能 力。瀏覽器技術的變化可謂日新月異,所以也只有不斷提升自己的技能才做得到與時俱進。我雖然不能強迫誰必須多看博客、不斷學習,但想應聘前端工程師的人恐 怕還是必須這么做的。
你怎麼知道誰對這種工作有沒有激情?實際上非常簡單。我只問一個簡單的問題:「目前你對什麼Web技術最感興趣?」這個問題永遠不會過期,而且也幾 乎不可能出錯……除非你答不上來。就眼下來說,我希望你對這個問題給出的技術中包括WebSocket、HTML、WebGL、客戶端資料庫,等等。只有 對Web開發充滿激情的人,才會堅持不懈地學習新知識、掌握新技能;這些人才是我真正想要的。當然,我會讓他們詳細解釋自己提到的技術,以保證他們不是隨 口說了幾個時髦的新詞彙。
5、最後一點
計算機科學或者Web設計方面的知識當然也有用,但那都是基本知識之外的東西。只要基本知識在那兒了,一切就都有了基礎,想擴充知識面也不難。可 是,如果等到正式上班以後,還得從頭學習基本技能,那種難度是不可同日而語的。另外,高級前端工程師與一般工程師相比,肯定需要掌握更多的技能。而面試幾 乎沒有經驗大學畢業生,同樣也會有一套完全不同的程序。我在這篇文章里列出來的都是一些最基本的東西。
E. 如何面試前端工程師
隨著時代的發展,很多新興的就業職位隨之產生。前端工程師將就是隨著互聯網的快速發展而產生的。其實在很多人的觀念里,前端工程師也就是一個切頁面的而已,他們也就是會html、css、javascript這些沒有任何技術含量的網頁製作而已。然而隨著技術飛速發展,人們對這些技術的要求也是越來越高,如果只憑著一個人來把所有的事情都解決是很困難的,所以這個時候前端工程師就開始發揮著他們很大的作用了。
那我們應該如何來面試前端工程師呢?
談吐要大方得體
在我們在面對面試官時我們千萬不要緊張。在進行自我介紹時我們要努力做到自信大方、吐字清晰。我們在自我介紹時要用簡明扼要的話語來介紹自己,突出自己的優點表明自己的求職意向。你要通過寥寥數語把自己的優勢都向面試官介紹清楚。記住不必要的話語要少說。
好了關於如何面試前端工程師這個話題我就聊到這了。希望我的回答能對你有所幫助。
F. 前端面試要點
想要通過前端面試順利進入一線大廠成就高薪前端夢。那麼首先,我們得知道前端面試中,社招和校招究竟有啥區別?
對於前端開發來說,如果說社招更看重對前端技術體系的深入理解,以及解決問題的能力話,那校招更看重的其實是基本功和學習能力(或者說是潛力)。
但其實,無論是社招還是校招,面試的時候都會問到一些曾經操作過的項目,尤其是大廠,或者熱門高薪部門,面試官除必問的技術經驗外,也會對技術深度進行一個基礎的考核,那在這種情況下如何hold住大廠面試呢?
前端面試三要素:簡歷、個人介紹、技術能力。下面,就來分別聊一聊。
1、簡歷篩選關:
HR一般會去看簡歷中所提的技術棧是否匹配,怎麼看呢?我們可以抓住簡歷中的技術名詞,一般來說如果一點技術名詞都沒有提到,那麼大概有以下幾種可能:很水、很牛但概率很小、不會寫簡歷。所以,一部分人可能會因為簡歷的問題沒有了面試機會,這點是需要非常注意的。
2、個人介紹關:
通過了簡歷篩選階段,就真正到了面試環節。這時候一定要准備好一段最多3分鍾的個人介紹。請注意,最多3分鍾!言簡意賅的說明自己的工作時間,擅長技術棧和自己的工作預期。
3、項目經驗表達:
對前端開發學習者而言,JS並不陌生,但大廠的JS面試題卻總是顯得很「陌生」,怎麼樣能夠真正做到深入理解與高級應用?這不僅是面試過程中對前端求職者的要求,也是大多數前端開發者的痛點。
大廠面試中,面試官除了關注你的項目經驗外,還往往喜歡和面試者深入探討前端某些技術領域成體系的前端知識。比如:模塊化、非同步解決方案、網路、框架及原理、線程等,但在與面試官的正面battle中,求職者總會敗下陣來。
所以,建議大家在Web前端面試前一定要注重這三個方面的內容。注重了這些想找找到一份適合的Web前端開發工作並不是難事。
G. 前端怎麼面試才能拿到高薪Offer
1. 要有比較好的計算機基礎
這里的計算機基礎指的是數據結構與演算法,操作系統,編譯原理,計算機網路等等。雖然相對於其他方向而言,前端在工作中用到計算機基礎的地方可能少一點,但是無論大小廠,招實習生其實都是為正式招聘做儲備,所以會比較希望招將來有更大發展空間的人,就像里 Web 前後端分離的意義大嗎? - 知乎用戶的回答 和 怎樣成為全棧工程師(Full Stack Developer)? - 知乎用戶的回答 描述的那種。
如果你具備比較好的計算機基礎素養,那麼以後在拓展到其他領域(WebGL —— 計算機圖形學,Node.js 底層 —— 操作系統,JS 引擎和各種預編譯工具—— 編譯原理, etc.)的時候會更快上手。另外有一些公司對前端的概念不局限於 Web 前端,也包括移動端偏前端的部分,這里也需要你有比較好的計算機基礎才能做好。前端領域有很多人已經不滿足於造輪子,直接跑去造語言了,如果你編程基礎夠好,接觸過各種形形色色的編程語言和範式,再上手這些東西也會方便些(比如Ruby/Python->CoffeeScript,Haskell->LiveScript)。
雖然也有很多地方為了招到足夠多能來幹活的前端會降低對計算機基礎的要求,但是打好這方面的基礎是沒有壞處的,如果面試筆試被問到且答得上來,也是能夠加分的。一些大廠經常會出現「不是前端的面試官來面前端」的情況,我個人是覺得如果這類面試官問的都是計算機基礎問題的話,其實真的無可厚非,畢竟人家在面「一個前端程序員」之前,是在面「一個程序員」啊……
2. 要懂得現代前端的一些新技術
比如:
前端自動化工具(Gulp/Grunt等)
模塊化(CommonJS,AMD/CMD模塊載入器,各種Bundler,ES2015 Moles等)
前端 MV* 框架(Backbone,Angular等)
編譯到 CSS 和 JS 的一些語言(Less/Sass/CoffeeScript等)
前端自動化測試工具(Karma,Mocha,Web Driver等)
其他
有一些同學覺得這些東西懂得越多越好,我個人是覺得這些工具不一定要都了解(畢竟它們很多也未必能火多久),但對這些東西要有大致的概念,並且每個領域的用過一兩種(最好是在項目里),清楚它們的優缺點和必要程度。這是區分在前端上投入過一定精力的人和跨行來兼職前端的人的標志。
去大廠校招應聘前端的會有很多隻是做過一些 Web 項目,但不一定對前端的技術很了解,只是看前端門檻比較低就去投簡歷的人。如果你對這些新技術比較了解的話,起碼能夠證明你是比較專注前端而且花過一定時間在上面的。
同時,前端現在確實是一個每天都有很多輪子冒出來的領域,也需要你有足夠強的自學能力和(英文)文檔閱讀能力去跟上社區的這些新動態。接觸過比較多的輪子,才會有自己的判斷,不會老是人雲亦雲火一個學一個。這些工具里,確實也有很多在合適的場景下可以提高前端的生產力或者代碼質量,對這些東西有一定關注,也表明你對自己的生產力和代碼質量是有一定關注的,這其實是一個更廣義的靠譜程序員的特性。
3. 懂得什麼是 Web 標准和瀏覽器開發維護的流程,並且會跟進新發布的標准和主流瀏覽器新實現的特性
當然面試的時候一般不會直接問你這方面的問題,但是如果你懂這裡面的水大概是怎麼一回事的話,在很多問題上(特別是兼容性問題上)都能回答得比較深刻一些。最好清楚:
HTML、CSS、DOM,ECMAScript 和一些泛 HTML5 的標準是怎麼制定的
W3C 和 WHATWG 的區別
各種標準的不同版本和提交狀態是怎麼回事
知道標准和實現的差距(有些人喜歡把 W3C 標准奉為圭臬,但現實中瀏覽器們並不是這樣的)
知道 ECMAScript 和 JavaScript 的區別
知道瀏覽器的一些常見做法(比如給 CSS 特性加前綴)的緣由
標准和瀏覽器這灘水還是很渾的,涉及到很多利益糾葛和大廠的博弈,如果你大概清楚他們的一些事情,不光自己做前端兼容的時候會容易一些(不會只抱怨「為啥XXX就是不能OOO」而是懂得他們的無奈並且認真尋找解決方案),在新特性出來的時候也更容易消化(不是「啊又出了個新東西要學好煩啊」而是「在郵件列表上爭(si)論(bi)了那麼久他們終於把這個搞出來了」),你自己對前端比較基礎的那部分的知識體系更會有條理得多。個人覺得這也是區分比較有經驗的前端和臨時跨行的前端的關鍵之一,這些東西是需要你經過一段時間的耳濡目染才能理清楚,而且會在一定程度上影響你的工作的。
4. 多看書,多關注技術資訊
技術資訊的來源包括RSS、郵件訂閱、比較重要的郵件列表、或者follow Twitter和微博上一些比較有影響力的開發者。個人經驗是,一般在二面或者三面的時候,面試官都會問類似「你從哪裡接觸前端的新技術/你看過哪些書」的問題,因為前端現在技術更新很快,比較專注於前端這方面的人一般都會有自己接觸新技術的渠道,他們自然也會比較關心候選人是不是有在跟進社區的一些動向。其實這也能夠排除那些不太靠譜的臨門跨行的人,因為他們平時一般不會特意去關注前端技術的新動態的。
5. 不僅懂得一些東西怎麼寫,更要懂得一些東西不要怎麼寫
Web 標准大多不是嚴格向後兼容的,很多幾年前常用的寫法,現在已經被社區的大多數人強烈建議避開了,有很多特性也隨著時間的流逝被打上了 deprecated 的標簽,如果你不幸拿著一本比較老的書入門,又不在網上驗證上面說的每一句話,那麼很有可能你就這樣被誤導很久,比如 HTML可能會逐步被XML所取代嗎?(來自《css權威指南》) - 賀師俊的回答 這樣的情況……與之類似的還有:
JavaScript 里那數量令人嘆為觀止的坑
一些在經驗比較豐富的前端看來屬於常識的東西(比如:為什麼 CSS 大多放在 head,JavaScript 多放在 body 底端?)
劃分各種模塊、文件,添加模板的正確方式(比如錯誤方式是一堆腳本/樣式寫在一個超大文件里,或者在有替代方式的情況下在 JavaScript 里拼字元串)
解決一些老問題的新的best/better practice(比如不要到了 2015 年還深陷在回調地獄,去看看 promise 和 generator)
……
這些知識都需要你有一定的前端方面的經驗,看過比較多相關的博客和書,才能慢慢積累起來,所以也能區分靠譜的前端和不靠譜的前端。
6. 不依賴某一個特定的框架或者庫
比如很常見的「離開了jQuery就不會寫前端」星人……也不是說要做原生 JavaScript/CSS 和 DOM 的原教旨主義者,但高度依賴某個框架或者某個庫的話,通常意味著換了一個框架/庫你的學習成本會比不依賴特定輪子的人高,因為這通常是處於還不知道前端領域「什麼是什麼」的階段的表現。
事實上前端領域的這些輪子有一些都是其他領域早就有,或者根本不需要的東西,其中很多的實現原理也不是那麼復雜,只不過是臟活累活。個人覺得對這些東西應該報以「不能知其然而不知其所以然」的態度,起碼大概清楚它們的實現是怎樣的套路,知道它們的優缺點,多接觸幾種,這樣在換一個替代品的時候很快就能上手。
因為前端的特殊性,在開發比較大的項目的時候使用庫和框架是必須的(比如遇到各種滑鼠事件的前端兼容問題時,總不能全都就地寫 if-else 吧,總得封裝一下。遇到非常 data-driven 的項目,還用手動操作 DOM 的寫法很難維護吧,用個 MV* 框架真的不純是偷懶了),但是這些東西都是會迅速改朝換代的,死守著某個特定的庫或者框架,確實不太靠譜。很多公司喜歡問候選人「原生 API 寫個 Ajax 請求怎麼寫」這類問題,感覺很大程度上也是在排除這類人……
7. 懂一點點設計
這里說的不是切圖啊PS啊AI啊什麼的,而是大概懂基礎的視覺傳達/色彩構成/平面構成的知識。畢竟前端是和設計師聯系最密切的程序員,雖然前端要做的事不僅僅包括 UI/UX,但是 UI/UX 卻都主要依賴前端來實現。很多時候,設計師(特別是不會前端技術的設計師)給出的設計可能很難(在照顧兼容性的前提下)實現,這個時候不應該跟他硬拼讓他改設計,或者自己默默糾結怎麼用很 hack 很難維護的方法去實現,而是理解設計的意圖,並且跟設計師溝通,盡可能在工程上容易實現容易維護的前提下實現設計的意圖,哪怕要修改一些具體的表現形態。
最恐怖的就是丟一張圖過來,讓你做到 pixel perfect,你也不問三七二十一直接開工,代碼寫得別扭也不去溝通,遇到不兼容就打個哈哈矇混過關了……設計的目標是讓大眾都能更容易地使用,這樣做是與設計師存在的意義背道而馳的,我也遇到過一些設計師會主動來問前端怎樣的設計在瀏覽器里容易實現,怎樣的設計比較別扭,這樣他才能結合多方面的信息去做設計上的決定。如果你對設計不關心,不與他交流的話,實際上相當於剝奪了一些關心工程實現的設計師的知情權(一般正常的設計師看到自己的設計實現出來效果不好,也會小郁悶的……)。個人覺得與設計師溝通的技巧,也是一個靠譜的前端應該具備的素養。
8. 懂一點點後端
(這個是我看了一下別人的答案補加的)。其實這個和第一點的目的類似,最重要的是別要做一個非得等隊友來才能開工的人。大廠(主要是阿里系)有不少在用 Node 做前後端分離一類的事,另外做前端的經常要在後端還沒寫完的時候自己去 mock 一下數據介面,如果你懂怎麼搭建簡單的伺服器和 serve 數據給前端,那麼就可以提高開發的效率。即使你只想專注前端,但前端有很多東西(比如 JS 跨域,WebSocket,SSE,WebGL 的素材獲取)都需要你懂得架設簡單的後端才能去實踐,這時候不懂後端通常就意味著你要放棄學習這些知識,或者只能紙上談兵。一個正常的前端肯定是要對計算機網路和 HTTP 等協議有一定了解的,有了這些知識去學簡單的後端其實是很水到渠成的事情。
9. 在前端投入足夠的時間
意識到以上幾點還需要投入足夠多的時間才能看到成果,不然很容易出現「道理我都懂,可是OOO」的情況,那最後也還是靠譜不了的……如果不是真的對前端感興趣並且投入足夠多的時間,與其為了「好找工作」而投前端,不如轉一個更合適的方向。阿里前端的困局與突圍 · Issue #141 · lifesinger/lifesinger.github.com · GitHub 和 圖靈社區 : 閱讀 : 企業軟體領域前端開發的困境 都能說明這個問題。
另外有些面試官喜歡問你一些很細節的 API (雖然我個人覺得這類問題很囧),這些東西很多時候都是靠的「無他,但手熟爾」,雖然有一些確實有點刁難人的味道,但有一些真的是如果你經常寫前端,重復多幾次就會記住的,如果記不住,只能說明你前端寫的不夠多。還有一些沒足夠實戰經驗的人很少遇到過的問題(比如 JS 跨域),也是需要在前端投入足夠多的時間,才會接觸到(無論是紙上談兵,還是項目里遇到)。
其實綜上所述,不靠譜的前端大概表現就是:計算機基礎不好(更糟糕的是編程基礎都不行,不過編程基礎和計算機基礎好不好跟績點高不高專業對不對口這些其實真的不一定有什麼關系……),對前端的認識還停留在十年前,對社區出現的新工具完全不認識(沒認識全很正常,但完全不了解就有點兩耳不聞窗外事一心只讀聖賢書的味道了……),不懂 Web 標準是怎麼回事或者不在意標准,遇到兼容問題就復制粘貼搜到的代碼,對於一些在社區里是常識的坑毫無意識地各種踩,「離開了jQuery/某庫/某框架就不會寫前端」星人,或者平時根本沒怎麼做過前端的東西,只是做做 Web 項目順帶寫前端,到應聘了臨門一腳跑過來……不管是平時學習還是筆試面試,盡量避免向這些特徵靠攏就可以了。事實上大廠們招人不一定會要求這么嚴格,而且大廠里的團隊本身也未必個個靠譜,但是平時有在這些方面努力的話,起碼如果掛了會知道自己哪裡不足,或者到底是他的問題還是你的問題……
以上大概就是我覺得拿到大廠(or前端比較靠譜的中小廠)前端offer需要的水平,其實我感覺沒必要拿「實習」這個詞來限定自己,盡量往高水平靠攏,才能做到是你來選公司,而不是公司來選你,這樣你才能結合興趣/家庭/個人規劃之類的因素拿到最適合自己的 offer。另外,我覺得面試這回事是這樣的,上面提到的這些特徵,每一條單獨拿出來,在不確定面試官的情況下,既不是拿到offer的充分條件,也不是拿到offer的必要條件,某一條不滿足,也不是拿不到offer的充分或必要條件。大廠的面試官有很多種,有些設計出身喜歡問設計,有些後端出身喜歡問偏後端的東西,有些喜歡問你API細節,有些喜歡問你實現思路,有些喜歡看你學習能力,有些面試官本來就不是前端所以喜歡問你基礎題。如果你側重某一些方面,雖然無可厚非,但是運氣不好遇上期望不同的面試官,可能你就會得到比較低的評價或者掛掉。確定能拿 offer 的唯一途徑,就是面面俱到,這當然是不可能的要求,但大廠的種種因素配合起來往往就是在找這種不存在的人才,真的想拿 offer 的話,就只有硬著頭皮盡量靠攏。
就像國內很多大廠里比較著名的前端們文章/博客/知乎里提到過的一樣,前端這塊水不是很深,但水非常非常寬,在考慮將來作為一個前端如何發展如何應對天花板之前,先要腳踏實地把這些屬於前端的「本分」的東西搞好。事實上前面提到的這些東西我也沒有全都做到。作為前端,個人覺得最重要的是要保持一顆開放、謙卑的心,不要抵觸新東西,永遠記得外面的世界還有很多東西自己不懂,要繼續學習。
H. 入職Web前端,我該如何去選擇
定位職業方向
首先要明白自己的特長優勢和興趣在哪方面,自己所學專業對口的職業是最容易的方向,另外自己有突出特長和特別的興趣,並且有一定的相關經驗,也是值得考慮的方向,如果對自己的未來發展一籌莫展,也可以給自己做一個專業職業定位測試,這類測試一般還是有一定科學依據的。
簡歷和投遞
在投機簡歷前,一定要仔細瀏覽完公司的介紹,甚至要到公司網站和其他信息源尋找公司的介紹,了解公司的業務內容,根據公司對職位的要求,把簡歷稍作調整,把自己的響應的能力和優勢突出出來,這樣取得公司面試通知的可能性就會大增。另外,如果感覺自己特別適合某份工作,自己也很想取得這份工作,也不妨直接給公司HR或者相關領導電話咨詢,以突出自己,一般相對成功概率較大。
面試
除了基本的禮儀,服裝打扮等要注意的意外,面試前一定要把工作職位要做的內容大致清楚,也要對公司和行業多加了解,形成自己的看法,在面試的時候尋找機會表達出來,同時突出自己的優勢,至少讓領導知道你是認真的找一份工作,有自己的未來計劃。
I. 前端開發的領域包括哪些方面
以一個網站為例包括網站設計、前端開發、程序開發等。網站設計就是網站的外觀,平面的東西,程序開發也好理解就是功能實現。而前端開發,簡單來說,就是把平面效果圖轉換成網頁,把靜態轉換成動態。它的工作包括了:切圖、寫樣式、做滑鼠效果和圖片切換效果等。而優秀的前端開發可以保障實現這些效果的同時,即不能影響網站的打開速度、瀏覽器兼容性還有搜索引擎的收錄,還可以讓用戶體驗更加舒適,使網站在訪問中顯得更精細、更用心。訪客使用起來更簡便。另外,現在前端工作還不僅僅只是網頁的製作,還有微網站、APP的製作,游戲製作,例如可以將你開發的Web頁面直接打包成手機使用的APP應用,游戲的互動界面更是以前端開發技術為主。
在互聯網行業,前端有WEB前端、HTML前端等,隨著互聯網技術發展,就業方向也有很多。web前端的就業方向有web架構師、web前端工程師、HTML前端開發工程師、網頁設計師等等。
HTML前端開發
與Web前端開發不同的是,使用HTML5不僅僅可以開發前端,還有網頁游戲,手機APP,使用瀏覽器進行3D渲染等一系列建立在HTML5標准與搭載其標准瀏覽器上的開發,而未來可能會有更多的功能分支並入HTML5標准。web前端工程師
這個方向是目前從事Web前端開發的主要就業方向
Web架構師
薪資普遍比較高,技術要求高,掌握多種技能,包括:後端技術、DBA、Platform等等,甚至包括網站優化SEO技術。
數據方向
數據研發這個是在Web開發的基礎上用數據附能,懂可視化的一定是有前端能力的,懂hadoop的一定java玩的溜,屬於Web開發的拓展方向。
大前端方向
比如阿里,在大量實踐rn和weex;由於公司內部安卓/ios式微,一定程度上,前端把ios和安卓收編了,統稱大前端(還有node)。
圖形學方向
前端自然是與圖形學有千絲萬縷的聯系,除了上面提到了可視化,還有相關3d引擎的開發工作。做這一行要求也非常高了,圖形學相關的演算法,3d引擎的開發,這都需要圖形學相關知識。
J. 前端面試職業規劃怎麼說
一般來說前端的發展有兩個大方向,一是技術,二是管理。走技術方向的話,可以慢慢發展為前端架構師。選擇這條路的小夥伴,對技術有比較高的要求,需要自身不斷學習進步,提高專業水平。走管理方向的小夥伴可以成為前端經理或是高級產品經理。這條路本人覺得也是一條不錯的出路。
在這個高速發展的年代,人人都可以是產品經理。在前端界打滾了這么多年,自然有不少產品的基礎和思想。所以前端轉產品,也是一條相對不會很吃力的路。當然啦自己創業,也是很好的一條發展道路。看自己適合怎麼走就行了,做前端的職業發展再怎麼樣都是很有前途的。
你不要老覺得年紀大了就不能做前端了,也不必認為前端只是青春飯。只要真正掌握了前端的技術,早日規劃自己的職業發展道路,不渾渾噩噩的工作,未來就會一直掌握在自己手中。
以上就是總結的Web前端的職業規劃。對於工作到一定年限的Web前端工程師,是繼續走技術路線,還是轉型走管理路線,沒有好壞之分,只能說每個人的職業規劃方向不同。但就架構師和技術經理這兩個角色而言,其實更多隻是職稱不同,工作內容是相似的。希望本篇文章能夠對正准備從事Web前端開發的小夥伴們有所幫助。