1. 7年实际业务的后台开发经验,熟悉业务开发全流程。
2. 侧重于web后台开发,熟练掌握go、php、python开发语言,对C/C++、bash也有一定的了解。
3. 熟悉各种web开发框架,例如beego、goframe、django等等,具有极强的代码理解及二次开发能力。
4. 熟练使用mysql存储关系型数据;使用redis实现缓存、分布式锁、排行榜、限频器等;使用elasticsearch实现全文搜索。
5. 熟悉linux系统各种命令的使用,有一定的运维能力。
6. 有分布式、高并发项目的实践经验。
7. 极强的排查问题、解决问题能力。
8. 熟练掌握vscode、vim等编辑器的使用。
9. 熟悉代码管理工具git的使用,已经使用git flow的项目开发经验。
1. QQ群聊天面板顶部的群在线人数功能:使用多级缓存策略,极大的降低了对服务、存储的压力;把cgi和server分离,保证了服务的稳定性和可扩展性。当时使用4台4c8g的虚拟机,轻松抗住2m/min的请求量。
2. 腾讯文档的列表功能:使用分库分表,承载了1亿用户,2亿篇文档的列表存储;把业务按功能模块拆分成微服务,使整个后台的逻辑解耦,简化了单服务的复杂性,给开发和维护带来了极大的便利。
3. 腾讯文档的全文搜索功能:使用elasticsearch分片存储文档标题和内容,把原来用遍历文章列表、比对字符串实现的接口耗时从5s+降低到1s-。elasticsearch中数据的更新使用异步队列实现,与原有服务解耦,并减少了对原有服务的侵入。
功能主要是在QQ群顶部位置展示在线人数,点击在线人数则展示按特定规则展示的部分成员,滑到最右侧则按特定顺序展示优先展示在线的群成员。 需求评审、技术方案确定、程序开发全流程参与,更是参加了后续两个版本的迭代升级。
多人协作,实时在线对文档、表格、幻灯片的编辑与查看。 主要负责的功能包括多级文件夹、共享文件夹、搜索等。由于业务本身的复杂性,这也是当时我们第一个大规模使用微服务的业务。
对mysql数据的可视化管理,基于django admin实现筛选、搜索、列表、详情、导入导出功能,并且可以对数据进行增加、删除和修改。 完全是独自实现,不依赖前端和设计就能方便的对数据进行可视化管理。