Re: [请益] 专精前端(或后端)vs全端工程师

楼主: shter (飞梭之影)   2020-11-22 11:26:39
※ 引述《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 元件,在后端也没有自己跑啥算法
至种全端只是让前后端彼此不直接接触的桥梁,也只有一定规模的公司才会开这种缺
作者: GoalBased (Artificail Intelligence)   2020-11-22 15:20:00
前端在干嘛你不知道 后端在干嘛你也不知道 怎么觉得自己是全端
作者: x246libra (楓)   2020-11-22 17:54:00
middleware工程师,有点吃力不讨好,好像韧体唷xd
作者: netburst (133 134 592)   2020-11-22 20:47:00
变成你在帮后端UT API 后端就不会自己测了
作者: ctrlbreak   2020-11-22 22:56:00
这个叫middleware...
作者: GGFACE (ggface)   2020-11-22 23:11:00
好强
作者: kangan987 (Jon.Snow)   2020-11-23 00:51:00
这感觉跟我同事做的事差不多,机器那边是C,然后后端处理protocol存到数据库,再开功能给前端控制台,使用者只要从控制下就可以针对不同的机器下指令
作者: Royne (哲哉)   2020-11-23 04:09:00
ipmi吗
作者: Csongs (西歌)   2020-11-23 08:27:00
后端别分这么细XDD
作者: j62065678620   2020-11-23 09:18:00
写unit test跟api没有关系
作者: Nitricacid (硝酸酸)   2020-11-23 16:31:00
这是后端...
作者: viper9709 (阿达)   2020-11-23 23:49:00
这个不是一般说的全端吧...
作者: sharek (...)   2020-11-25 00:02:00
怎么看都是用后端角度...

Links booklink

Contact Us: admin [ a t ] ucptt.com