软件工程
敏捷迭代 · 需求分析 · 软件架构 · 设计模式 · 测试与质量保障,把工程方法真正落到团队日常。
软件可访问性工程:让产品对所有人可用
无障碍不是少数人的需求:用语义化结构、键盘支持、焦点管理和自动化检测,让产品对所有人可用,也让你少背一堆技术债。
软件本地化与国际化:让产品说世界的语言
国际化不是翻译:把文案外置、处理好编码与格式、适配从右到左语言,让产品说世界的语言,而不是上线前重写一遍。
软件安全测试与漏洞治理实战
漏洞不是上线后才出现的:用威胁建模、静态扫描、动态扫描和漏洞闭环管理,把安全测试做进流水线,让风险在发布前就被拦下。
数据库建模与表设计实战
表结构是业务的骨架:先用实体关系模型理清对象,再谈规范化和反规范化,最后靠索引与迁移让表既能立得住、又能跟得上业务变化。
软件供应链安全:依赖、制品与信任边界
一个被投毒的依赖、一个没验签的制品,就能顺着发布链路摸进生产:用锁版本、验哈希、签名校验和 SBOM,把供应链的每道门都看住。
可观测性实战:日志、指标与链路追踪
系统一多、调用一深,出问题就难定位:用日志、指标、链路追踪三根支柱,让每一次异常都能被看见、被关联、被定位。
事件驱动架构与消息队列实战
同步调用多了就耦合、就堵车:用消息队列和事件驱动把服务之间的调用变成异步协作,解耦、削峰、可重放。
性能工程与性能调优实战
性能不是上线前突击一次:先定目标、压测找瓶颈、分层排查,再把性能门禁做进 CI,让快成为长期状态。
研发效能度量:用 DORA 四指标看清团队交付能力
用部署频率、前置时间、变更失败率和恢复时间四个指标,看清价值流动卡在哪一段,再把改进落到瓶颈上。
配置管理与多环境一致性:别让环境差异坑了你
把配置和代码分开、差异收敛到配置层,让开发、测试、生产尽量一致,消灭在我这好好的上线就挂。
API 安全与鉴权设计:让接口既好用又安全
认证和授权分层、短期令牌加最小权限,再用限流和加密传输把好大门,让接口开放出去也风险可控。
故障演练与混沌工程:主动给系统制造点麻烦
主动把故障注入生产,用实验找出系统的脆弱点,再用 SLO 和应急把韧性一点点练出来。
API 设计与版本管理:让服务之间讲同一种话
用清晰的接口设计、契约和版本策略,让调用方和提供方讲同一种话,接口演进不破坏老用户。
单元测试覆盖率与不稳定测试治理:别让数字骗了你
看清覆盖率到底在测什么,别被假绿骗了,再把时不时自己挂掉的不稳定测试一个个治理掉。
缺陷追踪与质量度量:让每一个问题都被闭环
用缺陷生命周期、严重度优先级和响应 SLA 把每个问题从发现追到关闭,再用度量看清质量走向。
技术文档工程与架构可视化:把系统画清楚
用文档即代码让文档跟代码一起演进,用 C4 模型和分层架构图把系统画清楚,让新人也能快速理解。
软件架构评估与演进:用 ATAM 和 ADR 把决策留下来
用 ATAM 结构化找出风险与权衡,用 ADR 记录每一次取舍,让架构演进可追溯、可讨论。
测试金字塔与质量内建:把质量做进流程里
用测试金字塔把单元、集成、端到端分层搭配,再用质量门禁守住关键路径,让质量成为默认。
持续集成与发布工程:让每次提交自动走向上线
把构建、测试、制品、门禁和灰度串成一条自动流水线,让每次提交都可追溯、可回滚地走向上线。
微服务架构演进:从单体到服务拆分与治理
按业务边界拆分服务,用注册发现、配置中心与网关把它们连起来,同时正视分布式成本,渐进演进。
敏捷开发实战:从瀑布模型到 Scrum 迭代流程
从瀑布模型的失速讲起,用 Scrum 的角色、事件与工件,搭出一条能真正跑起来的迭代流程。
需求分析与软件架构设计:从用户故事到分层架构
把模糊的用户诉求变成可验收的用户故事,再用分层架构与 ADR 把设计决策固化下来。
常用设计模式与代码重构实战
工厂、策略、观察者到底解决什么问题?结合坏味道清单与安全重构手法,让模式服务于可维护性。
软件测试与质量保障:从单元测试到 CI 质量门禁
测试金字塔怎么分配投入、单元与集成测试怎么写,最后用 CI 质量门禁把问题挡在合并之前。
代码评审与工程规范实践:从评审清单到团队共识
把代码评审从个人的经验判断,变成团队可复用的清单、流程与自动化检查,让规范真正落到每次合并之前。
项目估算与风险管理:从故事点到风险登记册
把拍脑袋的工期换成可讨论的估算流程,用故事点与关键路径排出进度,再用风险登记册显式管理不确定性。
技术债管理:从紧急救火到可持续的偿还节奏
把技术债从「以后再还」的模糊焦虑,变成可登记、可排期、可安全偿还的工程实践。
DevOps 工程文化:从协作墙到持续交付的共识
DevOps 不是装一条流水线,而是拆掉开发与运维之间的墙,把持续交付变成团队每天的共识。
TDD 测试驱动开发实战:红-绿-重构的最小循环
TDD 不是先写一堆测试再补功能,而是红-绿-重构的最小循环,让设计在被验证中成形。
Git 分支策略:从一个人 main 到团队协作流
分支策略决定团队怎么并行开发又不互相踩踏:短分支、主干直推与发布分支各有取舍。
领域驱动设计实战:用限界上下文给系统划边界
DDD 不是画漂亮的类图,而是用统一语言、限界上下文和聚合,把复杂业务拆成边界清晰的模块。
代码质量度量与重构:把杂乱的代码梳成整齐的样子
代码质量不靠感觉:用圈复杂度找重点,在测试保护下小步重构,把杂乱的代码梳成整齐的样子。
需求工程与用户故事拆分:从模糊想法到可验收的故事
需求不是把想法记下来:先搞清用户与问题,再用用户故事和验收标准拆成可验收的小块。
软件发布与版本管理:让上线变成可预期的日常
用语义化版本号、发布门禁、灰度与回滚,把每次上线变成可预期的日常,而不是每月一次的赌博。