第一次远程面试记录贴

一面:

只是简单的自我介绍, 相当于发了一下个人简历
个人Github: https://github.com/Foreman-PHP
个人网站: https://foreman-php.github.io/

二面:

1.面试题:
如果做一款聚合收款应用,聚合市面上所有的支付通道,汇聚成一款多渠道支付,例如:微信,支付宝,银联,等其他收款渠道。 如何去规划这款收款应用,请从数据库设计,后台管理角度,用户体验角度,提供微信,支付宝,银联等提供资质的渠道供应商设计这款软件。 可以先说设定几个数据库表,收款时如何去分配这些渠道并实现,渠道供应商如何优雅的管理自己的资质渠道
1-2: 供应商还会有资金结算,请问如何保证这块资金准确无误?

2.我的回答:

数据库设计:

供应商表
    字段: 账号,密码,手机号,等等

供应商的profile表
    字段: 商铺地址, 商铺信息, 商铺管理人姓名, 手机号, 联系地址 等等

收款渠道表
    字段: ID, 收款渠道名称,等

供应商的收款渠道表
    字段: 供应商ID, 收款渠道ID,  收款渠道的配置,状态, 等等

收款表
    字段: 用户id, 订单号, 订单状态, 平台服务费(可能会有), 订单创建时间,订单更新时间, 支付时间, 订单所属供应商ID, 供应商名称(冗余字段可关模型关联查询) , 支付方式,支付流水号, 订单备注,订单支付金额, 等等

后台管理角度

首先区分系统管理角色,和供应商角色
    在登录的时候拿到角色的ID 去跳转到对应的界面
    比如供应商角色: 跳转到他自己的首页 , 其中首页要显示一天的各个收款渠道的总收入(从用户体验的出发)
    菜单列表中应有的功能:
                供应商的各种自己的信息
                供应商 各个渠道的配置
                供应商对应收款渠道的页面比如:
                        支付宝收款 
                        微信收款
                        ....等等
                        其中每个收款渠道页面应有订单记录, 最好有柱形图, 或者波浪图来表示订单和金额
                        也需要有结算按钮
                结算功能页面
                    各个收款渠道的结算记录详情
                    收款渠道的信息(比如 银行卡信息 等等)
                    ...等等
    系统管理员角色登录:
    菜单列表中应用
        可以查看每个供应商的订单流水(最好用 图形表示出来) 也要有对应的详情
        可以查看每个供应商的信息,更改信息等等
        可以查看每个供应商的结算信息等等(资金结算应是供应商发起结算请求结算请求,系统管理员去审核)
        供应商结算记录页面
            显示供应商的结算记录

用户体验角度

用户付款: 用户主动扫码或被扫码,不管是那种动作用户只需要打开一个二维码,由系统自动判断用户的支付渠道(比如支付宝, 微信 等等)

如何保证资金结算准确无误

1.计算出来的结算金额,别有计算失误.
2.别出现重复打款
3.做好相应的结算流水记录
4.自己的代码计算结算金额时,细心些, 控制好,别出现并发结算。
5.多表更新,再注意下事务

总结:

虽然说是第一次远程面试,但是通过文字直接的交流依然能感觉到面试官人 还挺好的, 面试完成之后也有给解答
大家也可以交流一下面试题,  和我的回答的不足之处, 相互学习
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!