프로젝트 배경
1) 문제점 - EMR 시스템과 보험사 API의 데이터 모델이 서로 다른 표준(HL7 FHIR vs 자체 포맷)을 사용하여 공통 내부 스키마로 수렴하는 중간 변환 레이어 설계 - 의료 데이터 특성상 부분 동기화 실패 시 데이터 불일치가 임상에 영향을 줄 수 있어 트랜잭션 원자성과 롤백 시나리오를 엄격하게 설계해야 했던 점 - 외부 보험사 API의 응답 지연이 수 초에서 수십 초까지 불규칙하여 FastAP
프로젝트 성과
JSONB 외부화 매핑 규칙 + 런타임 동적 로드 구조 설계
변환 규칙을 PostgreSQL JSONB에 저장하고 Pydantic 검증 후 Python importlib로 런타임 로드하는 구조로 설계하여 시스템 재시작 없이 매핑 규칙 수정 적용 가능
Celery 지수 백오프 재시도 파이프라인 구현
Redis 브로커 기반 Celery 작업 큐로 외부 API 장애 시 지수 백오프 재시도를 구현하고 시스템별 정책을 독립 설정 가능한 구조 구축
FastAPI SSE + React Query 실시간 연동 구현
FastAPI Server-Sent Events 스트림과 React Query 캐시를 EventSource 훅으로 연동하여 폴링 없이 서버 이벤트가 즉시 UI에 반영되는 실시간 구조 구현
비동기 로깅 미들웨어 Cross-Cutting Concern 설계
Starlette BaseHTTPMiddleware로 요청·응답·처리시간을 처리 흐름과 분리하여 비동기 기록하는 미들웨어를 설계하여 28개 엔드포인트에 통합 적용
8개 테이블 정규화 스키마 및 복합 인덱스 설계
트랜잭션로그·오류·재시도정책 등 8개 테이블을 외래키로 연결하고 시스템ID·상태코드·생성시각 복합 인덱스로 다중 조건 로그 조회 성능 확보
핵심 기능
진행 단계
외부 EMR·보험사 API 인터페이스 분석 및 Webhook 수신 구현
2025.03.
EMR 시스템 및 보험사 API 스펙 분석, FastAPI Webhook 수신 엔드포인트 구현, Pydantic 요청 스키마 검증 구조 설계
프로젝트 상세
1) 포트폴리오 소개 외부 EMR(전자의무기록) 시스템 및 보험사 API와 병원 내부 데이터베이스 간의 실시간 데이터 연동 허브를 구현하였다. Python FastAPI 기반 API 게이트웨이와 PostgreSQL, Redis 큐를 결합하여 인바운드 Webhook 처리, 환자 데이터 ETL 변환, API 트랜잭션 로그 관리, 연동 오류 모니터링 기능을 풀스택으로 설계하고 구축하였다. 2) 작업 범위







