这是用于演示写法的虚构简历。姓名、任职经历和成果均为创作,并非真实员工的履历。
胡皓轩
负责采集与消费者团队的服务设计、发布决策和事故恢复,结合Rust、Go实现及可重复负载测试制定评审标准并指导同事。
工作经历
PostHog
EMEA地区远程办公 · 英国
资深软件工程师
2021年1月 - 至今
- 作为工作流负责人,用Go构建将Kafka事件批量写入PostgreSQL的数据接入(ingestion)任务,通过幂等键和回放测试发现并修复超时后的重复写入。
- 负责制定评审标准,通过在回放期间停止消费者验证分布式系统(distributed systems)的可靠性(reliability),限制Redis去重键的生命周期并设置队列背压,避免恢复过程耗尽内存。
- 以每秒20,000条事件的固定回放执行基准测试与性能剖析,改进Rust采集处理器。限制解压大小并在内存分配前验证,在保持Kafka持久化后应答的同时,将p95应答延迟从180ms降至112ms。
- 按项目和distinct ID设计多租户队列限制,将高流量客户隔离到溢出通道,通过Kafka偏移量与PostgreSQL身份映射验证数据完整性,使其他租户在3倍流量突增时仍满足延迟目标。
- 建立消费者滞后、重试量和端到端摄取延迟的可观测性面板。值班期间定位阻塞分区的异常事件,回放隔离批次并核对事件数后关闭事故,将复现测试加入灰度发布门禁。
- 牵头采集与消费者负责人的发布评审,统一持久化应答、租户隔离和回滚门禁。指导两名工程师完成故障注入评审,在回放计数不一致时暂停发布,修复通过相同检查后再批准。
- 为Kafka消费延迟与死信队列告警加入租户标识和重放命令,验证重复投递不会生成第二条记录。
- 主导基于租户隔离数据的Kafka采集重放测试,在保留其他租户顺序契约的同时解决PostgreSQL重复写入。
- 发布Go采集路径基准工具,通过分析内存分配热点,在相同回放负载下将峰值内存降低21%。
Datadog
伦敦 · 英国
软件工程师
2016年3月 - 2020年12月
- 作为工作流负责人,在事件交给Go工作进程处理前,为Node.js生产者实现结构校验。通过契约测试重放不兼容载荷,避免异常事件进入Kafka,并保留失败请求用于诊断。
- 在Datadog实现日志处理Go工作进程,按客户与重试窗口限制Redis去重键。回放含重复请求的200万条合成记录,通过PostgreSQL对账确认进程重启后已接收记录无遗漏。
- 以先扩展后收缩及预演回滚的方式迁移36张PostgreSQL表,将模式变更与应用发布分开,用相同测试数据验证新旧写入路径,完成迁移而未中断客户写入。
GoCardless
伦敦 · 英国
软件工程师
2012年7月 - 2016年2月
- 在支付软件团队添加Webhook签名、重复投递和乱序事件的契约测试,将手工发布检查替换为可回放测试数据,在下一次客户集成上线前发现重试回归错误。
重点项目
事件回放与恢复测试平台
英国伦敦
设计与实现
2024年2月 - 2024年6月
- 构建包含合成租户流量、可控Kafka故障和S3归档的本地事件回放工具,测量恢复时间并比较回放前后唯一事件数量,使CI能够复现丢失与重复投递问题。
- 在项目报告中发布测试数据生成器、基准设置和失败矩阵,对比严格排序与溢出隔离,并记录部署前必须修改的消费者假设。
- 主导通过隔离输入构建独立回归测试,解决边界故障并发布附预期输出的可复现测试包。
教育经历
University of Manchester
曼彻斯特 · 英国
计算机科学学士
2009年9月 - 2012年6月
相关课程:算法、操作系统、数据库、计算机网络
技能
语言与存储
Rust · Node.js · Go · Kafka · PostgreSQL · Redis
系统设计
租户隔离 · 数据完整性 · 可观测性
交付与评审
负载测试 · 回归测试 · 技术辅导


