产品

阿里面试官问我,如何设计贷超/消费贷系统

2019-11-12  本文已影响0人  Wayne维基

背景

参加了阿里系的一次电面,面试官最后留了题,让帮设计一个消费贷系统。
要求是:

通过u酷或者 ucweb 作为流量介入 使用银行作为渠道 在银行和流量之间做一个系统
承载留存 分润 数据 流程 和风控

解题

其实还是比较喜欢这种类型的面试,出题型,以前一般是在外企面试才会遇到,就是留一个题和限定时间给你,一般一周内,能解决就录取。个人感觉比面试的时候问一堆概念和方法论靠谱一点。
但这个题比较抽象,做过开发的人都知道这种需求没法做设计,这种需求如果是技术TL或者产品经理给出的话,开发已经已经内心崩溃了吧。但是如果是甲方爸爸给出的,就只能尽可能的自我合理化...毕竟是爸爸。
好歹我也接过一些甲方需求,就用对待甲方的态度对待这个题吧。

需求拆解

甲方有时候不知道自己要什么?只知道一个方向:就是引流给银行,银行下款之后分利润,这个大方向。技术需要按照可落地的方式进行需求拆解。

1 拆解这个需求中的用户

这个系统是一个toBtoC的系统,通过服务B端,触及C端,技术服务方是阿里系的这个公司。系统用户有几个类别:

C端:需要解决的诉求是,多,快,好,省。
用户渠道:快速接入,低成本接入,快速上线和下线。
银行:流程管理,资金安全,结算精确。

这个系统需要兼顾这三种用户的差异和不同的诉求。

2 拆解这个需求中的信息流(资金流)

身份已经不用说了,资金流向设计如下,当然有其他设计,比如用户还款也可以通过合作方来进行,但是系统的复杂度会高很多量级,故舍弃这个设计。
合作方:就是我们自己,对应到这个题目就是阿里系的这个公司。

image.png

3 开发需求拆解

以上系统需求再拆解给开发,需求细节如下:


image.png

4 MLP

系统一般不会一开始就做很大,先做核心功能做测试和试错,所以我们现在定义一个最简产品功能MLP,能打通渠道接入,引流给银行完成放款后和合作方分佣的功能。


image.png

小结

以上,回看把最初一个抽象的方向性的需求变成一个落地的产品需求,就是一个产品经理和技术TL撕逼到结果的过程。
有了可执行的细节,后续才会有进度排期,人力成本估算,产品发布计划等。

整个系统架构

整个系统架构:
按照表现层 - 网关层 - 管理层 - 公共服务 - 中间件/ 底层技术支持做了一个拆解


image.png

子系统架构

技术选型

如果是阿里,其实不需要这个,因为阿里有自己的一套开发体系和框架,但是这个系统也可以被其他公司使用,所以大致列举一下(后端 java 技术栈)。

技术团队构成建议

image.png

写在最后

到这里,整个系统结束了,说一下面试的后续,面试过程和一个优秀的人发生了思想的碰撞,还是很让人兴奋,结果还没给,但是对我而言,过程中带来的结果,比过程目的更有趣,所以写了这个分享,希望各位读者老板喜欢。

上一篇 下一篇

猜你喜欢

热点阅读