1. 程式人生 > >什麼是全棧,Full Stack Developer

什麼是全棧,Full Stack Developer

Full Stack Developer 全棧工程師,網上眾說紛紜,各種解釋都有,我也看了很多,但總結一句。
a genuine interest in all software technology.(對所有的軟體技術抱有一種真摯的興趣)

FACE BOOK把PHP轉換為C++程式碼,CPU和記憶體的效率大大提高了。我們不防從結果倒推一下原因:如果他的程式設計師只是PHP的大神,而對C++一竅不通,那麼節省50%CPU請求是不可能實現的。所以我得出的結論是:跨平臺、多框架、多語言之間的遷移力,是FSDer所必需具備的。淘寶從oracle轉向mysql,Google拋棄C語言採用Go語言,Groupon美國站點從Rails遷移到了Node.js,阿里巴巴逐步完成了“去IOE(IBM小型機+Oracle資料庫+ EMC2儲存)”運動架構逐步轉向了“MySQL+PC Server”,Twitter將其一些後端服務從Ruby on Rails遷移到了JVM上,京東商場後臺拋棄.NET使用Java重寫,PayPal使用Node.js重寫其支付系統 ,Facebook iOS客戶端使用HTML5重寫後又換回原生應用……每次棧的遷移都有背後的原因,新時代的Developer如果不能很快的切換過去,那無疑會給團隊的轉移增加阻力,這也就是為什麼FB只招Full Stack Developer的原因—–FB也不知道下一次人遷移到哪個技術棧。FSD並不是要求會開發、會設計、會3D、會策劃……而是要找出特定領域內,哪種技術棧更適合,並且要快速具備完整轉移的能力。微信成功了,又開發了網頁版;網頁版完成了,又要開發桌面版。如果微信的架構師說我只會開發手機APP,那麼難道要臨陣換帥?

我的理解就是,沒人生來是全棧,技術是要不斷學習的,對所有的軟體技術抱有一種真摯的興趣,不斷學習,有一天,你會發展你就是屬於你自己的全棧。
全棧也許可以說是一套解決方案,
而不是,把排行前5的語言都學會,前端流行框架學幾個,結果你要知道你的知識是用來解決問題的,而不是充數量的。
全棧是為了更好的溝通,而非精通多種知識