“全棧開發工程師(full stack developer)”一詞經常出現在企業招聘的崗位描述中。但Hello Pretty聯合創始人兼首席技術官Scott Hadfield在近日發表的一篇博文中指出,全棧開發工程師就是一個神話,即使不完全如此,用人單位也很難找到一個這樣的人。
為了進一步闡述這一觀點,他列出了下面這樣一個并不詳盡的“棧”:
用人單位對全棧開發工程師的預期遠遠超出一般人的能力。全棧開發工程師至少需要對棧中的每個組件都有足夠深入的了解,以便能做出明智的選擇及向管理層解釋。上圖所示的技能表每年每層都會增加新的組件,每隔幾年又會增加新的層。因此,Scott認為,在招聘時尋找全棧開發工程師不僅不合理,簡直就是愚蠢。
不過,Scott也承認,確實有人具備全棧能力。也有許多距離全棧尚遠,但仍然令人驚嘆的開發人員、設計人員和項目管理人員。而有些自稱全棧工程師的人也僅能列出上述一半多的組件,就更不用說組件之間的交互了。于是,他寫道:
我看到的幾乎所有使用全棧一詞的情況(尤其是在招聘海報中),用人單位真正的意思只是尋找“令人驚嘆的人”。
另外,Scott指出,全棧開發工程師或許根本就不應該編寫代碼,而應該更多地充當系統架構師或集成工程師的角色。在使用“全棧開發工程師”這樣一個流行術語時,應該說明是哪個“棧”,比如是Web棧,還是移動棧。
最后,Scott總結道:
全棧開發工程師就是一個神話,不是因為不存在這樣的人,而是因為這個術語沒意義。
Scott的博文在Hacker News上引發了激烈的討論。網友andrewstuart對“全棧開發工程師”的理解在參與討論的網友中具有一定的代表性:
我對全棧開發工程師的定義是,他們能夠自己構建和部署一個完整的、可以工作的應用程序,而不需要其他任何人的幫助。那意味著他們能夠編寫前端、后端代碼,能夠配置服務器,當然還能夠設計數據庫表。
不過,有網友認為運維技術也應該是開發過程的核心部分。如果花費大量時間構建的應用程序因為運維細節無法按計劃部署,那會導致大量的返工。
有許多網友都持有與andrewstuart類似的理解,他們認為全棧開發工程師并不是一個神話。BadassFractal就是其中一例:
我就做全棧開發,包括Ops(通過各種CM工具配置AWS并向上部署應用程序……)、DB(PostgreSQL用了5年……)、后端(獨立構建類似Rails的框架……)、前端(可以綜合運行原始DOM、Backbone及React)等所有這一切。
缺點是,我在其中任何一個方面都不是真正的核心專家,因此,其中任何一個領域中的任意一名優秀專家都比我強。
BadassFractal的后一部分觀點頗具代表性。jvehent也認為,一個人可以成為全棧開發工程師,但卻無法成為一名全棧專家。對此,有網友指出,企業應該給這兩種人都留有空間。另有網友表示,如果企業在招聘時只盯準了前端和后端均是專家級的開發人員,那非常可惜,因為在一個多人團隊中,他們全面的能力并不能得到有效的發揮。
-
工程師
+關注
關注
59文章
1589瀏覽量
69240
發布評論請先 登錄

物聯網工程師為什么要學Linux?
解鎖LuatOS-log庫:全棧工程師的日志管理實戰課!





嵌入式工程師常用的開發工具有哪些?

評論