招聘职位:我们正在寻找一位经验丰富的 Python 后端工程师,负责公司核心业务系统的开发与维护。你将参与从底
层数据链路设计到高并发接口实现的全过程,利用异步编程技术解决复杂业务场景下的性能挑战,并持
续优化系统的稳定性和可扩展性。
岗位职责
1. 核心系统开发:负责后端核心业务逻辑、API 接口及管理后台的设计与实现,确保代码高质量交付。
2. 异步任务处理:基于 Tornado
异步框架设计并维护高性能异步任务系统,处理复杂的业务回调及后台自动化逻辑。
3. 数据架构维护:利用 SQLAlchemy 优化 MySQL 数据库设计与查询性能,确保数据一致性与安全性。
4. 缓存与并发控制:熟练运用 Redis
实现高性能缓存、分布式锁及消息队列,提升系统在高并发场景下的承载能力。
5. 稳定性与监控:利用 Prometheus
等监控工具对系统进行性能分析与告警配置,主动排查并解决线上潜在的性能瓶颈。
6. 工程化与部署:负责服务的 Docker 容器化配置、Nginx 反向代理优化及相关技术文档的编写。
任职要求
1. 扎实的 Python 功底:3 年以上 Python
开发经验,深入理解语言特性,具备良好的编程习惯和代码设计能力。
2. 精通异步编程:熟练使用 Tornado 框架(或对 asyncio、Sanic 等异步框架有深入理解),熟悉非阻塞 IO
机制。
3. 数据库专家:精通 MySQL 数据库设计、索引优化及事务管理,熟练使用 SQLAlchemy 或其他主流 ORM
框架。
4. 中间件应用:精通 Redis 的使用场景及其底层原理,具备处理复杂数据结构和分布式问题的经验。
5. 工程化能力:熟悉 Linux 开发环境,熟练掌握 Docker 部署及 Nginx 配置优化。
6. 解决问题能力:具备极强的逻辑思维,能够独立分析并解决复杂的线上故障,熟悉常用的性能调优工
具。
加分项
• 熟悉分布式系统架构,有处理大规模数据链路或复杂业务流程的经验。
• 熟悉 Prometheus / Grafana 监控体系,能够根据业务指标建立完善的监控看板。
• 在 GitHub 有活跃的开源项目,或在技术社区发表过深度技术文章。
• 具备良好的沟通能力和团队协作精神,能够承受一定的工作压力。
面试官考察重点建议
1. Tornado 异步机制:考察点:询问 Tornado 的 IOLoop
原理,以及在异步函数中调用了同步阻塞库(如旧版 pymysql)会产生什么后果。
2. SQLAlchemy 性能:考察点:如何排查 SQLAlchemy 产生的 N+1
查询问题?在高并发下如何处理数据库死锁?3. Redis 场景应用:考察点:Redis
分布式锁如何防止过期导致的任务重叠?在大流量下如何防止缓存击穿?
4. 线上排查思维:考察点:如果 Prometheus 监控显示某个接口响应时间突增,但 CPU
占用并不高,你会从哪些维度进行排查?(考察其对 IO 阻塞、网络延迟、数据库连接池等的理解)