린 스타트업 - 1) 비전
소프트웨어 개발 방법론에는 애자일(Agile)이라는 개발 방법론이 존재한다.
나는 프로그래머라, 애자일도 많이 들어보고, 팀에 나름 적용해 보려는 시도도 해봤다.
그런데, 애자일의 본질을 정말 잘 알고 쓴다는 느낌을 받지는 못했다.
창업에 도전하기 위해, 소프트웨어 마에스트로에서 프로젝트를 기획하면서도, 'Lean 하게 팀을 움직여야겠다'라고 생각은 하지만, Lean이 무엇인지에 대해 제대로 알고 있는지는 모르겠다.
애자일, 린, 지금까지 그냥 무엇인가 빠르고, 유연한 방식을 지칭하는 '느낌'으로만 써왔다.
빠르게 무엇인가를 만들고, 거기에서 피드백을 받고, 그것을 반복하는 게 전부라고 겉핥기로만 알고 있었다.
하지만, 그것만으로는 팀을 일관되게 움직이게 만들기는 어려웠다.
최근 팀은, 아이템 기획 단계에서 상당히 난관을 겪고 있다.
우리는 시니어 세대를 위한 아이템을 찾고 있는데, 이런저런 아이디어가 나오고 있다.
그런데 이걸 '어떻게 실행해야 할지', '어떤 기준에 의해서 팀이 움직여야 하는지'에 대해 갈피를 잡지 못하고 있다.
사실, 그냥 '일단 해보자'식으로 시작해 볼 수 있다.
그런데, 우리 팀이 그렇게 하지 않는 이유는, 더 명확하게 문제를 정의하고 고객을 정하고 싶었기 때문이다.
늘, 벽에 부딪히는 지점은,
"그래서 이걸 왜 써?"
"이게 정말 필요해?"
"이걸 그들이 원해?"
"고객이 누군데?"
였다.
그래서 우리는 먼저,
고객이 불편하다고 느끼는 것
고객이 문제라고 생각하는 것
그들이 원하는 것
을 찾으려 노력했다.
'문제 정의'와 '고객'을 명확히 하는 것은 매우 중요하다.
그래서 우리 팀은 '그냥 일단 만들자'가 아니라, '우리가 만드는 것이 어떤 문제를 가진 어떤 사람들에게 어떤 가치를 줄 것인지'에 대해 더 깊게 고민하려 노력했다.
이 방향성은, '문제 정의'와 '고객'을 명확히 하려고 '노력'한다는 점에서, 나름 괜찮은 방향이라고 생각한다.
그렇다, '문제 정의'와 '고객'을 명확히 하는 것은 좋다.
그런데, 우리는 그것을 탐구하는 과정에 대해 무지했다.
이때, 우리의 사고 흐름은 이랬다.
시니어 세대를 위한 서비스를 만들자
-> 시니어 세대가 가진 문제가 무엇일까?
-> 인터넷을 찾아보자
-> 인터넷만으로는 잘 알 수 없으니, 시니어 세대에 해당하는 사람들을 인터뷰, 설문조사해 보자
-> 그런데, 이 사람들에게 무엇을 물어봐야 하지?
-> 그냥 전반적으로 일자리, 노후, 건강, 취미, 여가 등에 대해 어떻게 행동하는지 물어보고, 불편한 점이 있는지 물어보자
이 사고 흐름의 끝에서, 우리는 350명 이상의 시니어 세대에게 설문지를 돌렸고, 약 5명 정도의 시니어 세대와 각각 30~60분 동안의 인터뷰를 진행했다.
그런데, 우리는 인터뷰와 설문조사에서 명확한 문제나 타깃 고객을 찾을 힌트를 얻지 못했다.
얻은 것이 있다면,
5060 세대 내에서도, 사람들마다 페르소나가 워낙 다르다.
젊은 세대에 비해서, '비효율', '불편함'이라는 지점에서 상대적으로 무감각하다.
분명, 퇴직 후 일자리, 노후 등에 대해 고민하고 있다.
정도가 될 것이고, 오히려 설문조사에서 얻은 가장 큰 인사이트는, 5060 세대의 여성들의 전파력이 생각보다 엄청나다는 것이다.
설문지 사이트를 개시하고, 우리 팀은 부모님께 부탁하여, 주변 지인에게 홍보를 요청했는데, 6시간 정도만에 200명이 설문에 참여했다.
하지만, 이 모든 게 무색하게도, 우리는 해결할만한 '문제'나 그 문제를 가진 '고객'을 찾지 못했다.
뭔가, 인터뷰나 설문조사를 하고 나면, 새로운 인사이트를 얻을 수 있을 것이라 기대했는데, 결국 얻은 게 없다 보니, 팀 분위기가 다운되기도 했다.
어떻게 해야 할까?
'무엇'을 할지는 정했다. 우리는 '문제 정의'와 '타깃 고객'을 뾰족하게 정해야 한다.
그런데, 그것을 '어떻게'할지는 모른다.
솔직히 그 답은 아직도 잘 모른다.
하지만, 지금 방식대로면, 앞으로 나아갈 수가 없을 것 같았다.
그때 서점에서 집어든 책이 에릭 리스의 '린 스타트업'이었다.
뭘 어찌해야 할지 모르겠는 이 상황에서, 조금이라도 힌트를 얻을 수 있지 않을까 싶었다.
린 스타트업에서 가장 먼저 배운 것은 "똑바로 배워라"였다.
린 스타트업에서 중요하게 생각하는 것 중 하나는, '낭비'를 줄이는 것이다.
절대적으로 '필요한 것만' 집중적으로 검증한다.
그렇게 모자라디 모자란 스타트업의 에너지를 한곳에 집중시킨다.
이 첫 번째 방법이 바로, "똑바로 배우는 것"이다.
그전에, 우리 팀은 왜 이전 과정에서, '무엇을 제대로 배웠다'는 경험을 할 수 없었을까?
그 이유는 명확하다.
무엇을 배울지 명확하게 정하지 않았기 때문이다.
우리가 세운 액션 아이템이 잘못된 방향으로 갔다고 해도, 우리는 "그래도 뭐라도 배웠겠지"하며, 자기 위로밖에 할 수 없다. 설령 뭐라도 배웠을지라도, 진짜로 무엇을 배웠을지라도, 그것을 배우기 위해 낭비된 시간이 너무 많았다. 정확하게 우리가 배우고자 하는 것에 집중해서 빠르게 배울 수는 없었을까?
'학습', '경험'이라는 말로 실패를 변명하지 않는 방법은 무엇일까?
어떤 방향으로 가더라도, 의미를 부여해 보면, 무엇이라도 배웠다고 말하는 것은 어렵지 않다. 하지만, 그렇게 의미 없는 삽질을 반복하기에는 스타트업에게는 시간이 부족하다. 같은 시간 동안, 더 많은 것을, 더 중요한 것을 배울 수도 있었을 것이다.
"똑바로 배운다는 것"은 무엇일까?
린 스타트업에서는 '유효한 학습'이라는 단어를 통해, 똑바로 배우는 법을 설명한다.
인터뷰, 설문조사 그리고 시장조사가 유용한 도구이고, 반드시 필요한 과정이라는 것은 의심의 여지가 없다.
그런데, 이 또한 적재적소에 사용해야 한다.
아무것도 없는 상황, 즉, 누가 고객인지, 어떤 문제를 풀려고 하는지에 대한 고찰도 없는 상황에서 시행하는 인터뷰나 설문조사에서 무엇을 얻을 수 있을까?
적어도 우리 팀은 딱히 이렇다 할 것들을 얻지는 못했다.
고객은 자신이 무엇을 필요로 하는지 모른다.
설령, 자신이 불편하다고, 필요하다고 이야기하는 것들이 정말 그것이 불편하고, 필요한지에 대해서도 그들은 모른다.
우리는 이 것을 인정하지 못했던 것이 실수였다.
가장 명확한 것은 고객의 반응이다. 그들이 말로만 필요하다고, 불편하다고 하는 것을 믿는 것이 아니라, 우리는 고객이 정말 이 서비스를 '얼마나 자주 사용하는지', '얼마나 많은 돈을 지불하는지'와 같은 고객의 반응으로 검증해야 한다.
그렇게 고객의 반응을 통해 검증하려 하지 않으면서, 고객의 문제를 찾고 그들이 필요로 하는 것을 정의하려고 했던 것은, 성공적인 제품을 만드는 과정을 너무 쉽게 생각한, 아주 오만한 생각이었다.
뭐라도 보여줘야 한다.
적어도, 지표를 측정할 수 있어야 한다.
제품이 아니어도 상관없고, 고객이 정말 원한다는 객관적인 지표를 얻을 수 있는 방식으로 가설을 검증해야 한다.
마치 토스가 처음에 송금 서비스를 만들기도 전에, 랜딩 페이지 하나로 고객들의 니즈를 확인했던 것처럼, 명확히 지표로써 고객의 반응을 확인할 수 있는 방식을 취해야 한다.
"카카오톡, 밴드 사용하는 거 불편하지 않으세요?"
이런 질문은 쓸데가 없다.
"이런 서비스를 만들었는데, 당신이 원하는 것이라면 와서 써보세요."
라는 말에, 정말 그 서비스를 쓸 의지를 지표로 보여주는지를 확인해야 한다.
그리고 우리는 그 과정에서 무엇을 배울지 명확히 정해야 한다.
토스를 다시 예로 들자면,
"사람들이 간편 송금을 원할 것이다"는 가정이다.
그럼 이 가정을 검증하는 수단으로, 간편 송금을 할 수 있다고 홍보하는 렌딩 페이지를 만들어서, 그들이 정말 들어와서, 이 서비스를 사용하려 하는지 검증해 볼 수 있다.
그래야, 우리는 "사람들은 간편 송금을 원한다" 또는 "사람들은 간편 송금을 원하지 않는다"라는 정보를 얻고 배울 수 있다. 그럼 이때부터는 단순한 가정이 아니라, 검증된 사실이 된다.
고객 인터뷰도, 이럴 때 유효하다.
우리가 검증하고 싶은 무엇인가가 명확히 존재하고, 그것을 확인하기 위한 지표가 마련되었을 때, 우리가 배우고자 하는 것을 정확히 배울 수 있다.
이것이 바로 "유효한 학습"이다.
아래는 린스타트업에서의 에피소드 중 하나이다.
...
우리는 고객들이 새로 메신저를 다운로드해 사용법을 익히고, 새로 친구 목록을 만드는 것이 너무 어려우리라고 착각하고 있었다. 우리 고객들이 그 생각은 말도 안 된다고 알려주었다.
...
우리는 사람들이 소프트웨어를 어떻게 사용하는지에 관해 일종의 사고 모형을 세워놓고 있었는데, 안타깝게도 이런 소비자 조사를 여러 번 시행하면서 메신저 부가 기능 구상은 처음부터 잘못되어 있음을 깨닫게 되었다. 고객들은 메신저 부가 기능을 원하지 않았다. 그들은 독립된 메신저를 원하고 있었다. 새로 메신저를 다운로드하고, 사용법을 익히는 것을 어렵게 여기지 않았다.
...
결국은 몇 달간 내가 열심히 일한 결과물을 버려야만 했다. 나는 우리 서비스가 다른 메신저와 상호 호환이 될 수 있도록 정말 열심히 개발했다. 다른 메신저와 상호 호환성이 전략의 핵심이었기 때문이다. 원래 전략을 포기하기로 결정했을 때, 그동안 만든 코드 수천 줄을 그대로 버려야만 했다. 뭔가 배신당한 기분을 지울 수가 없었다. 나는 최신 소프트웨어 개발 방법론인 애자일 개발 방법론을 신봉하고 있었다. 애자일 개발 방법론은 제품 개발 과정 중에서 낭비를 최소화하는데 집중한다. 그런데도 나는 최대의 낭비를 만든 꼴이 되고 말았다. 결과적으로 아무고 원하지 않는 서비스를 만들었기 때문이다. 정말 우울했다.
...
그동안 쓴 시간과 에너지가 완전히 낭비되었다는 것을 깨달은 뒤에는 이런 생각까지 하게 되었다. '회사 입장에서는 내가 지난 6개월 동안 휴가를 받아서 해변에서 논 것과 아무 차이가 없지 않을까? 나는 정말 필요한 사람인가?'
...
그 당시에는 무언가를 '학습'했다고 스스로를 위로하니 기분이 나아졌다. 하지만 이 안도감은 오래가지 못했다. '지난 몇 달간 목표가 고객에 대한 통찰을 얻는 것이었다면, 과연 이렇게 오랜 시간을 써야만 했을까?', '우리가 썼던 에너지와 시간이 학습에 얼마나 기여했을까?', '새로운 기능을 추가하고, 버그를 잡는 데 그렇게 많은 시간을 쓰기 전에 이러한 학습을 할 수는 없었을까?'
...
어떤 시도도, 뭘 배웠다고 위로할 수 있다. 실제로 그렇기도 하니까.
그런데, 과연 그 방법이 그걸 배우는데 최선이었을까?
뭘 배울지 명확히 정한다면, 더 빨리, 정확하게 배울 수 있지 않았을까?
이게 린 스타트업에서 '유효한 학습'이 중요하다고 말하는 이유이다.
린 사고에서는, 팀이 하는 노력 중에서 '어떤 부분이 가치를 창출하는 부분'인지, '어떤 부분이 낭비'인지 판단하는 것이 가장 중요하다.
이걸 결정하는 기준으로는, '고객에게 주는 혜택, 즉 가치'를 최우선으로 둔다. 그 외에는 모두 낭비이다.
스타트업에서는 누가 고객인지, 고객이 가치 있다고 느끼는 부분이 어떤 것인지 모두 모르는 상태이다. 이런 불확실성 자체가 스타트업의 정의이기 때문이다.
그렇다면, '우리가 고객이라고 생각한 사람들이, 우리가 제공하려는 가치를 정말 가치 있다고 느끼는지' 검증하는데 초점이 맞춰줘야 한다.
그렇게 사고하면, 굳이 수많은 기능을 덧붙이지 않아도, 최소한의 기능만으로도 '가치를 창출하는 부분'을 검증할 수 있고, 나머지 부가 기능들은 '낭비'라는 것을 알 수 있다.
고객은 늘, 자신이 무엇을 원하는지 미리 알지 못하기 때문에, 고객에게 무언가를 해보게 하고, 그들의 행동을 측정하면서 시도하는 것이 습관이 되어야 한다. 그것에 의해서 방향과 전략이 설정되어야 한다. 이 검증을 위한 것이 아닌 나머지 단계는 모두 낭비다.
팀의 모든 에너지는 고객의 실제 필요를 파악하기 위한 실험 설계와 검증에 쏟아야 한다.
측정할 수 있는 정량적인 지표를 통해, 고객을 분석하고, 이를 기반으로 전략을 수정하며, 가설 설정과 검증을 반복해야 한다.
린 스타트업에서는 이렇게 말한다.
"스타트업은 거대한 실험임을 알아야 한다. '이 제품을 만들 수 있을까?' 하는 것이 주요 질문이 되어서는 안 된다. 현대 경제에서는 상상할 수 있는 제품은 거의 대부분 만들 수 있다. 오히려 더 중요한 질문은 '이 제품이 과연 만들 가치가 있는가?', '이 제품과 서비스를 기반으로 우리가 지속 가능한 사업을 만들 수 있는가?'가 되어야 한다."
그래서, 지금 우리 팀은 무엇을 해야 할까?
지금껏 우리 팀은 고객이 원하는 제품을 만들기 위해, 그들의 문제를 찾으려 노력했다.
그 일환으로, 그들이 어떤 문제를 겪고 있는지, 고객에게서 답을 찾으려 했다.
애초에 이것부터 잘못되었다.
그게 아니라, 우리가 정한 가설을 기반으로, 그것이 정말 문제인지 검증하려는 방식으로 접근했어야 했다.
다시 한번 이야기하자면, 고객들은 자신의 문제를 모른다.
우리는 '그들의 문제가 뭔지'와 '우리가 주려는 가치가 의미 있는지'를 알기 위해서는, 이것을 알 수 있는 상황을 만들고, 고객을 행동하게 만들어서 그 과정에서 발생하는 지표로 검증해야 한다.
그럼 일단 우리는, 검증하고자 하는 가설을 정해야 한다.
다행히, 일련의 인터뷰와 설문 과정에서, 시도해 볼 만한 여러 가설을 떠올릴 수 있었고, 이 중에서 '정말 고객에게 가치를 줄 수 있는 것이 있는지' 확인해 보는 과정을 거치면 된다.
이때, '유효한 학습'을 하기 위한, 실험 설계가 동반되어야 할 것이다.
이 글에서는 '유효한 학습'의 중요성을 이야기했는데, 아직 어떻게 '유효한 학습'을 할지에 대해 구체적으로 말하지 않았다.
추후에는 구체적으로 어떻게 해야 '유효한 학습'을 할 수 있는지, 어떻게 실험을 설계하고 검증해야 하는지에 대해 이야기해보려 한다.
사진: Unsplash의Andrew Neel