熟练使用python编程(基础数据类型,函数,函数式编程,模块,面向对象编程,语言特性等)
熟悉线程,进程,协程等
熟悉HTML5,CSS3,Javascript,,Ajax,JQuery,Bootstrap,微信小程序等前端技术的应用
熟悉关系型数据库Mysql,SOL语句,索引调优等
熟练使用Django(Django模板,FBV,CBV,ORM), 熟悉Flask框架
熟悉Drf中Restful API接口规范和Django的Rest_Framework,JWT,跨域等后台技术
熟悉Python爬虫,及一些反扒机制,多任务异步爬虫,selenium,scrapy异步爬虫框架(数据解析,持久化存储)
熟练使用linux操作系统(系统安装及常见命令),开发环境搭建与项目部署
熟悉Nginx代理,集群及负载均衡(Nginx和uWSGI服务器集群, 负载均衡策略)
熟悉Git等代码版本控制工具,熟悉多人协同开发
熟悉基本数据结构,算法等
数据标注系统
项目描述:
数据管理系统是滴滴打造的一个为机器模型标注数据集平台,他主要让内部员工方便处理整理数据,其中包含了标注、已标注、质检、验收、使用帮助五大模块,分别处理筛选公司的数据信息、内部通知以及不同类型的数据等进行信息的分拣和整合。系统包含vue.js和django rest framework开发的系统平台,主要做数据标注以及标注质量把控。项目开发中主要涉及drf相关接口的开发和认证,首先基于JWT做用户认证,认证通过后就可以进行数据的浏览和操作,例如语音标注、质检、验收等功能。为了方便项目进行数据筛选处理,在内部基于filter backends进行做筛选器处理。对于数据标注平台的管理是基于django实现的。
个人职责:
实现标注平台的开发,跟产品沟通,添加、优化功能,项目的后期维护与优化。
1. 参与了项目前期的需求分析以及部分库表设计 ,索引查询优化处理;
2. 利用JWT在后端实现用户登录认证;
3. 实现数据详情页分页及排序,调用DRF的分页和排序模块进行分页。
4. 使用事务实现数据提交操作,保证操作原子性、隔离性;
5. 使用RBAC模式实现不同角色权限的控制;
6. 员工登录成功后获取用户的权限,保存到session中,中间件实现(白名单、登录状态、免认证地址、权限、拒绝请求)校验。
微信小程序
项目介绍:
51微拍项目是一个微信小程序实现公共拍卖平台,项目主要由三部分组成,微信小程序端,提供用户交互平台,并提供了拍卖和动态管理,增强用户粘性;运营中心主要提供平台的数据支撑及管理,对于定时任务和拍卖等其他业务提供支持;API接口,遵循restful规范实现统一API接口。
技术栈: drf / restful API / 对象存储 / 异步请求 / celery / Redis / Https / SSL / drf源码
责任描述:
1. 通过Authentication及腾讯sms v3 SDK实现用户认证,并在小程序api中实现临时凭证;
2. 集成chooselmage、COS实现图片信息的上传以及持久化处理;
3. 基于js闭包解决默认小程序异步请求的问题,并实现onProgress动态进度和更新;
4. 避免权限问题导致项目出错,基于腾讯COS是credential凭证实现权限控制;
5. 使用django rest framework框架组件Authentication、FilterBackend、Hook钩子。Serializer完成业务接口的开发;
6. 通过微信支付/余额 实现保证金的缴纳,当拍卖结束时在完成保证金的抵扣、退款、交易记录;
7. 内部使用celery的eta 、redis 的string/list 实现任务的定时处理,并结合 redis特性实现验证码超时处理。