Python Developer
Summary
A hands-on Python backend developer will build the first version of a multi-tenant SaaS platform for IT operations service providers and their enterprise clients, owning backend implementation, PostgreSQL schema design, REST APIs, testing, and Docker-based deployment. Core stack is Python, Django, Django REST Framework, and PostgreSQL; frontend work is explicitly out of scope.
我们正在寻找一名能够亲自动手的 Python 后端开发工程师,为 IT 运维服务提供商及其企业客户构建 SaaS 平台的第一个版本。您将全面负责后端实现、数据库设计、API、测试和部署工作,并依据详细的工程规格说明,直接与产品负责人合作。
前端将使用 AI 辅助工具另行开发。前端实现、React 和 UI 设计不属于本职位的工作范围。您将制定清晰的 API 契约,并通过验证后端行为和排查 API 问题来支持前端集成。
关于该职位
我们正在寻找一名能够亲自动手的 Python 后端开发工程师,为 IT 运维服务提供商及其企业客户构建 SaaS 平台的第一个版本。您将全面负责后端实现、数据库设计、API、测试和部署工作,并依据详细的工程规格说明,直接与产品负责人合作。
前端将使用 AI 辅助工具另行开发。前端实现、React 和 UI 设计不属于本职位的工作范围。您将制定清晰的 API 契约,并通过验证后端行为和排查 API 问题来支持前端集成。
您将构建的内容
该平台将支持多个服务提供商,每个服务提供商服务于多家客户公司,并严格隔离各客户的数据。核心功能包括:
- 组织、项目、用户、基于角色的权限以及客户访问控制。
- 资源申请、审批、工单优先级、任务分配以及交付验收。
- 虚拟机、数据库、存储和域名的资产记录。
- 资源变更、续费、退役、到期提醒以及审计跟踪。
- 评论、内部备注、附件、通知以及报表。
运维人员将在 AWS 或 CNNetworks 上手动开通资源,并通过 NameSilo、GoDaddy 等服务商注册或续费域名,然后将结果记录到系统中。自动化资源开通和域名注册商集成不在初期范围之内。
主要职责
- 使用Python、Django 和 Django REST Framework 构建易于维护的后端服务和REST API。
- 设计 PostgreSQL 数据库模式、约束、索引以及版本化的数据库迁移。
- 实现多租户隔离、权限管理、审批工作流以及可追溯的审计记录。
- 处理并发更新、重复请求和失败操作,并确保后台任务可靠运行。
- 实现安全的身份认证、私有文件访问以及受访问控制的数据导出。
- 针对权限、工作流状态转换和数据完整性编写自动化测试。
- 搭建基于Docker 的部署环境,并编写API、配置、备份及恢复流程的相关文档。
任职要求
- 至少 3 年专业软件开发经验,其中包括生产环境后端应用的开发经验。
- 具备扎实的Python 和 Django技能,拥有构建 REST API 的实际经验;熟悉 Django REST Framework 者优先。
- 具备扎实的PostgreSQL 及关系型数据库设计经验,包括 SQL、事务处理和查询优化。
- 具备实现身份认证、权限管理以及组织级或客户级访问限制的经验。
- 理解并发控制、幂等性、数据校验以及业务记录的一致性。
- 具备自动化测试、Git、Docker、Linux以及生产环境故障排查的实际经验。
- 能够独立工作、澄清需求、展示工作进展,并及早提出风险。
- 能够用清晰的英语向非技术背景的产品负责人解释技术决策。
加分项
- 具有多租户SaaS、工单、审批、库存或资产管理系统的相关经验。
- 熟悉Celery、Redis、定时任务以及通知重试机制。
- 熟悉AWS 部署、私有对象存储、CI/CD、监控以及恢复测试。
- 熟悉审计日志、安全文件处理以及PostgreSQL 行级安全。
- 熟悉OpenAPI 文档编写,以及与独立开发的前端进行API 集成。