大家好 ,这里是8老月,前两个月接了个私活,客户想做一个针对程序员求职招聘的网站,应对春招,现在项目完成了,跟大家分享一下这个事情。
1、客户需求
大概的需求有3大块,即B端【对公司招聘人员如HR等】C端【求职者】后台管理
B端大概的需求
1、帐号中心(修改帐号信息:密码,头像,用户名等等)
2、公司信息 对公司的基本信息进行发布/修改 名称/地址/logo/官网信息执照信息等等
3、职位中心
管理职位的基本信息 职位名称/薪资/介绍/福利以及展示时间等等
刷新职位,购买展览位 类似于急招
职位到期提醒
4、投递中心
管理投递信息/查看简历/邀约面试/结果反馈等等
5、站内信
目前主要是接收平台管理员的通知,公司审核结
C端大概需求:
1、帐号中心 和B端内容差不多
2、简历中心 简历基本信息 工作经历/项目经历,教育经历/个人优势/作品集。
3、投递管理 投递的历史上记录 以及相关反馈结果,
4、职位大厅 职位搜索/公司搜索,查看职位信息啊。公司信息,投递职位
5、站内信 同b端
后台管理
1、系统管理,管理员/角色/菜单按钮权限,操作日志
2、帐号管理 bc端帐号管理 查看/冻结帐号/发站内信等等
3、公司信息管理 查看/审核/查看关联的b端帐号
4、职位管理 查看。审核职位,展览位管理,
5、简历管理 查看用户简历
6、投递管理 查看投递信息(谁投递了哪个公司哪个职位,都可以查看具体信息0
7、报表管理 公司总量,公司未审核数量,职位总量,职位未审核数量,用户总量/日新增量,帐号活跃度,处理简历效率,等等
目前客户提了大概这些需求,客户要求一个月能够上线试运行,大概估算了一下工作量 问题不是很大就答应下来了。
2、技术架构和组件使用
前端使用的是vue进行开发,很多组件可以直接用,后台服务是用springboot 进行开发的,分了2个服务,一个是后台管理用,一个是bc端公用。
数据库用的是mysql,缓存用的是redis,存一些字典、用户信息、以及广告信息等等。
这里有个要注意的,搜索不能直接用数据库搜索,一个是效率问题,一个是搜索范围问题,数据库搜索只能%搜索词%,不够智能,我这里用的是es搜索,更灵活更快,用户使用体验更好。
由于这个项目要接入支付,目前支付宝和微信支付都是精确到分,这里不建议使用bigdecimal进行跟钱有关的存储,我这里使用的是long存储到分的精度。