디자인 시스템 구축에 참여해보고 느낀 것들
Next.js + Tailwind 기반 사내 디자인 시스템을 처음부터 만들어보며 배운, 코드보다 어려웠던 것들.
입사 3년 차쯤, 팀에 디자인 시스템이 없다는 게 불편하다는 얘기가 여기저기서 나오기 시작했다. 버튼 컴포넌트가 페이지마다 미묘하게 색이 다르고, 같은 "Primary 버튼"인데 어떤 곳은 8px 라운드, 어떤 곳은 12px 라운드였다. 결국 내가 손을 들고 이 작업을 맡게 됐는데, 시작할 땐 "컴포넌트 몇 개 만들면 끝나겠지"라고 순진하게 생각했다. 결과적으로 3개월이 걸렸고, 코드보다 사람 설득이 더 어려운 프로젝트였다.

1. 첫 번째 착각 — "컴포넌트 라이브러리 = 디자인 시스템"
처음엔 Storybook 켜놓고 Button, Input, Modal 같은 컴포넌트를 Tailwind로 뚝딱 만들면 끝날 줄 알았다. 실제로 1주 차에 버튼 컴포넌트를 다 만들어놓고 뿌듯해했는데, 디자이너분이 확인하시더니 이렇게 말씀하셨다.
이 대화 이후로 처음부터 다시 시작했다. 디자인 토큰(색상, 여백, 타이포그래피 단위)을 먼저 정의하지 않고 컴포넌트부터 만든 게 근본적인 실수였다. 코드 짜는 순서로 치면 데이터베이스 스키마 없이 API부터 만든 셈이었다.
2. 디자인 토큰부터 다시 잡은 과정
디자이너분과 함께 2주 정도 색상, 간격, 타이포그래피 스케일을 처음부터 다시 논의했다. 실제로 정리했던 토큰 체계 일부를 코드로 옮기면 이랬다.
이 토큰을 Tailwind 설정에 직접 연결하니, 이후에는 컴포넌트를 만들 때마다 "이 색 괜찮나요?"라고 매번 물어볼 필요가 없어졌다. 토큰 자체가 결정의 기준이 되어준 거다.
3. 진짜 어려웠던 건 코드가 아니라 "설득"이었다
토큰과 컴포넌트를 다 만들어도 끝이 아니었다. 각 팀에서 이미 쓰고 있던 기존 스타일을 새 시스템으로 마이그레이션해야 했는데, 여기서 예상 못 한 저항이 있었다.
4. 컴포넌트 API를 설계하며 겪은 시행착오
기술적으로 가장 오래 고민했던 부분은 컴포넌트의 props 설계였다. 처음엔 유연성을 극대화하겠다고 모든 걸 커스터마이징 가능하게 만들었는데, 오히려 팀원들이 잘못 사용하는 경우가 늘었다.
이 경험으로 컴포넌트 설계에서 자유도가 높다고 무조건 좋은 게 아니라는 걸 배웠다. 오히려 선택지를 의도적으로 제한하는 게 시스템을 지키는 방법이었다.
42개 컴포넌트, 완전한 디자인 토큰 문서, Storybook 기반 가이드를 구축했다. 새 페이지 개발 시 UI 작업 시간이 체감상 절반 가까이 줄었고, 디자이너와의 QA 커뮤니케이션 비용도 눈에 띄게 줄었다.
결론
디자인 시스템 구축은 기술적으로는 그렇게 어렵지 않았다. 진짜 어려웠던 건 팀마다 다른 이해관계를 조율하고, 기존 방식을 바꾸는 데 대한 저항을 설득하는 과정이었다. 코드만 잘 짜면 된다고 생각했던 나에게는 큰 시야 확장의 경험이었고, 이후로는 어떤 프로젝트를 시작하든 "이 결정을 누구와 함께 내려야 하는가"를 먼저 생각하게 됐다.
디자인 시스템 구축 경험 있으신가요?
비슷한 프로젝트를 진행하며 겪은 어려움이나 노하우가 있다면 댓글로 공유해주세요. 지금 막 시작하려는 다른 개발자분들께 큰 도움이 될 것 같습니다.
'개발자 > 기술스택 도구' 카테고리의 다른 글
| 코드 리뷰 도구 도입 후 팀 분위기가 바뀐 이야기 (0) | 2026.08.21 |
|---|---|
| 개발자가 처음 AWS 만졌을 때 당황한 이유 (0) | 2026.08.14 |
| CI/CD 처음 구축했을 때 삽질 기록 (1) | 2026.08.07 |
| Notion vs Confluence, 팀에서 실제로 써보니 (0) | 2026.07.31 |
| 개발자가 AI 도구를 실무에서 쓰는 현실 (1) | 2026.07.24 |