header_logo

COLDSURF BETA

#GDD

#Goal Driven Development

Written by Paul
개발을 하다 보면 손이 먼저 움직이는 경우가 많습니다.
그러다 보면 최종 목표나 구조보다 구현 자체에 급급해지고, 그 결과 레거시가 남는 경우가 적지 않습니다.
개발자는 늘 다음과 같은 균형 속에서 선택을 해야 합니다.
  • 정해진 시간은 맞춰야 한다
  • 퀄리티는 지켜야 한다
  • 최소한의 동작은 보장해야 한다
  • 하지만 완성도는 어디까지 끌어올려야 하나?
이 기준은 누구도 정해주지 않습니다.
특히 코드 완성도는 개발자 스스로가 가장 민감하게 느끼는 부분이지요.

설계 없이 구현하면 생기는 문제

요구사항을 받았을 때 초안을 잡지 않고 구현부터 시작하면,
결국 구현 과정에서 타협이 생기고 방향성을 잃기 쉽습니다.
예를 들어 티셔츠 제작 요구사항이 이렇다고 해보겠습니다.
  • 좋아하는 밴드 로고 적용
  • 사이즈는 S, L, XL만
  • 성별 구분 없이 착용 가능
  • 로고 크기는 중간 사이즈
  • 로고 색상은 블랙
  • 고급 면 소재 사용
  • 면 색상은 블랙과 화이트 두 가지
이 요구사항을 항목별로 처리만 하다 보면,
초안 없이 만든 티셔츠는 제작이 끝나지 않거나
전혀 다른 결과물이 나올 수도 있습니다.

개발에서도 마찬가지

예를 들어 바텀시트 컴포넌트를 개발한다고 합시다.
요구사항:
  • 열릴 때 배경 스크롤 막기
  • 내부 input 포커스 시 모바일 키보드 대응
  • 내부 스크롤 가능
  • Indicator 드래그 시 자연스러운 동작
이 요구사항만 붙잡고 하나씩 구현하면,
마감 시한은 놓치고, DX는 떨어진 상태로 끝날 수 있습니다.

먼저 그리는 인터페이스

이럴 때는 먼저 추상화된 인터페이스를 그립니다.
생각할 포인트
  • 열고 닫기 제어 + 이벤트 캐치
  • Indicator 제어권 분리
  • Scrollable 컨텐츠 영역
  • 키보드 대응 포함

내부 코드 모양까지 그려두기

이 정도의 그림이 머릿속에 있으면,
구현 중 난관이 생겨도 방향성을 잃지 않고 설득 가능한 결과물을 만들 수 있습니다.

결론

  • 요구사항을 받으면 머릿속에 코드 모양을 먼저 그린다
  • 구현 중에도 그 그림에서 크게 벗어나지 않도록 한다
  • 구현에 끌려가기보다 Goal에 맞춰 완성한다
이 습관 하나로도, 급한 구현 속에서 레거시를 남기는 일을 줄일 수 있습니다.

© 2025 COLDSURF, Inc.

Privacy Policy

Terms of Service

Products