Jimmy's blog
返回文章列表
2235 字12 分钟

esop

ESOP#股权激励

ESOP 概述

ESOP (Employee Stock Ownership Plan) 指员工持股计划,公司借由让员工认购公司的股票,成为公司的股东之一。员工因此被激励会更努力工作,为公司和自己同时创造财富,实现双赢。老虎证券的 ESOP 系统是一款面向企业及员工的 SaaS 服务平台,负责管理企业发放给员工的期权/股票/现金 (统称为激励工具) 的完整生命周期,具体包括激励工具的授予、成熟、 归属、交易等环节。系统为 B 端用户提供了专业的企业审计报表工具和完善的授予发放管理功能,为 C 端用户提供了一站式的交易平台,归属的股票可以直接通过老虎 APP 进行交易。

ESOP 业务

ESOP 的主要业务模块如下图:

ESOP 的业务模块
ESOP 的业务模块

股权激励方案

股权激励方案是 ESOP 业务顾问帮助公司设置的定制化方案。在系统层面,股权激励方案需要设定好期权池大小、激励工具、授予批次等信息。ESOP 系统只负责这些信息的录入,真正的工作其实是前期的方案设计。比如公司以什么样的持股方案进行激励计划(员工直接持股、通过有限公司间接持股、通过持股平台间接持股等)。激励的股份来源(增资扩股、股权转让等)。选择什么样的激励计划(期权、股权、限制性股票RSA、受限股票单位RSU、绩效奖金等),这些都需要公司实现设计好,ESOP 有专业的顾问团队帮助公司设计股权激励方案。

授予的生命周期

授予(Grant)是 ESOP 的核心业务概念。授予包含员工信息和激励信息。授予的整个生命周期如下图所示:

授予的生命周期
授予的生命周期
  • 创建:录入授予基本信息,可随时更改。
  • 生效:成熟任务开始执行,授予的核心信息不可修改。
  • 成熟:分阶段按照指定比例/数量成熟/解禁,此时成熟部分的授予可以进行行权。
  • 行权:员工缴纳行权成本和所得税,对应的股票或其他权益归属员工。
  • 取消:员工行权之前可以随时取消任意数量,例如绩效考核、特殊取消等。
  • 终止:整个授予停止状态流转,已行权的部分保留,未行权的部分全部取消。

报表

ESOP 支持多种格式的报表,允许用户自定义报表内容。也支持生成专业的财务报表如 SBC 报表。

行权

行权是员工缴纳行权成本后,对应的期权/股票归属将归属到员工。具体可分为现金行权、非现金行权,行权的最终结果是员工获取权益,可以是保留股票或者保留现金。

报税

员工缴纳行权成本时支持计算所得税,自动报税。系统支持多币种。

资产/交易

员工行权后的资产(股票和现金),可以调用券商的接口进行交易。

在线签署

支持线上 PDF 协议的生成、发送、签署、校验、查看等操作。

消息推送

支持多种渠道的消息推送,如站内信、邮件、短信、老虎 APP 通知、飞书、钉钉、企业微信、百度如流等。

数据管理

支持自定义导入数据。导入模版可以动态配置生成,后台自动将数据库字段和模版字段关联起来。

登录/认证

模块提供统一的登录接口,生成对应的 token,之后前端可以携带 token 访问后台接口。类似于 JWT 的设计。 模块支持根据登录用户所属公司的性质,将请求路由到不同的服务集群上。

数据迁移

公司发生上市操作时,可能涉及到将公司的数据从国内集群迁移到国外集群。

多租户

多租户的目的是当多个企业用户使用同一套后台 SaaS 服务时,彼此间数据保持隔离。ESOP 使用的多租户方案是共享数据库和数据表,通过 corp_id 表示不同企业的字段。 实现方案是通过 Mybatis-Plus 的多租户拦截器实现 sql 的自动处理。

数据加密

安全层面的强制要求。需要将用户的敏感数据加密后再落库,防止泄漏用户信息。开发人员无法接触到线上数据,也没有权限对线上的加密字段进行解密。

权限管理

同一个企业下不同用户可以配置不同的角色,相应的对于操作和数据也有不同的权限。

系统操作日志

对数据的 CRUD 操作都会产生详细的操作日志,用户可以在管理界面查看。底层通过切面实现的。

ESOP 的系统架构

项目采用微服务架构开发部署,整体的架构如下图所示:

ESOP 的服务架构
ESOP 的服务架构

各个微服务之间通过共享数据存储和 RPC 框架通信。

ESOP 的微服务有两套环境,分别在北京和香港部署。这是国家对券商行业的限制,上市公司的信息只能存放到上市地所在的服务器。两套环境之间的数据彼此隔离,只有发生公司上市退市等操作时才会涉及到数据迁移操作。前端通过登录服务返回的标识确定接下来该用户需要访问哪一套环境,整个过程对用户是无感知的。

ESOP 系统各个服务的作用:

ESOP 的业务服务

ESOP-Login

登录 + 集群路由服务。主要作用是统一认证,生成用户的操作 token,参考了 JWT 的设计理念。

ESOP-Admin

企业数据管理服务。主要处理 ESOP 面向 B 端的授予业务。具体负责管理企业员工数据、授予的生成、发放、成熟、取消、归属等业务逻辑。以及企业侧的相关业务配置。

服务内按照公司做多租户设计,各个公司之间彼此数据隔离,每个公司只能查看到自己的数据,多租户设计的底层是由 Mybatis-Plus 实现 的。

ESOP-Staff

员工服务。主要处理员工端的授予行权、资产查看、协议签署等业务逻辑。

ESOP-Bos

ESOP 后台数据管理服务。主要是 ESOP 内部运营人员使用,负责管理整个系统的数据。

ESOP-Report

系统报表服务。主要提供 B 端各种业务和财务报表。因为报表业务比较重,所以单独抽取出一个服务。

ESOP-OpenAPI

系统的开放接口服务。负责给第三方企业的 OA 系统提供接入的 API,使用请求签名保证接口安全。

ESOP 的基础服务

ESOP-Batch

负责执行系统的定时任务。ESOP 系统中有很多业务和时间挂钩,比如授予成熟、离职、报表等,需要通过定时任务处理数据。

ESOP-Push

消息推送服务。负责处理各个渠道的消息推送,例如邮件、短信等,封装业务模版,尽量做到和业务系统解耦。

ESOP-Sign

在线签署服务。负责处理业务流程中的合同签署场景。整个 ESOP 业务中涉及到很多需要签署协议的场景。

ESOP-KMS

数据加解密服务。负责整个系统的数据加解密以及密钥管理。

ESOP-Grant

授予快照服务。使用 Canal 监听业务数据库,对授予表和关联数据进行快照处理。主要作用是支持事件回溯、报表生成等业务。

底层数据服务

ESOP-FileServer

文件存储服务。统一管理 ESOP 系统中所有的文件,主要包括协议和模版文件、报表文件等。底层依赖 Amazon S3 服务。

Redis & MySQL

数据缓存和持久化存储。

依赖的外部服务

上上签

提供签署证书服务。

邮件/短信推送服务

提供邮件/短信消息渠道支持。

老虎 APP

提供员工行权的交易接口。

References

文章信息

许可协议CC BY-NC-SA 4.0