1. 掌握 Python ,熟悉 Linux 及 shell 命令。
2. 熟悉 HTTP、TCP 协议。
3. 熟悉 Kubernetes 集群管理及资源部署,熟悉 Docker 。
3. 熟悉 Ansible 批量管理服务,了解 Terraform。
4. 熟悉 Django 框架,MySQL 数据库和 Redis 缓存。
5. 掌握 Selenium和 pytest。
6. 熟悉 Jenkins 与 Gitlab 集成。
7. 熟悉 Nginx 配置管理。
8. 了解 Prometheus、Grafana 等监控工具。
9. 熟悉 numpy/pandas/matplotlib 等数据统计分析工具。
10. 熟悉HTML、CSS、JavaScript等前端技术。
项目一:K8S集群测试
工作内容:
搭建测试环境,在 Vsphere/AWS/Azure 平台上部署 Tanzu Kubernetes Grid 集群和各种资源,提交 bug 和验证 bug 修复,监控系统性能。
要点:
1. 搭建测试环境,包括部署 vcenter 以管理物理机或虚拟机、给机器自动化部署 vsphere 版本、基于 Ansible 批量管理机器,安装 Tanzu Kubernetes Grid 和 Kubernetes 命令行等;
2. 基于需求给 Rally 测试框架开发新功能,编写测试用例并参与评审;
3. 测试过程中部署 Prometheus和 Grafana 实现集群性能监控;
4. 编写 Jenkins pipeline 实现测试环境部署到平台测试的自动化;
5. 分析测试结果并编写测试文档;
项目二:合作商News发布
工作内容:
负责客户管理系统的开发和部署。基于 Jenkins 构建和部署 web service到 AWS EC2 实例;
基于多进程,队列,inotify 文件监控客户上传到 AWS S3 qe bucket 的视频、图片等文件,并将其同步到 AWS S3 prod bucket 最终实现网站主页可以查看或播放;并且需要通过 AWS CloudWatch 分析产生的日志;
项目三:版面元素标注工具
工作内容:
为方便公司 AI 组进行模型训练而开发。
使用矩形/多边形/直线圈选/标注指定的版面元素,记录坐标和版面元素类别。
功能描述:
1. 基于 qt 信号和槽机制完成图像、标注结果文件的相关操作;
2. 基于 paintEvent、QLabel、QScrollArea 等实现图形、滚动条的显示、绘制;
3. 类别选择窗口的自定制实现;
4. 基于 QTransform 坐标系转换实现图像旋转;
5. 运用 numpy和 openCV 模块实现图像二值化、像素染色、判断所在区域;
6. 使用 json 相关功能完成对标注结果保存及读取;
项目四:UI自动化测试
工作内容:
手动测试费时费力,开发自动化测试脚本,用于定时检查页面内容错误项,并发送邮件。
要点:
1.基于unittest模块实现;
2.对selenium的webdriver进行了二次封装,增加了日志打印功能;
3.Excel数据驱动模式;
4.Page Object模式简化不同层关心问题;
5.基于HTMLTestRunner生成测试报告;
6.Smtplib、email模块发送邮件;
7.Docker构建镜像,Jenkins定时运行测试脚本;
项目五:在线学习和购买课程平台
工作内容:
提供信息分类和购物功能。采用前后端分离模式,前端基于 Vue.js 实现,后端基于 DjangoREST framework 实现。
要点:
1. 基于 Django REST framework 实现 API 接口;
2. 自定义 Django REST framework的 token 认证;
3. 对数据进行序列化操作以及对请求数据进行自定义验证规则;
4. 基于 Throttling 对用户和 IP 进行访问频率限制;
5. 基于 redis 缓存商品列表数据;
6. 调用支付宝接口,支持支付宝付款;
7. 微信推送消息给用户;
8. 基于 GIt 协同开发;