
진행 기간
2025.05 - 현재
핵심 기술

진행 기간
2025.05 - 현재
핵심 기술
"관심사 분리를 통한 위젯 엔진 패키지화와 하이브리드 운영 전략"
사용자 자율도가 높은 대시보드 시스템의 확장성을 확보하고, 인프라 운영 효율을 극대화하는 하이브리드 아키텍처를 설계하는 데 집중했습니다.
| 분류 | 기술 스택 | 핵심 역할 |
|---|---|---|
| Monorepo | Turborepo, pnpm | 위젯 엔진(packages/widget) 및 공통 패키지 물리적 격리 관리 |
| Framework | Next.js (App Router) | 개인화 대시보드 및 게이미피케이션 플랫폼 구축 |
| Infrastructure | AWS, Vercel | 서버 자원과 배포 편의성을 고려한 하이브리드 배포 파이프라인 |
| Testing | Vitest, MSW | 핵심 로직 커버리지 100% 달성 및 하이브리드 모킹 레이어 구축 |
packages/widget)를 구축했습니다. 이를 통해 위젯의 기능 확장이 앱 전체 빌드 성능에 주는 영향을 차단하고, 시스템의 뼈대가 되는 '그리드 엔진'의 독립적인 테스트 환경을 확보했습니다.NEXT_PUBLIC_API_MODE 환경 변수에 따라 Vercel(Mock Mode)과 AWS(Real Mode)를 유연하게 스위칭합니다. 특히 Vercel 환경에서도 MSW와 instrumentation.ts를 활용해 실서버와 동일한 인터페이스를 검증할 수 있는 모킹 전략을 수립했습니다.
feature)부터 출시(main)까지의 사이클에 맞춰 Vercel(Preview/STG)과 AWS(Production)를 교차 활용합니다. 이를 통해 비용 부담 없는 상시 통합 테스트 환경을 구축하고, 운영 환경 에러에 즉각 대응할 수 있는 안정성을 확보했습니다.
헬로월드 프로젝트의 하이브리드 배포 파이프라인 및 브랜치 운영 전략
"사용자 편의를 고려한 위젯 기반의 자유로운 대시보드 환경"
Zustand Persist를 활용해 사용자가 설정한 위젯의 위치와 종류를 브라우저에 기록합니다. 페이지를 새로고침하거나 다시 접속해도 마지막으로 설정한 대시보드 형태가 그대로 유지되어 탐색의 연속성을 보장합니다.
> 그리드 스냅부터 위젯 충돌 감지, 유기적 재배치까지 이어지는 대시보드 인터랙션 데모
개발 과정에서 직면한 기술적 병목과 인프라적 제약을 데이터 기반의 가설 검증으로 해결한 과정입니다.
405 Method Not Allowed가 발생하고, 백엔드 미완성 시 서버 런타임 로직 검증이 불가능한 문제instrumentation.ts를 통해 서버 MSW를 선제 구동하고, 가짜 도메인(Dummy Domain) 전략을 도입해 라우팅 간섭을 우회했습니다. 이를 통해 운영 환경과 동일한 인증/데이터 흐름을 백엔드 없이도 선제 검증하는 하이브리드 모킹 아키텍처를 구축했습니다.useMemo를 통한 연산 격리와 useShallow 기반의 정밀 상태 구독을 적용했습니다. 그 결과 렌더링 시간을 9.4ms에서 4.5ms로 약 52% 단축했으며, React Profiler를 통해 불필요한 자식 렌더링이 완벽히 차단됨을 실증 데이터로 확인했습니다.@helloworld/widget)로 분리하고, Turborepo 캐싱을 활용해 빌드 속도를 3분 29초에서 21초로 단축했습니다. 독립적인 테스트 환경에서 라인 커버리지 100%를 달성하여 시스템 확장성을 근본적으로 개선했습니다."사용자가 공들여 만든 공간이 무너지지 않도록, 보이지 않는 곳에서의 견고함을 추구했습니다."
turbo prune을 활용해 모노레포 내 전체 패키지가 아닌, 서비스 실행에 필요한 최소한의 컨텍스트만 추출하여 빌드 프로세스를 가볍게 유지했습니다.type=gha) 전략을 통해 종속성 변화가 없을 시 중복 연산을 건너뜁니다. 이를 통해 전체 배포 과정을 21초까지 단축하여, 유저의 불편 사항을 지연 없이 개선할 수 있는 환경을 만들었습니다.
[Vitest Report] 위젯 배치 및 상태 관리 로직에 대한 완벽한 검증으로 유저 경험의 안정성 확보
[GitHub Actions] Docker 캐싱과 turbo prune을 활용해 유저에게 개선 사항을 빠르게 전달하는 배포 지표
기술적 화려함보다는 확장 가능한 구조와 지속 가능한 운영 환경을 구축하는 데 에너지를 쏟았습니다.
packages/widget이라는 독립된 엔진을 직접 설계하며 시스템의 통제권을 확보했습니다.'헬로월드'는 현재 핵심 엔진과 인프라 파이프라인이 완성된 상태이며, 유저에게 더 풍부한 학습 경험을 제공하기 위한 기능들을 순차적으로 개발하고 있습니다.
"완벽한 결과물보다, 완벽한 기초를 다지는 과정에 집중했습니다."
단순한 코드 작성을 넘어 인프라와 성능, 그리고 사용자 경험을 동시에 조망할 수 있었던 의미 있는 프로젝트였습니다.