PTT推薦

Re: [請益] 專精前端(或後端)vs全端工程師

看板Soft_Job標題Re: [請益] 專精前端(或後端)vs全端工程師作者
shter
(飛梭之影)
時間推噓 6 推:6 噓:0 →:9

※ 引述《LennonX (生れて、すみません。)》之銘言:
: 小魯妹我是個資歷一年多的前端工程師,
: 就自己興趣來說,還滿想接觸後端,目標是 Full stack。
: 但最近資深同事一直告訴我一個概念,如果是為薪水著想,
: 與其全端樣樣通卻樣樣不精,倒不如認真鑽研前端技術,讓自己在前端變得很厲害。
: 小魯妹有點訝異,因為我一直以為市場喜歡的是全端,
: 感覺全端的機會與薪水都會高於只偏向前(或後)端。
: 畢竟面試過很多公司,感覺他們都希望是前後端都能掌握的工程師。
: 不知道各位年薪 300 的大大怎麼想呢?

之前剛好有一份工作是全端,我不知道是否會趨勢化,但全端不一定是一人包前後的案子事實上那是一份不小的專案,前後端各有數人在開發,甚至客戶 App 也會來串機器

簡單介紹一下那個專案架構
我方開發 web 前端,機器上跑大量 C 的程式,需要把既有 command line 東西視覺化
為了達成雲端操作,所以需要有一個全端來設計 API + SDK

為了讓原本寫 C 的人繼續專精,所以我的工作是寫 Node.js call 機器上的程式
設計 API 讓打過來的需求轉成對應指令然後在執行完把節果格式化後拋回去
拋回去的前端我也要自己寫一支 js library
我方 web 前端用 Vue,客戶 App 用 React Native,政策因素都不直接打 API 到機器
而是有點像引用 Google 服務方式 import js sdk 進行操作
然後我要順便處理己方 web 端 Vuex 的管理

於是,我們的 web 前端變成不需要自己 call API
而是根據需要 call SDK function 或在 computed 收 Vuex state
更專心於把資料顯示在畫面上的元件開發工作,不處理打 API 的流程順序格式轉換啥的而輸入檢查因為是我做 sdk check function 前後端都用同一支 js 跑來維持一致性
其實有滿多開發上不重複寫的便利性在
客戶也不用管機器位置、API 參數、回傳格式,就 sdk call async function 而已

想想這可能算是一種較專精的全端工作,不寫畫面,所以也沒用 webpack 打包
而是用 Rollup 去打包一支 sdk js
並讓前後端都通用的程式碼要在 Node.js 與 Browser 上都能順利執行
最後是知道那些 C 程式的輸入、輸出資料格式要怎麼整理前端會比較好處理
( Command Line 下回來的資料如何 parse 後弄成 JSON 給前端吃)

反過來說,這的確也是不專精,你雖然知道前端要怎麼處理資料轉成畫面
但你在前端沒有自己動手在刻那些 UI 元件,在後端也沒有自己跑啥演算法
至種全端只是讓前後端彼此不直接接觸的橋樑,也只有一定規模的公司才會開這種缺

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.7.244 (臺灣)
PTT 網址

GoalBased11/22 15:20前端在幹嘛你不知道 後端在幹嘛你也不知道 怎麼覺得自

GoalBased11/22 15:20己是全端

前端在幹啥是非常清楚的,因為資料是串給前端開發元件用 會存在 Vuex 的 state 結構下,本來就要開發測試元件看看讀取操作是否符合需求 後端就真的比較像知道那些 C 程式要怎麼 call 的應用者角色而非開發者了 但還是要處理 session、排程、一些基礎 table 的 CRUD 跟寫 PHP 時比起來,node.js 不用 cron 而用自己的計時器排程滿有趣的

x246libra11/22 17:54middleware工程師,有點吃力不討好,好像韌體唷xd

也不會喔,因為分工變的更明確 純前端那邊不再有 call API 或邏輯運算的東西,這些都丟在 sdk 內 於是 Unit Test 就切的很乾淨了,前後端通訊與邏輯運算的測試程式就針對 sdk 跑 前端就專心刻元件、製作效果,也不會再跟後端勾勾纏 對於一直往下滑然後 load grid list 的預先快取也統一在 sdk 控制 不管是自己公司的前端或客戶都不會出現 load 資料的差異

※ 編輯: shter (36.225.7.244 臺灣), 11/22/2020 20:44:03

netburst11/22 20:47變成你在幫後端UT API 後端就不會自己測了

ctrlbreak11/22 22:56這個叫middleware...

GGFACE11/22 23:11好強

kangan98711/23 00:51這感覺跟我同事做的事差不多,機器那邊是C,然後後端處

kangan98711/23 00:51理protocol存到資料庫,再開功能給前端控制台,使用者

kangan98711/23 00:51只要從控制下就可以針對不同的機器下指令

Royne11/23 04:09ipmi嗎

Csongs11/23 08:27後端別分這麼細XDD

j6206567862011/23 09:18寫unit test跟api沒有關係

Nitricacid11/23 16:31這是後端...

viper970911/23 23:49這個不是一般說的全端吧...

sharek11/25 00:02怎麼看都是用後端角度...