Cha Physical Therapy
Migrated a SquareSpace clinic website to an AWS-based web app,
improving the UI, integrating Stripe payments, and reducing
latency. The existing software as a service (SaaS) environment
limited UI customization and performance work, so I persuaded
the marketing team by showing a GitHub Pages demo with improved
UI and speed. I then rebuilt the app with a
Go backend and Docker deployment structure,
learning that a working prototype is the strongest way to make a
migration case.
SquareSpace 기반 클리닉 웹사이트를 AWS 기반 웹앱으로 이전해 UI
개선, Stripe 결제 연동, 레이턴시 감축을 구현했습니다. 기존 SaaS
환경은 UI 커스터마이징과 성능 개선에 제약이 있었고, 마케팅 팀을
설득하기 위해 GitHub Pages 데모로 개선된 UI와 속도를 직접
보여줬습니다. 이후 Go 백엔드와 Docker 배포 구조로 웹앱을 재구축하며, 마이그레이션 설득에는 작동하는
프로토타입이 가장 효과적이라는 점을 배웠습니다.
In April 2026, the service went down after an AWS Elastic Block
Store (EBS) gp3 volume exceeded its input/output throughput
limit. The root cause was a spike in disk input/output from
accumulated data, inefficient queries, and missing timeouts.
After restoring the service on a new EBS volume, I lowered the
chance of recurrence by applying
query rewrites, indexes, timeouts, data cleanup jobs, and
CloudWatch monitoring. I documented the details in a
postmortem.
2026년 4월, AWS EBS gp3 볼륨의 I/O 처리량 한도 초과로 서비스
장애가 발생했습니다. 원인은 데이터 누적, 비효율적인 쿼리,
타임아웃 부재로 인한 디스크 I/O 급증이었습니다. 새 EBS 볼륨으로
서비스를 복구한 뒤
쿼리 재작성, 인덱스 추가, 타임아웃 설정, 데이터 정리 작업,
CloudWatch 모니터링을 적용해 재발 가능성을 낮췄고, 자세한 내용은
사후 보고서에 정리했습니다.