程序員們,讓你的孩子當個網頁工程師吧!

原文地址html

b247592ab083c48cffcc2149a2f57bce

截止到今天凌晨,互聯網上已經有大概 6 億 8 千萬張網頁,並且依然在迅速增長。今天就來嚴肅地展開一下網頁工程師的話題吧,關於他們的工做,關於他們的職業;關於 HTML,關於 Python;關於瀏覽器,關於這個世界。前端

周圍有一些朋友的孩子也快要誕生了,未來能夠考慮作個網頁工程師呢~數據庫

天天的咱們,在(還算)安靜的辦公室裏,面對着電腦屏幕,忍受着窗外的喧囂,隨手點開瀏覽器,輸入一段 URL,敲下回車鍵。有沒有這樣的體驗,網站瞬間被打開了,高質量的內容,乾淨的佈局和優秀的設計讓你過目難忘。感到吃驚是吧?這一切都歸功於一類人,網頁工程師,所謂的 Web Developers 們,他們不只負責網站的搭建和網頁的編碼,還負責各類測試分析,以及一切和網站相關的維護。後端

現在網頁的重要性毋庸置疑,在商業上,好的網站已是企業保持競爭力的重要環節。伴隨着網頁開發技術的突飛猛進,優秀的網站層出不窮,網頁工程師對於本身的工做已經不能有半點馬虎,成爲一個好的網頁工程師也沒有任何的捷徑。瀏覽器

但問題就來了,正在頻繁迭代產品的苦逼創業者們,應該尋找怎樣的網頁工程師呢?想成爲網頁工程師卻只是剛剛試水 HTML 和 JavaScript 或者剛剛開始瞭解 Python 和 Ruby 的童鞋,又應該如何規劃本身的技術之路呢?服務器

登陸過智聯、前程、大街、獵聘、周伯通、拉勾等等網站,瀏覽過各種工程師在線課程,接觸過網頁工程師相關的招聘和應聘的,應該不難發現一個趨勢,就是這羣人被集中分紅了三大類:微信

前端工程師,後端工程師,全棧工程師前端工程師

一個一個來講吧~架構

前端工程師 Front-End Developer

和用戶發生交互的那一部分叫作網頁的前端,說白了它就是你在瀏覽網頁時能夠看到的全部東西,字體、顏色、導航欄、下拉菜單、滾動的圖片,等等等等,這一切都是由 HTML + CSS + JavaScript 拼裝而成,在瀏覽器的渲染下變得層次分明,很神奇的!框架

首先,瞭解一下相關技能和工具。

前端工程師主要負責網站面向用戶部分的代碼,以及用戶體驗相關的架構。一個前端工程師必須熟練地掌握三門基本的語言:HTML,CSS 和 JavaScript。除此以外,前端工程師還應該熟悉一些樣式框架,好比 Bootstrap 和 Foundation,和邏輯框架。好比 Backbone,AngularJS 和 EmberJS,這些框架確保了網頁在不一樣平臺上的質量和穩定性。最後還應該可以熟練的使用一些基本的工具庫,好比 jQuery 和 SASS/LESS,這些能讓開發更加高效,代碼更加優質。

另外,不少招聘文案中都會要求求職者有 Ajax 的開發經驗。Ajax 技術使用 JavaScript 默默地和服務器通訊來動態加載網頁內容,以實現無縫的瀏覽體驗。雖然這不是全部網站都必須的,但這也能夠算是前端工程師的基本功之一,畢竟 Ajax 技術現在也愈來愈多地被應用到了網頁中。

有了前面說的這些技能,前端工程師就能夠很好的和設計師合做,和用戶體驗分析師合做,把草圖和原型開發成成品。牛逼的前端工程師還能精確的發現用戶體驗相關的問題,給出建議和解決方案,用代碼來加強設計。一個好的前端工程師還應該可以和業務人員流利的溝通,明白他們的目的,理解他們的需求,瞭解市場上的機會,而且順利地執行。

總之在後端工程師造好屋子之後,前端工程師主要負責房屋的內飾。至於房屋的類型和品位,這就取決於房屋的主人了。相比於後端,前端工程師通常來講更加知足於本身的成果,畢竟這是一份技術和創意相結合的工做。經驗豐富的前端工程師不只是一個技術人員,不只是一個 Geek,由於他不只實現了用戶能夠看到一切和能夠交互的一切,還致力於給用戶留下過目不忘的印象,因此他也是一個視覺達人。

那咱們看到的網頁是怎麼來的呢?

再補充一下這個不少人都關心的話題吧,在網頁開發過程當中,設計師繪製 Logo 和圖像,攝影師拍攝照片,文案編寫文字,最後由前端工程師把它們組裝在一塊兒,用網頁向咱們闡釋全部內容,用網頁向咱們提供獨一無二的體驗,把咱們在網站上看到的全部內容變成可能。

體驗一下? 點擊打開 http://wedfairy.com 向下滑動頁面的過程當中上面的 八音盒 導航欄慢慢出現,把鼠標移動到「八音盒故事」的某個案例上面或者用手指按住一個案例,標題就會出現,這些都是前端工程師的功勞。

後端工程師 Back-End Developer

新的問題來了,網頁上的數據存在哪裏?API 又是什麼?

就像一間沒有造好的屋子,光有室內裝飾仍是遠遠不夠的。因而咱們還須要後端工程師。網頁的後端包括服務器,應用程序,以及數據庫。這些組件相互做用,使用 API 和前端通訊,確保了網頁前端的存在。後端工程師的主要工做就是搭建和維護這些組件。

