如何成爲全棧開發工程師(2019)

做者:Alex Ronin前端

翻譯:瘋狂的技術宅數據庫

原文:frontnet.eu/how-to-beco…編程

未經容許嚴禁轉載後端

「如下文章已經完成了很長時間,因此文章提到了一些舊技術。」設計模式

Full stack development 2019

全棧開發工程師的話題是目前存在的最熱門話題之一,對其的爭議每每沒有盡頭。前端工程化

在 LinkedIn 和 Facebook 上,有不少人將當前的工做標記爲全棧工開發程師。在 Medium 上關於這個問題的文章也收到了不少讀者的好評。一些人認爲應該專一於我的技能和對技術的深刻理解,而不是把精力放在像全棧工程師這樣含糊不清的東西上。緩存

從我的的角度來看,我認爲主要是辯論的目的是將全能的工做人員與 IT 行業的熟練專家進行比較。當提到每一個人的技術能力時,這指的是「廣度」和「深度」兩個屬性。服務器

「須要 9 我的的工做會超過 9 個職業」 —— 個人父親曾經這樣呀教導他的子女。「要真正精通一件事,而不能樣樣稀鬆「。可是全棧開發工程師則要反對這個建議,挑戰本身不只要熟練掌握一種技術,並且要熟練掌握多種技術。框架

什麼是全棧開發工程師?

Full stack development

Quora 解釋了什麼是全棧開發工程師:編程語言

全棧開發工程師,能夠處理與數據庫、服務器、系統工程和客戶相關的全部任務。能夠用移動、Web 或原生應用等技術棧獨立完成客戶須要的項目的要求。

實際上,全棧是項目所需的一系列技術的集合。 全棧開發工程師是指可以在許多不一樣領域協調其知識而無需額外幫助來實施項目的人。

全棧開發工程師的優勢和缺點

在 OSCON 大會上,一位 Facebook 工程師說,他們只招募了全棧開發人員,這引起了對選擇這條道路的人的優缺點的爭論。

優勢

憑藉普遍的技術理解,全棧開發工程師能夠快速完成產品原型,具備比其餘工程師更開放和主動的外觀。因爲技術敏感性,這些人還爲產品提供了許多有用的想法。

從另外一個角度來看,全棧開發工程師能夠幫助團隊最大限度地減小技術或通訊問題的時間和成本。

許多全棧開發工程師後來成爲初創公司的創始人或技術顧問。

Defect

缺陷

當選擇橫向發展技能時,他們必須接受缺少深度的不足。一些全棧開發工程師沒法掌握某種技能。甚至許多人都聲稱本身是全棧開發工程師,但只有發言者知道究竟是怎麼回事。

如何成爲全棧開發工程師?

全棧開發工程師須要知識來知足與構建軟件程序相關的全部領域。

編程語言

首先,你須要瞭解許多編程語言,如 Java、PHP、C#、Ruby、Python 等。固然你不須要全都懂,但你必須掌握至少一種語言。關於語言,必須瞭解如何使用該語言設計、編碼和測試項目。例如若是選擇 Java,那麼你須要掌握面向對象的設計、設計模式、基於 J2EE 的組件等。

Full stack development 3 2019

框架和擴展庫

流行的編程語言都有很好的框架,好比 Java Spring、MyBatis、Hibernate、Python Django 等。你必須知道如何靈活地使用這些框架和支持庫。這取決於項目要求。

前端

前端在當前的軟件行業中變得愈來愈重要。用戶體驗是評估產品成功或失敗的重要因素之一。

做爲全棧開發工程師,你不能忽視 HTML五、CSS、JS 等前端知識以及 JQuery、AngularJS、React 等流行框架。

數據庫

每一個程序都須要一個數據庫來存儲數據。你須要瞭解如何與至少 1 ~ 2 個不一樣的數據庫進行通訊,例如MySQL、MongoDB、Redis、Oracle等。

MongoDB 具備很高的靈活性,經常使用於 Internet 服務。同時對於大型項目,我建議使用 MySQL 或 Oracle。 Redis 還可用於存儲緩存,提升系統性能。

設計

關於全棧開發工程師的大多數爭論都沒有提到設計,但在我看來,對於想成爲一名全能工程師的人來講,這也是一項必要的技能。你應該掌握有關如何設計簡單原型、UI/UX 設計的知識。

Full stack development 4 2019

其餘需求

  1. 有開放思想,涵蓋產品的各個方面
  2. 良好的溝通能力
  3. 創做能力
  4. 一直保持好奇心,準備好學習新知識
  5. 合理安排時間

結論

根據 Gladwell 的 10,000 小時原則,掌握前端、後端和麪向客戶的知識可能須要 10 年才能成爲全棧開發工程師。然而它仍然不是最終目標,由於你須要不斷學習新知識並深刻研究現有技能,真正爲全部需求提供動力。

歡迎關注前端公衆號:前端先鋒,領取前端工程化實用工具包。

相關文章
相關標籤/搜索