技術分享 | 如何成為後端工程師

閱讀時間約 5 分鐘
嗨 我是森妮
上週從IG讓大家投票下一篇文章,沒想到後端工程師篇壓倒性勝利
前端工程師篇不知道大家喜不喜歡!陸續在IG有收到私訊有不少關於後端工程師的問題,我只要有時間都會回應,也歡迎來跟我聊聊天
本篇主題回歸我的職位後端工程師!後端工程師其實很難用一篇文章就涵蓋全部,畢竟選擇的程式語言不同整個技能樹安排也會完全不同
軟體工程師屬於一個統稱,開發網頁、APP是多數,在求職的職缺中分為「前端」與「後端」兩種角色,包含前端及後端的角色則是「全端」工程師
這篇是後端工程師篇,還沒看過前端工程師篇的可以看上一篇文章,最後會介紹全端工程師,文章會以網頁做為說明的例子,分享給在學過程中或想轉職的人,知道自己適合哪一種軟體工程師角色以及一些必備的技能!

【後端工程師】
上篇文章有介紹到前端工程師就像房子的裝潢,那後端工程師就是房子的「建築師」了!
主要是提供前端網頁所需要的正確資料,相對前端需要有更多的資料處理邏輯,需要根據不同的專案、客戶的商業邏輯執行一系列與資料庫增刪改查的互動,「確保功能可以如預期實現,維持平台穩定」就是後端工程師的工作!
以圖書館為例,想瞭解這個館藏有哪些分類的書籍,點選「中文圖書」後,後端會從資料庫中找出所有分類在中文圖書的書籍資料,提供給前端,前端再顯示到網站上
大型系統需要存取大量的資料,如何快速、正確提供前端所需資料,就需要進行許多效能調校,資料庫、伺服器、程式邏輯、資料結構、演算法的存在相當重要,而這些項目學習深淺度會因產業不同影響!
改善應用效能之外,更改商業邏輯也是後端工程師常有的工作,例如:圖書館的新書推廣需要根據年齡層、職業進行推薦、電商網站根據不同時段推薦不同商品。
[工作流程]
  1. 團隊中的PM、SA與客戶進行需求確認
  2. SD/SA提供開發規格以及資料庫設計,例如:API規格、系統規格書,部分公司此工作會交由後端工程師負責
  3. 根據規格與SD/SA溝通資料間關聯性,開發API與設計系統商業邏輯,將需求實現為技術目標
  4. 撰寫Unit Test,確保程式經過基本測試
  5. 與前端工程師討論資料的接受與傳遞格式,建立基本測試資料提供前端工程師使用
  6. 開發的工時評估與開發目標安排為PM的管理範圍,遇到問題與需要協助也須即時反應,讓進度可以順利進行。
[學習路徑]
後端工程師總共分為概念、基礎、實作、進階,建議至少要學習到"實作"再開始找後端工程師的職缺,不論是什麼產業都會需要運用到框架跟版本控制,進階則要看產業是否有需求以及團隊是否由後端工程師負責!
>基礎概念與工具
  • 程式編譯器(Sublime Text、Visual Studio Code、IntelliJ IDEA、Eclipse)
  • 系統設計與資料庫設計
  • 系統資安與身分驗證
  • 系統開發內聚、耦合概念
  • HTTP相關通訊協定,與Web API(RESTFul API、Open API)設計規範
