"거의 다 됐죠?"라고 물었을 때 개발자의 속마음
"거의 다 됐죠?"라는 질문에 개발자가 바로 답을 못 하는 이유. '거의'라는 단어가 왜 함정인지, 겉보기 진척과 실제 진척의 간격을 정리했다.

"거의 다 됐죠?"
18년 동안 가장 대답하기 어려웠던 질문입니다. 나쁜 뜻으로 묻는 게 아니라는 걸 압니다. 그런데 이 질문 앞에서 개발자는 늘 잠깐 멈칫합니다. 왜 그럴까요.
"거의"는 측정된 숫자가 아니다
"거의 다 됐다"는 말에는 숨은 전제가 있습니다. 진척을 눈으로 볼 수 있다는 전제입니다.
화면이 뜨고, 버튼이 눌리고, 데이터가 목록에 나옵니다. 보는 사람 입장에선 "다 된 것 같은데?"가 자연스럽습니다. 실제로 눈에 보이는 부분은 대부분 끝나 있으니까요.
문제는 소프트웨어에서 눈에 보이는 부분과 실제로 해야 할 일의 양이 비례하지 않는다는 겁니다.
보이는 90%, 안 보이는 90%
기능 하나를 예로 들어보겠습니다. "회원가입" 화면입니다.
눈에 보이는 건 입력칸 몇 개와 가입 버튼입니다. 이건 빠르게 만들어집니다. 그런데 그 뒤에 숨어 있는 건 이런 것들입니다.
- 이미 가입된 이메일이면 어떻게 되나
- 비밀번호가 조건에 안 맞으면
- 인증 메일이 안 오면
- 가입 도중에 창을 닫으면
- 같은 이메일로 동시에 두 번 누르면
화면은 "거의 다 된 것"처럼 보이지만, 실제로는 이 목록을 하나씩 처리해야 진짜로 쓸 수 있습니다. 겉으로 보이는 게 전부라면 진작 끝났을 겁니다.
"거의"에서 "끝"까지가 가장 깁니다
작동하는 것처럼 보이는 단계와, 실제 사용자에게 내놓을 수 있는 단계 사이의 거리 — 이게 개발에서 가장 과소평가되는 구간입니다.
데모는 빠릅니다. 정상적인 흐름 하나만 통과시키면 되니까요. 그런데 서비스는 정상적이지 않은 상황을 전부 견뎌야 합니다. 에러 처리, 예외 상황, 실제 데이터, 성능, 보안 — 이 구간이 겉보기엔 "마무리"지만 실제론 절반의 일입니다.
그래서 "거의 다 됐죠?"에 "네"라고 답하기가 어렵습니다. 눈에 보이는 걸로 치면 네가 맞는데, 실제로 남은 일로 치면 아직 한참이거든요.
그럼 어떻게 물어야 하나
"거의 다 됐죠?"는 사실 진척이 궁금한 질문입니다. 그런데 이 질문으로는 진짜 진척을 알기 어렵습니다. 대신 이렇게 물으면 훨씬 정확한 답이 돌아옵니다.
"지금 실제로 쓸 수 있는 기능은 어디까지예요?" — 화면이 떴는지가 아니라, 예외 상황까지 처리돼서 진짜로 동작하는 범위를 묻는 겁니다.
"남은 건 뭐가 있어요?" — "거의"라는 뭉뚱그린 표현 대신 남은 목록을 꺼내게 하는 질문입니다. 개발자도 이 질문엔 구체적으로 답할 수 있습니다.
"지금 상태를 한번 볼 수 있을까요?" — 말로 듣는 진척보다 직접 만져보는 게 정확합니다. 중간 산출물을 자주 확인하면 "거의"의 간격이 애초에 생기지 않습니다.
"거의 다 됐죠?"에 개발자가 멈칫하는 건 감추려는 게 아닙니다. 그 단어가 실제 남은 일을 가리기 때문입니다. 진척은 눈에 보이는 화면이 아니라 처리된 예외의 수로 재는 게 맞습니다. 질문을 바꾸면, 답도 정확해집니다.
새 글 알림 받기
새로운 블로그 글이 발행되면 이메일로 알려드립니다.