예약 시스템 개편기: 우리는 왜 '예약 레고'를 만들었나
들어가며
안녕하세요. 비브로스에서 백엔드 개발을 담당하고 있는 김예림입니다.
이번 글에서는 병원 예약 시스템을 전면 개편한 경험을 공유하려 합니다. "예약"이라고 하면 단순히 시간을 골라 버튼을 누르는 것으로 끝날 것 같지만, 실제로는 그 이면에 예상보다 복잡한 문제들이 숨어 있었습니다.
감기 진료 10분, 예방접종 5분, 초음파 50분. 진료 항목마다 소요 시간이 다른데, 이것들을 하나의 시간표 위에 빈틈없이 쌓을 수 있을까요? 마치 레고 블록처럼 크기가 다른 조각들을 빈 공간 없이 채워 넣는 것이 이번 개편의 핵심 목표였습니다.
이 글에서는 다음 문제들을 풀어간 과정을 설계 관점에서 다루겠습니다.
- 진료 항목마다 다른 소요 시간을 어떻게 하나의 시간표에 빈틈없이 쌓을 것인가?
- 두 사람이 동시에 같은 시간을 예약하면 어떻게 할 것인가?
- 예약 수가 맞지 않을 때, 원인을 어떻게 추적할 것인가?