>程式開發-基礎
資料庫建議可以挑選各一種練習,瞭解關聯式與非關聯式的差異與設計原理
前端基礎語言(HTML、CSS、JavaScript) →SQL+關聯式資料庫(My SQL、Oracle、SQL Server、PostgreSQL)+NoSQL+非關聯式資料庫(MongoDB、Redis)→後端語言(Java、Python、C#、Golang) →【程式開發-實作】
>程式開發-實作
【程式開發-基礎】→框架(Java[Spring MVC/Spring Boot]、Python[Django/Flask]、C#[ASP.NET Core]、Golang[Gin]、PHP[Laravel])→單元測試Unit test→版本控制(SVN, Git )→Git repository (GitHub、GitLab)→Linux作業系統→【程式開發-進階】
>程式開發-進階
【程式開發-實作】→自動化測試→持續整合(CI/CD)→雲端平台(AWS、Google Cloud Platform、Azure、Heroku)
[求職注意]
我自己求職更在意的是公司能帶給我什麼效益,對找下一份工作有什麼幫助!
下面幾點屬於基本會詢問的問題
  • 團隊作業流程是採用什麼模式開發?敏捷式?瀑布式?
  • 主要溝通對象?是跟PM還是SA?是否有需要面對客戶?
  • 需要使用到的技術?框架?
  • 開發系統的使用者對象?需要瞭解哪種產業的domain know how?
[適合對象]
  • 喜歡邏輯思考跟資料處理
  • 邏輯清晰善於彙整資料流
  • 喜歡分析商業模式
  • 喜歡瞭解產業特性
這篇文章寫的時間相當的長,從開設帳號前就開始構思,也找許多當初的學習資料慢慢整理出來,從學習路徑能看出來想成為一位後端工程師並不容易
這幾年我負責開發之外,還有更多的時間都在負責溝通跟設計系統,不知道大家對於系統分析師的工作介紹會不會有興趣呢?
最近預計會分享後端工程師常用的工具、常用網站以及學習資源總共三篇!
如果有喜歡的主題歡迎留言或私訊跟我說
為什麼會看到廣告
    如何成為後端工程師,後端工程師的技術分享!
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    你可能也想看
    Google News 追蹤
    Thumbnail
    這篇文章探討了工程師在如何有效提升自己,強調不僅僅是多coding,而是要對程式碼有更深層的理解。隨著職涯發展,工程師需要從單純的技術執行者轉變為團隊領導者,具備解決複雜問題和與他人有效溝通的能力。
    上一篇主要在說如何做決定的,這篇就來寫寫面試前該做什麼準備。
    Thumbnail
    當我剛開始接觸這個領域的時候,經常會看到有人在討論: 到底要做前端還是後端工程師呢?後端工程師賺的比前端工程師多?前端工程師轉後端工程師?那前端與後端到底是什麼呢? 這篇文章提供了前端與後端的基本概念並舉例來說明。同時也介紹了前端的三大要素以及後端的運作原理,對於想深入瞭解前後端的讀者會非常有幫助。
    Thumbnail
    是的,身為前端工程師的基本功!還是需要時不時拿出來打磨一番! 很多大公司的切版與前端是分開的,但不能因為碰不到就不去理解,假如要系統性的調整樣式,那麼你就一定要懂基礎,就好像你要調整微前端的架構,總不能連包板工具的設定都不會吧! 回到正題,這系列文章每個禮拜三都會更新一題CSS Battle的題
    Thumbnail
    是的,身為前端工程師的基本功!還是需要時不時拿出來打磨一番! 很多大公司的切版與前端是分開的,但不能因為碰不到就不去理解,假如要系統性的調整樣式,那麼你就一定要懂基礎,就好像你要調整微前端的架構,總不能連包板工具的設定都不會吧! 回到正題,這系列文章每個禮拜三都會更新一題CSS Battle的題
    Thumbnail
    是的,身為前端工程師的基本功! 還是需要時不時拿出來打磨一番,這系列文章每個禮拜三都會更新一題CSS Battle的題目,歡迎與我交流喔!
    Thumbnail
    #職場故事 #網頁設計 #前端工程師 #轉職 #跨領域 八、軟體公司的前端工程師之路 新公司不是做網頁專案的,而是自己研發資安軟體的公司,主要只有一個大專案,跟很多客製化的需求。 我在這次轉職時有考慮到,我其實不太喜歡一個案子做完就結束的感覺,因為那會讓我覺得這些作品做完好像也不是我的東西..
    Thumbnail
    #職場故事 #網頁設計 #前端工程師 #轉職 #跨領域 五、網頁設計師要做什麼? 說實話,每間公司不一樣。 我不是只面試一間而已,光是網頁設計我應該至少投了十間以上,我問到的職務內容跟範圍不全然相同。依照公司規模和用的框架,會有滿大的差別。 網頁設計主要分成以下工作:
    Thumbnail
    是的,身為前端工程師的基本功!還是需要時不時拿出來打磨一番! 這系列文章每個禮拜三都會更新一題CSS Battle的題目與解法
    Thumbnail
    這篇文章探討了工程師在如何有效提升自己,強調不僅僅是多coding,而是要對程式碼有更深層的理解。隨著職涯發展,工程師需要從單純的技術執行者轉變為團隊領導者,具備解決複雜問題和與他人有效溝通的能力。
    上一篇主要在說如何做決定的,這篇就來寫寫面試前該做什麼準備。
    Thumbnail
    當我剛開始接觸這個領域的時候,經常會看到有人在討論: 到底要做前端還是後端工程師呢?後端工程師賺的比前端工程師多?前端工程師轉後端工程師?那前端與後端到底是什麼呢? 這篇文章提供了前端與後端的基本概念並舉例來說明。同時也介紹了前端的三大要素以及後端的運作原理,對於想深入瞭解前後端的讀者會非常有幫助。
    Thumbnail
    是的,身為前端工程師的基本功!還是需要時不時拿出來打磨一番! 很多大公司的切版與前端是分開的,但不能因為碰不到就不去理解,假如要系統性的調整樣式,那麼你就一定要懂基礎,就好像你要調整微前端的架構,總不能連包板工具的設定都不會吧! 回到正題,這系列文章每個禮拜三都會更新一題CSS Battle的題
    Thumbnail
    是的,身為前端工程師的基本功!還是需要時不時拿出來打磨一番! 很多大公司的切版與前端是分開的,但不能因為碰不到就不去理解,假如要系統性的調整樣式,那麼你就一定要懂基礎,就好像你要調整微前端的架構,總不能連包板工具的設定都不會吧! 回到正題,這系列文章每個禮拜三都會更新一題CSS Battle的題
    Thumbnail
    是的,身為前端工程師的基本功! 還是需要時不時拿出來打磨一番,這系列文章每個禮拜三都會更新一題CSS Battle的題目,歡迎與我交流喔!
    Thumbnail
    #職場故事 #網頁設計 #前端工程師 #轉職 #跨領域 八、軟體公司的前端工程師之路 新公司不是做網頁專案的,而是自己研發資安軟體的公司,主要只有一個大專案,跟很多客製化的需求。 我在這次轉職時有考慮到,我其實不太喜歡一個案子做完就結束的感覺,因為那會讓我覺得這些作品做完好像也不是我的東西..
    Thumbnail
    #職場故事 #網頁設計 #前端工程師 #轉職 #跨領域 五、網頁設計師要做什麼? 說實話,每間公司不一樣。 我不是只面試一間而已,光是網頁設計我應該至少投了十間以上,我問到的職務內容跟範圍不全然相同。依照公司規模和用的框架,會有滿大的差別。 網頁設計主要分成以下工作:
    Thumbnail
    是的,身為前端工程師的基本功!還是需要時不時拿出來打磨一番! 這系列文章每個禮拜三都會更新一題CSS Battle的題目與解法