做 To B 与 To C 的前端开发有什么不同?

2023年12月31日

💎 加入 E+ 成長計畫 與超過 350+ 位軟體工程師一同在社群中成長,並且獲得更多的軟體工程學習資源

前端工程是一个很广泛的名词,很可能都是做前端工程师,但你的工作内容跟另一个人完全不同。虽然都是前端开发,产品开发、多媒体开发、设计系统、前端架构,这几个类别会有非常不同的工作内容。进一步说,光是做产品开发的前端,To C 的产品与 To B 的产品,就有很不同的侧重点。让我们在这一期聊聊他们的区别。

先来谈 To C 跟 To B 是什么,所谓的 To C 是指 To Consumer (对消费者),而 To B 则是 To Business (对企业)。一般你直接在网路上免费或付费使用的软体,多半属于 To C 范畴;而做给企业使用,或是通过企业采购的软体,多半是 To B 的范畴。

当然这定义没有很绝对,因为有些产品同时是做给 To C 与 To B,或是某个产品有 To C 的面向,同时又有 To B 的面向。举个常见的例子,以电商来说,一般人会逛的亚马逊 (Amazon) 或乐天 (Rakuten),都是 To C 的面向;然而亚马逊跟乐天都有配合的商家,商家要上架、管理商品资讯的页面则会是 To B 的面向。

To C 的产品特性是使用者量大、逻辑不复杂。以电商来说,龙头电商都是上亿使用者规模,同时面对使用者那端的都要尽力求做的简单易用,不然使用者就容易不继续用。在这样的特性下,To C 的前端会相对更重视效能,因为加载多一秒,都是代表极大量的使用者流失。同时 To C 更强调使用者体验,例如对于不同荧幕尺寸的 RWD 要求、对于各类浏览器兼容的要求。上亿使用者的产品,即使只有 1% 也是百万人。

接着来说 To B,这类产品的特性是,量级小、逻辑复杂。以电商来说,上亿使用者的电商,可能里头的商家仅有数十万,规模量极差几百倍。但是不同类型的商家,往往会有不同的需求,导致在产品设计上,To B 产品逻辑会变比较复杂。因此 To B 产品相对更重视代码的可维护性。这不代表 To C 的产品就不重视可维护性。主要是当商业逻辑相对没那么复杂时,前端代码不要写太烂,基本上都不会太难维护。

总的来说,同样是以产品开发导向的前端工程师,选择 To B 与 To C 会有很不一样的职涯体验。选了自己比较不喜欢的,可能会做得痛苦。举例来说,之前有认识在保险科技 (InsurTech) 公司任职的朋友,负责 To B 的保险产品,曾说过在工作上要学一堆保险相关知识与名词,才能确保功能写得正确,因为对保险没兴趣,搞那些商业逻辑让自己很痛苦。后来他换工作去做 To C 的产品,着重在他更喜欢的使用体验上,工作起来更加愉快许多。

希望这个简单的分野,能让大家更清楚不同的前端职涯。当然,必须再次强调,这是比较概略性的划分。在选择要接受哪一份 offer 时,还是需要更详细打听职缺实际的内容,才能选到对自己更理想的工作。

🧵 如果你想收到最即時的內容更新,可以在 FacebookInstagram 上追蹤我們