后端开发工程师 backend-developer

后端开发工程师技能,提供构建生产级服务器端应用程序的全面解决方案。涵盖REST/GraphQL API开发、数据库设计、认证授权、性能优化和云部署。支持Node.js、Python、Java、Go等多种技术栈,包括Express、FastAPI、Django、Spring Boot等主流框架。适用于企业级应用、微服务架构和云原生开发。

后端开发 0 次安装 0 次浏览 更新于 2/23/2026

名称: 后端开发工程师 描述: 使用多种框架、数据库和部署策略构建生产级服务器端应用程序的综合后端开发。适用于构建API、服务、数据库或服务器基础设施时。

后端开发工程师技能

目的

提供跨多种框架、语言和部署策略的服务器端应用程序开发的全面专业知识。专注于构建可扩展的API、数据库设计、认证系统和生产就绪的后端基础设施。

何时使用

  • 构建REST或GraphQL API
  • 设计数据库模式和模型
  • 实现认证和授权
  • 设置服务器基础设施
  • 创建微服务或单体后端
  • 优化后端性能
  • 将服务器应用程序部署到生产环境
  • 需要多框架后端指导(Express、FastAPI、Django、Spring)

快速开始

在以下情况下调用此技能:

  • 使用Node.js、Python、Java或Go构建服务器端API(REST、GraphQL)
  • 实现认证/授权(JWT、OAuth2、基于会话)
  • 设计数据库模式和ORM集成
  • 设置后端测试(单元、集成、端到端)
  • 实现中间件(日志记录、验证、错误处理)
  • 将后端服务部署到Kubernetes、AWS、GCP或Azure
  • 优化后端性能(缓存、查询优化、速率限制)

不要在以下情况下调用:

  • 仅需要前端开发 → 使用前端开发工程师或Next.js开发工程师
  • 需要数据库特定优化 → 使用数据库优化师或PostgreSQL专家
  • 仅需API设计无需实现 → 使用API设计师
  • 需要GraphQL特定架构 → 使用GraphQL架构师
  • 仅需DevOps/基础设施 → 使用DevOps工程师或云架构师

框架支持

Node.js/TypeScript

  • Express.js、NestJS、Koa.js、Fastify

Python

  • FastAPI、Django、Flask、Tornado

Java

  • Spring Boot、Quarkus、Micronaut

Go

  • Gin、Echo、Fiber

决策框架

后端框架选择

后端框架选择
├─ JavaScript/TypeScript
│   ├─ 需要快速开发 + 类型安全 → NestJS
│   ├─ 需要轻量级/高性能 → Fastify
│   └─ 需要简单性 + 生态系统 → Express.js
│
├─ Python
│   ├─ 需要异步 + 高性能 → FastAPI
│   └─ 需要开箱即用 → Django (+ DRF)
│
├─ Java
│   └─ 企业级就绪 → Spring Boot
│
└─ Go
    └─ 高性能服务 → Gin 或 Fiber

认证策略矩阵

场景 策略 复杂度 安全性
无状态API(移动端、SPA) JWT
第三方登录 OAuth 2.0
传统Web应用 基于会话
微服务 JWT + API网关
企业单点登录 SAML 2.0 非常高

数据库与ORM选择

数据库与ORM决策
├─ 关系型(SQL)
│   ├─ Node.js/TypeScript
│   │   ├─ 需要类型安全 + 迁移 → Prisma
│   │   └─ 需要灵活性 → TypeORM 或 Sequelize
│   ├─ Python
│   │   ├─ 需要异步 → Tortoise ORM 或 SQLModel
│   │   └─ 同步 / Django → Django ORM 或 SQLAlchemy
│   └─ Java
│       └─ JPA(Hibernate)或 jOOQ
│
└─ NoSQL
    ├─ 文档存储 → MongoDB(Node.js用Mongoose)
    └─ 键值存储 → Redis(缓存、会话)

最佳实践

  1. 始终验证输入 - 使用提供的验证中间件
  2. 优雅处理错误 - 使用生成的错误处理器
  3. 编写测试 - 使用测试模板保持一致性
  4. 使用环境变量 - 绝不硬编码密钥
  5. 实现日志记录 - 使用提供的日志配置
  6. 监控性能 - 设置指标和警报
  7. 安全第一 - 使用提供的认证设置
  8. 版本化API - 遵循版本控制模式
  9. 文档化代码 - 自动生成API文档
  10. 安全部署 - 使用提供的部署脚本

常见模式

仓储模式

  • 关注点分离
  • 易于测试
  • 可互换实现

服务层

  • 集中业务规则
  • 事务管理
  • 错误处理

中间件栈

  • 认证
  • 授权
  • 验证
  • 日志记录
  • 错误处理

故障排除

常见问题

数据库连接错误

  • 检查连接字符串
  • 确认数据库正在运行
  • 检查网络连接
  • 查看连接池设置

认证失败

  • 验证JWT密钥
  • 检查令牌过期
  • 验证令牌格式
  • 查看中间件顺序

构建失败

  • 检查TypeScript配置
  • 确认依赖已安装
  • 查看错误信息
  • 检查语法错误

部署问题

  • 验证Docker镜像构建
  • 检查Kubernetes Pods
  • 查看日志
  • 验证环境变量

质量检查清单

安全

  • [ ] 所有端点的输入验证(Zod/Joi)
  • [ ] 密码哈希(bcrypt成本10+或Argon2)
  • [ ] SQL注入防护(参数化查询)
  • [ ] 认证端点的速率限制
  • [ ] 安全头(Helmet.js)
  • [ ] 密钥使用环境变量

认证与授权

  • [ ] 强JWT密钥(256位)
  • [ ] 短期访问令牌(15分钟)
  • [ ] 刷新令牌轮换
  • [ ] 受保护路由的授权检查

错误处理

  • [ ] 全局错误处理器
  • [ ] 异步错误处理(express-async-errors)
  • [ ] 清晰的验证错误信息
  • [ ] 未知端点的404处理

性能

  • [ ] 数据库连接池
  • [ ] 查询优化(避免N+1)
  • [ ] 缓存(Redis用于会话、速率限制)
  • [ ] 响应压缩(gzip/brotli)

测试

  • [ ] 服务/仓储的单元测试
  • [ ] API端点的集成测试
  • [ ] 关键路径覆盖率 >80%
  • [ ] 独立的测试数据库

附加资源