全棧工程師是什麼?
什麼是全棧工程師
近國內外都在流行一個詞叫Full Stack,中文翻譯過來叫全棧工程師,也叫全端工程師。微博上很多專業人士都在討論全端工程師,有贊有毀的。我對全端工程師的定義是:掌握多種技能,並能利用多種技能獨立完成產品的人。打外比方,全棧工程師就是一個能獨立蓋一幢10層小洋樓的人,而普通工程師,則是可以和一群人蓋一幢摩天大樓的人。至於要掌握哪些技能,我覺得這個要跟從事的行業與技術方向有關,做互聯網的和做軟件的是不一樣的,即使是做互聯網的,後端也可以分為很多種技術流派。
8/2定律在哪都適用,全棧工程師就是掌握20%常用技能的人,但這20%的技能會有80%的機率被用到,剩下那80%不常用的,讓我們Google吧。
有人說,全棧工程師在中國已經很多年了,他們叫站長。這個說話有點靠譜但又不那麼靠譜,我自己也做過站長,深知作為一名站長需要掌握很多種技術。不靠譜的是,很多站長其實並沒有真正寫過多少代碼,而是熟練利用一些建站軟件來建站。
全棧工程師的價值
有人說了,你再牛逼,你懂五種技術,你能幹五個人的活嗎?全棧工程師並不是說一個人能幹幾個人的活,而是要從多個方面來看這個問題。
全局性思維
現代項目的開發,很少說只用到一兩種技術的,特別是移動互聯網大潮下。隨便一個互聯網項目中用到的技術,就會需要用到後端開發、前端開發、界面設計、產品設計、數據庫、各種移動客戶端、三屏兼容、restFul API設計和OAuth等等,一些比較前衛的項目,可能會用到Single Page Application、Web Socket、HTML5/CSS3這些技術,還有像第三方開發像微信公眾號微博應用等等。
Web前端也遠遠不是從前的切個圖用個jQuery上個AJAX兼容各種瀏覽器那麼簡單了。現代的Web前端,你需要用到模塊化開發、多屏兼容、MVC,各種複雜的交互與優化,甚至你需要用到Node.js來協助前端的開發。
所以說一個現代化的項目,是一個非常複雜的構成,我們需要一個人來掌控全局,他不需要是各種技術的資深專家,但他需要熟悉到各種技術。對於一個團隊特別是互聯網企業來說,有一個全局性思維的人非常非常重要。
像如果是我經手的項目,我肯定會注意到網頁優化,也會考慮到API來兼容各種客戶端,更會考慮到三屏兼容的問題。不會說項目中完全使用AJAX而不顧SEO,也不會為了功能性而忽略訪問速度,我會很好的把握這個平衡,因為我知道它們的權重與實現成本。
溝通成本
項目越大,溝通成本越高,做過項目管理的人都知道,項目中的人力是1+1<2的,人越多效率越低。因為溝通是需要成本的,不同技術的人各說各話,前端和後端是一定會掐架的。每個人都會為自己的利益而戰,毫不為已的人是不存在的。
而全棧工程師的成本幾乎為零,因為各種技術都懂,胸有成竹,一不小心自己就全做了。即使是在團隊協作中,與不同技術人員的溝通也會容易得多,你讓一個後端和一個前端去溝通,那完全是雞同鴨講,更不用說設計師與後端了。但如果有一個人懂產品懂設計懂前端懂後端,那溝通的結果顯然不一樣,因為他們講的,彼此都能聽得懂。
創業公司
對於創業公司來說,全端工程師的價值是非常大的,創業公司不可能像大公司一樣,各方面的人才都有。所以我們需要一個多面手,各種活都能一肩挑,獨擋多面的萬金油。對於創業公司,不可能說DBA前端後端客戶端各種人才全都備齊了,很多工作請人又不飽和,不請人又沒法做,外包又不放心質量,所以全端工程師是省錢的一妙招。雖然說全端工程師工資會比一般的工程師會高很多,但綜合下來,成本會低很多。
全棧工程......
什麼是全棧工程師
為什麼需要全棧測試工程師
需要!非常需要!其實從小白一開始就提到測試工程師本來就全能的。因為在測試這個角度,放大了是質量這個角度,一切能夠提高質量的工作都是測試人員應該涉獵的。就好像本來犯法就是應該懲罰的,這個還專門強調一下搶劫警車是犯法的一樣,搞得不搶劫警車不犯法了。
在最近的這幾年,測試看起來在蓬勃發展,但是其實整體的素質和能力卻每況愈下。一方面是低端的沒有突破,另一方面卻是測試技術化。這裡並不是說測試技術化不好,而是很多測試人員在為了技術而學習技術,並沒有解決質量問題。更可怕的是測試人員對自己的要求從全能逐漸變成了業務,再從業務變成了點點或者是寫寫的兩個極端。在這裡對新手是一個非常迷茫的未來,上面的人都還在撲騰到底怎麼玩,你讓小白怎麼知道自己該怎麼玩?
全棧測試工程師的提出,其實只是換了個黃金馬甲的測試工程師,但是它重新定義了測試人員的要求,就是啥都懂(可以參考雲層的百度閱讀的書籍小白到現在的所有內容,每一章節都是測試人員應該懂的!),這樣才能在工作中真正的幫助別人發現問題、定義問題、解決問題,並最終找到質量人員的價值所在。
怎麼培養全棧工程師
說實話我陳霽個人覺得全棧工程師就好像武學奇才一樣,培養無非兩個方式。
1.身負血海深仇
這裡說的比較誇張,但是本身的意思就是環境所迫。在一個創業型公司或者某些運氣不佳到哪裡啥都得幹並且毫無退路的,那麼非常容易不小心成為全棧工程師。
比如先買個房,每個月欠著幾千塊的貸款,這個時候作為一個人能做的事情就是忍辱負重的接受一些別人的刁難和不停的逼迫自己走在最困難的道路上解決所有別人提出的問題,以免無法償還貸款。
在這樣的幾年非人的磨礪下,為全公司的各個部門處理各種疑難雜症,非常就容易成為全棧工程師(例如在多家外包客戶中經歷重大疑難案例)。
2.自己就是練武奇才
所謂自己就是練武奇才,是指個人有強烈的求知慾對所有一切的知識都有弄懂的興趣和決心。
這種人不需要別人的督促,更多的時候他會自己主動的切換自己的舒適區,不斷的要求自己懂再懂一些,因為深怕某些不懂當遇到問題的時候無法解決,從而不能平復心中的不安全感。
那麼若干年後這樣的人也會成為全棧測試工程師。
全棧工程師真的不全棧
最後想說的一點就是全棧工程師其實真的不全棧。什麼都懂什麼都不精是大家所熟知的諺語,本來學習東西就是有成本的,一個人的精力是有限的,要做廣自然無法做深,這個本來就是矛盾的。
在任意一家公司的全棧測試工程師也是如此,公司團隊強的,那麼對全棧工程師的要求就會低,而公司某些團隊弱的,那麼自然全棧工程師會強。
問題解決的越多經驗越豐富,所以全棧工程師只能對當前企業來說是全棧的,但是對於另外的企業來說未必,因為全能也是有針對性的。如同人無完人,條條大路通羅馬。全能固然好,但術業有專攻也未必不是一條康莊大道。關鍵是你自己是否想做,想做了後是否喜歡做,喜歡做了後是否堅持做,堅持做了你就一定能夠做到!
什麼是全棧工程師
全棧(Full Stack)工程師,也可以叫全端工程師,無論是前端知識,還是後端架構你都要了解。甚至有些調皮的程序員這樣理解全棧工程師:全棧工程師=屌絲戰鬥機=系統+網絡+研發+dba+架構+安全=沒女朋友、拿一份工資做三份事情的典型、每個站長都是一個全棧工程師,每個站群的站長都是超級全棧工程師。
全棧工程師和架構師的區別
全棧工程師和構架師並不存在高下之分,分工不同而,只不過成為構架師所需要掌握的知識更特殊,而且也更依賴經驗。全棧工程師更多關注功能實現,構架師更關注系統性能。
全棧工程師主要負責應用開發,對前端後端技術都能熟練使用,更關注應用開發本身,以做新功能為主。
但在大型應用中,除了功能,性能也變得重要,這時候就需要構架師了。構架師考慮的是技術的選型,系統模塊之間的連接方式,系統可能的瓶頸,然後還有負載均衡和緩存之類的支持系統。
對於小型系統,只要實現功能即可,性能可以暫時放在一邊,全棧工程師最適合。隨著系統的更新升級,構架也不斷演進,許多以前不會出現的問題漸漸出現,能對這個過程有清晰認識的人,就是架構師。
全棧工程師到底有什麼用
答--能評上中級職稱的人,就是在工作崗位上出類拔萃的人,所以您是工程師就要在您的工作崗位上發揮您的應有的作用。
全棧工程師到底有什麼用
設計用
職業教育(vocational education)是指讓受教育者獲得某種職業或生產勞動所需要的職業知識、技能和職業道德的教育。如對職工的就業前培訓、對下崗職工的再就業培訓等各種職業培訓以及各種職業高中、中專、技校等職業學校教育等都屬於職業教育。職業教育的目的是培養應用人才和具有一定文化水平和專業知識技能的勞動者,與普通教育和成人教育相比較,職業教育側重於實踐技能和實際工作能力的培養。
職業教育是社會發展的產物,是人類文明發展的產物,也可以說是人自身發展的產物。而且是發展到某個特殊時期的產物。職業教育受益於社會,社會也可受益於職業教育,促進社會發展是職業教育的應有之義和神聖職責。
什麼是全棧工程師?
市場上對技術開發人才的技能需求已經不單單隻再是某個領域的初級開發者,那些精通前後端多項開發學習技能的全棧工程師逐漸被市場親睞。目前web開發群體5成以上為全棧開發者。HTML5+Java,HTML5+設計,Java+大數據+前端,各種混合開發技術人才大放異彩,這預示著隨著市場需求的不斷變化,市場對開發者逐漸有了更高要求,精通前後端的全棧工程師將成為IT界新一代寵兒。
全棧工程師到底是什麼概念
答--什麼叫工程師?工程師就是在專業崗位上職稱,也就是從事專業的工作的資格,有初級--中級-高級,工程師就是中級職稱,有相應的工資的。
什麼是全棧工程師?
全棧援引自百度貼吧tieba.baidu.com/p/5081022786
什麼是全棧工程師
百度百科給出的定義是全棧工程師(同時具備前端和後臺能力),英文Full Stack developer。是指掌握多種技能,並能利用多種技能獨立完成產品的人。當然並不是說一定要一種都不能少地具備哪幾項知識才能叫做全棧工程師 。一般是指獨立負責一個產品(或者一個產品模塊),前後端全部搞定,東時的全棧開發是前端加後臺加服務器全精通的精英。