项目库
Web 应用Gusto · 前端工程实习生 · 2021

自助改套餐的结算流程

分享者:S. Patel · 前中型 SaaS 前端实习生

分享者在 Gusto 的行为面试里讲的就是这个项目,后来拿到了 offer。

走进这场面试

4 个当年真实追问 · 1 个 hard · 约 12 分钟

答完每一题,才翻开当事人当年的接法。

他们当时是怎么讲的

一个引导式流程,让小企业管理员自己升级或降级套餐,不用再发邮件找客服。

展开全文

在我们组,想改套餐的客户得发邮件给客服,再由客服手动去改。我的实习项目是在现有的 React 应用里做一个自助改套餐的流程:选一个新套餐,看清楚改前改后要付多少、变了什么,然后确认。我完全没碰真正的计费逻辑——我调的是一个现成的内部定价接口,它返回按比例折算的预览,再调一个单独的确认接口去做真正的变更。我的工作大部分是前端状态:这个流程有一个预览步骤和一个确认步骤,我得保证用户在预览里看到的价格,就是确认时实际应用的那个价格,因为如果你停在这个页面上过了午夜,按比例折算的金额是会变的。我的处理办法是把预览的报价 ID 传进确认调用里,让后端去拒绝过期的报价,这样我们就绝不会悄悄地按一个跟展示不一样的数字扣费。我还在失败状态上花了不少心思——卡被拒、报价过期——因为一次改到一半的套餐变更对小企业主来说很吓人。它在我实习快结束时通过一个功能开关,放给了一小部分账户。

当年真实被问到的

你怎么保证预览里显示的价格就是确认时扣的价格?

困难

你说你没碰计费。那这个前端项目到底难在哪儿?

中等

为什么在现有的 React 应用里做,而不是单独做一个流程?

简单

如果流量是 10 倍,这个流程有什么让你担心的?

中等