仍是先來看看相關技能和工具。

相比於前端開發,後端開發的技術和工具比較多元。爲了實現服務器、應用程序和數據庫三者之間的通訊,後端工程師一般使用 Python,Ruby,PHP,Java,.Net 等語言來編寫應用程序,用 MySQL,Oracle,MongoDB 來查找、存儲和修改數據,而後把它們部署到服務器上來爲前端代碼提供支持。在實際工做中,後端工程師至少須要掌握一個開發框架,好比 PHP 的 Zend 和 Symfony,或者 Python 的 Django;還須要可以熟練使用版本控制工具,好比 Git 和 SVN;以及瞭解 Linux 開發環境。這些看起來比前端開發枯燥多了!

後端工程師須要使用這些框架和工具來爲網站編寫優質的代碼,有可讀性,可移植性,有完備的文檔。然而和前端工程師同樣,在開始埋頭編碼之前,後端工程師須要和業務人員充分溝通來理解他們的感性目標,將其轉換爲技術需求,提出具備可行性的有效方案,來搭建技術架構。

優秀的後端工程師一樣熱愛本身的工做,沉浸在後端的他們歷來不以爲無聊,反而樂在其中。他們喜歡玩弄數據,編寫出有用的 API,按照不一樣的權限分配給網頁前端、移動應用和其餘系統,讓前端工程師能夠安心的沉浸在交互和佈局中。通俗易懂的高質量的 API 受人尊敬,這就是後端工程師的價值所在。

咱們怎樣才能感覺到後臺的存在?

點擊 http://qidlove.com 打開婚禮邀請函。此時 八音盒 的服務器會把信息發送到你的手機或電腦中,而後變成你所看到的內容。這就是後臺工程師所作的事情。若是你向下滾動屏幕到最後,留下本身的姓名和祝福,點擊發送,別人就能夠看到你的留言,下一次你再打開這個網頁,留言也不會消失,這些都多虧了後端工程師啊!

全棧工程師 Full-Stack Developer

說到這裏,首先要明確一點,前端開發和後端開發並非黑與白的區別,前端工程師和後端工程師之間也沒有恐怖分子和反恐精英這樣子的曖昧關係。在目前的經濟形勢下,在這個資源緊缺的市場環境中,前端工程師每每須要學習(至少了解)一些後端開發的技能,反之亦然。產品開發有不少通用的規則,跨越了先後端的界限,因而咱們開始尋找一種通才。

它的由來?

全棧工程師天然很早就存在,可是「全棧工程師」的叫法誕生於 Facebook 的開發部門。四年前,有一類特別的人羣被挖掘出來,他們的工做內容涉及到了技術架構(技術棧)中的每個環節,包括前端和後端,他們能夠和後端工程師同樣在服務器端玩弄應用程序和數據,也可使用前端語言控制頁面內容和調節用戶體驗,他們可以提供一套完整的系統。

總之,全棧工程師是網頁開發的全能戰士。

感受很酷是吧?成爲一個全棧工程師,同時精通前端和後端開發,無形之中給本身的職業生涯創造了不少機會。不過也別高興得太早,就和烹飪同樣,有人更擅長熱菜,有人更擅長甜點,精通二者須要時間和經驗。媽媽的手藝可不是一日煉成的,更不是簡簡單單的按照食譜來作就行(事實上不少工程師依然在這樣錯誤的作着)。一個好的全棧工程師和一個好的大廚同樣,須要有本身的內涵,須要有全部的烹飪原料,須要掌握全部的方法,才能奉獻上一頓完美的晚餐。

全棧工程師須要掌握的技能相對複雜,甚至有些主觀,由於這不只僅只是技能相關的需求,並且隨着時間的推移,人們對於他們的要求也在一點點變化。除了要根據不一樣項目掌握前端和後端開發的相應技能外,全棧工程師還須要充分理解網頁正常運行的每個環節,不只包括合理的服務器配置,規範的 API 結構,還要通曉 JavaScript 的哲學,以及 CSS 背後的設計情懷。

舉個例子,現階段一個典型全棧工程師的裝備,HTML5/CSS3 + Scala + MongoDB + 雲服務 + JavaScript

有了知識和技術,就還差經驗了,這也是最後一道門檻,全棧工程師尤爲須要可以在一個項目面前,快速地定義前端開發和後端開發的職責,分析各類解決方案的優點和劣勢,最終選擇最合理的執行方式。

老問題,做爲用戶如何感知網站背後的全棧工程師?

這個我真的說不出來了,本身去感覺吧,頁面加載須要多久,內容佈局是否專業,交互體驗是否天然,等等等等。

最後說一句:

不要迷戀全棧工程師,任什麼時候間,任何場合,都有一個「大而全」和「小而精」的選擇,好的網站歷來都不是一我的的功勞,不要忽略了設計師、攝影師、文案、產品經理、客戶經理、銷售、客服、用戶、以及其餘全部直接參與和間接參與到網頁製做中的人們。識別優秀的工程師也並不必定只是技術層面的事情,不管是前端、後端仍是全棧,工程師的自我修養還須要包括對細節的關注,自主學習的速度,解決問題的效率以及良好的溝通能力。

若是你是個網頁工程師,那麼恭喜你,你如今最不須要擔憂的就是找到一份趁心的工做……事實上接下來五到十年是網頁工程師最好混的時期了,HTML5 終於定稿,五花八門的屏幕的出現,跨平臺應用的需求愈來愈高,微信至少還火熱着,加油啊!!!

相關文章
相關標籤/搜索