William Jung
William Jung님의 아티클
William Jung
아침에 인상깊은 뉴스레터를 읽어 짧게 번역해 공유해요. 이런 내용이 있었어요.
호기심 많고 장난스럽게 스타트업을 해야하는 이유
진지함과 진정성이 공존할 수 없는 이유
이기기 위해 플레이하지 말고, 게임을 계속하기 위한 게임을 해야하는 이유
1. 지나치게 진지한 사람과 보드게임을 하고 있다고 생각해보자
다들 이런 경험이 한 번씩은 있을 것 같습니다. 분명 즐기기 위한 놀이로 시작했지만 상대방은 어떻게든 나를 이기기 위해 노력하고 있는 상황이에요. 답답하고 짜증이 날 수 있습니다. 아마 상대방은 당장 이번 게임은 이기더라도 장기적으로 '나'라는 사람과 멀어지고 있다는 것은 모를거예요.
우리는 게임을 너무 진지하게 플레이할 때 그다지 재미를 느끼지 못합니다. 나중에 게임이 끝나면 오히려 다른 사람의 재미를 망치지는 않았을지 걱정하고요. 진지해지면 게임이 지루합니다.
그럼 이렇게 생각해볼 수 있습니다. 그냥 우리가 하는 모든 것은 그저 게임일 뿐이라는 사실을 잊지 않는 것입니다. 그리고 높은 확률로 이런 방식이 모든 사람에게 훨씬 더 재미있는 것 같습니다.
2. 유한한 게임은 진지하다
유한게임과 무한게임이라는 책을 쓴 James Carse는 우리가 인생에서 두 가지 종류의 게임을 한다고 말합니다.
유한한 게임 : 이기기 위해 플레이. 정치, 전쟁에 이르기까지 모든 플레이어들이 엄격한 규칙을 따르고, 경계를 늘 인식하며, 승자와 패자를 정해 공표하는 활동을 반복
무한한 게임 : 게임을 계속하기 위한 게임. 진정성있는 상호작용이 동력
만약 직장에서 승진을 노리고 있다고 가정해볼까요? 표면적으로 승진이라는 목표는 규칙이 있고, 승자와 패자가 있는 유한한 게임으로 보일 수 있습니다. 실제로 많은 사람들이 그렇게 접근하고 있고요.
하지만 승진을 단지 나의 '경력'이라는 무한한 게임의 일부라 생각하면 어떨까요? 우리가 승진을 목표로 하는 이유가 '이기는 것'이 아니라, 경력이라는 게임을 '계속하는' 것이 목표라면? 물론 모든 플레이에 최선을 다하되, 불필요한 부정적 감정에 매몰될 필요는 없는 것이죠.
연인관계도 마찬가지입니다. 연인관계에서 '이기는 것'에만 집중한다면 논쟁(유한한 게임)에서는 이길 수 있지만, 관계(무한한 게임)를 잃을 수도 있습니다.
결국 호기심 많고 장난스러운 접근이 긴장과 투쟁보다 효과적일 수 있습니다.
3. 진지함과 진정성이 양립할 수 없는 이유
1. 진지함은 종종 경직성과 융통성 없음을 동반합니다. 어떤 일을 너무 진지하게 받아들이면, 그 상황의 다양한 측면을 보지 못하고 특정 관점에 매몰될 수 있습니다. 반면 진정성은 열린 마음과 유연성을 필요로 합니다. 진정으로 상황에 임한다는 것은 모든 가능성을 열어두고 있음을 의미합니다.
2. 진지함은 결과에 대한 과도한 집착을 야기할 수 있습니다. 그래서 현재 순간의 경험과 과정의 가치를 간과하게 만듭니다. 반면 진정성은 현재에 충실하며, 과정 자체를 중요하게 여깁니다. 진정성 있게 행동한다는 것은 결과에 연연하지 않고 순간을 온전히 경험하는 것을 의미합니다.
3. 진지함은 종종 두려움, 불안, 스트레스와 연관됩니다. 어떤 일을 너무 진지하게 받아들이면, 실패의 두려움이나 완벽해야 한다는 압박감이 생길 수 있습니다. 반면 진정성은 자기 자신을 있는 그대로 받아들이고 표현하는 것과 관련이 있습니다. 이는 실수를 두려워하지 않고, 자신의 한계를 인정하며, 더 자유롭게 행동할 수 있게 합니다.
4. 진지함은 종종 외부의 기준과 기대에 부응하려는 노력과 연결됩니다. 이는 자신의 진정한 느낌과 생각을 억누르게 만들 수 있습니다. 반면 진정성은 내면의 목소리에 귀 기울이고 자신의 가치관에 따라 행동하는 것을 의미합니다. 이는 외부의 압력이나 기대와는 무관하게 자신을 표현하는 것을 포함합니다.
5. 마지막으로, 진지함은 즐거움과 유머를 배제합니다. 너무 진지한 태도는 상황의 가벼운 면이나 우스운 점을 놓치게 만듭니다. 반면 진정성은 모든 감정과 경험을 포용합니다. 진정성 있는 사람은 어려운 상황에서도 유머를 찾을 수 있으며, 이는 더 균형 잡힌 관점을 제공합니다.
이러한 이유로 진지함과 진정성은 양립하기 어려워요. 장기적인 관점에서 진지함을 잃는 것보다, 진정성을 잃는 것이 더 큰 손해로 다가오는 것 같아요 :)
William Jung
며칠 전 아주 인상깊은 뉴스레터를 읽어 공유해요. 바쁘신 분들을 위해 요약정리할까 했지만, 시간이 조금 걸리더라도 전문을 읽어보시면 좋을 것 같아 전문을 그대로 번역했습니다. 특히 평소에 의사결정 내리는 것에 어려움을 겪는 분들이 읽어보시면 좋을 것 같아요 :)
뛰어난 지성은 서로 반대되는 두 가지 생각을 동시에 머릿속에 품으면서도 여전히 기능할 수 있다
- F. Scott Fitzgerald, “The Crack-Up”, Esquire, 1936.
고등학교 때 이 인용구를 읽었는데, 언젠가부터 이것이 제 사고의 나침반이 되었습니다. 제 인생을 한 가지 표현으로 요약한다면 '끊임없는 생각의 수정'일 것 같네요. 내가 모르는 것을 모른다는 사실이 저를 두렵게 하는데요. 특히 이런 두려움은 저 스스로 옳다고 느끼거나, 무언가에 열광하며 몰입할 때 제 믿음과 생각을 철저히 검토하게 만듭니다.
이번 글에서는 복잡한 세상에서 명확하게 사고하는 10가지 방법에 대해 정리했습니다.
1. 모든 탐구는 호기심에서 시작한다.
학교는 우리가 자유롭게 상상하고 사고하지 못하게 만들었습니다. 해답부터 찾게 만들었죠. 하지만 생각의 역사는 결론을 내리려는 충동에 굴하지 않고 이해의 경계에서 춤을 췄던 사상가들을 끊임없이 조명하고 있습니다. 결론과 해답은 잠깐 동안 기분 좋게 만들어줄 수 있습니다. 그러나 사고의 진정한 즐거움은 우리의 호기심의 기쁨을 만끽하며 수년간 한 가지 질문을 곱씹을 때 생깁니다.
2. 어떤 주제에 대한 첫 번째 의견은 항상 불완전하다.
요즘 소셜 미디어 때문에 우리는 빠르게 의견을 말해야한다고 느낍니다. 그래야 대화에 참여하고 있다는 느낌이 들거든요. 하지만 무언가를 제대로 이해하려면, 때로는 조용히 기다리는 것도 방법입니다. 그러면 새로운 정보를 받아들일 수도 있고, 처음 생각과는 다른 결론에 도달할 수 있기 때문입니다.
물론 우리의 의견을 말하는 것도 중요하지만, 동시에 우리 생각이 틀릴 수도 있다는 것을 인정하는 것이 더 중요합니다. 이렇게 열린 마음을 갖는 것이 더 명확하게 생각하는 것에 도움이 되고요.
3. 일반화를 주의하라
잘못된 생각과 결함 있는 의견들은 한 가지 공통점이 있습니다. 대부분 복잡한 문제를 다루기에는 너무 추상적이고 광범위한 일반화라는 점입니다. 이런 광범위한 일반화는 순간적으로 흥미롭게 느껴질 수 있습니다. 하지만 정말 좋은 생각은 이렇게 물어봅니다.
"하지만 이런 경우는 어떻죠?"
이 질문을 통해 가능한 모든 경우를 생각해 볼 때까지 생각을 멈추지 않고, 최대한의 선택지를 확보하기 위해 노력하죠. 물론 100% 철저한 아이디어에 도달하는 것은 불가능하지만, 이런 연습을 통해 우리는 겉보기에 단순해 보이는 질문에서도 깊이와 복잡성을 인식해 좋은 의사결정을 내릴 수 있게 됩니다.
4. 첫 번째 독서는 항상 잘못 해석된다.
저는 책을 다시 읽을 때마다 첫 독서 때 얼마나 잘못 이해했는지에 항상 놀랍니다. 책에서 처음 통찰을 얻었을 때, 우리는 쉽게 우리의 지성을 자랑하고 첫인상에 근거한 결론을 내리곤 합니다. 하지만 나이와 경험은 빠르게 그러한 초기의 결론들을 반증하고, 더 미묘한 독해와 절제된 이해를 위한 공간을 만듭니다.
책에는 항상 첫 독서로는 파악할 수 없는 더 깊은 의미가 있습니다. 충분히 복잡한 책을 다룰 때는 항상 여러분이 잘못 읽었을 가능성을 염두에 두세요.
5. 혼란은 진전의 신호다
후기 현대 시대는 모호한 것을 혐오합니다. 우리는 모든 것이 처음부터 명확하고, 이해 가능하며, 알기 쉽기를 원합니다.
하지만 더 나은 사고는 항상 긴 혼란의 시기 이후에 나타납니다. 이 시기 동안 마음은 편안한 영역을 넘어 스스로를 확장하고 낯선 생각들을 받아들여야 합니다. 따라서 혼란을 피해야 할 것으로 보는 대신, 그것을 받아들이고 이 혼돈이 영원하지 않을 것이라고 믿으세요. 결국, 여러분의 마음이 증가하는 복잡성에 익숙해짐에 따라 새로운 사고의 질서가 열릴 것입니다.
6. 사람들과 논의하기 전까지 아이디어는 항상 미친 것처럼 보인다
마음은 자신이 그렇지 않다고 스스로를 설득하는 헛소리 제조기입니다. 우리가 스스로 먹여 살리는 생각들은 항상 다른 사람들의 의견보다 더 심오하고, 진실하며, 정의롭게 보입니다. 그리고 극단적인 경우, 우리의 생각을 수정할 수 있는 외부 의견을 거부할 때 광기가 나타납니다. 이를 극복하기 위해, 저는 제 아이디어를 친구들과 신뢰하는 사람들에게 털어놓아 제가 완전히 잘못된 길로 가고 있지 않은지 확인하는 것을 좋아합니다.
7. 때로는 당신이 진정으로 믿는 것이 무엇인지 모를 수도 있다
우리의 정보화 시대에서는 신념을 깊이 생각해보지 않고 빌려오기 쉽습니다. 더 덕망 있고, 정의롭고, 이타적으로 보이기 위해 어떤 생각을 믿는 척하는 것은 자기 성찰을 회피하는 가장 빠른 방법입니다.
때로는 긴 자기 성찰 기간 후에, 우리가 실제로 구식이고, 시대에 뒤떨어지고, 아주 어리석은 것들에 공감한다는 것을 발견하면 충격을 받을 수 있습니다. 이를 인정하는 것이 거짓된 미덕의 가면 아래에서 잘못된 생각들이 자라나게 두는 대신, 그것들을 수정하는 첫 걸음입니다.
8. 자기 의로움을 느낄 때는 한 걸음 물러서라
우리가 무언가나 누군가에게 화가 났을 때, 결코 우리 자신을 향해 손가락질하지 않는다는 점을 주목하세요. 우리는 상대방이 잘못했고 우리가 의심의 여지없이 옳다는 이유를 만드는 데 너무 바쁩니다. 성숙한 반응은 우리가 잘못했을 수도 있다고 고려하는 것입니다. 여기서 당신이 옳은지 그른지는 중요하지 않습니다. 요점은 열린 마음을 유지하면서 반대되는 관점에 익숙해지는 것이며, 한 걸음 물러서는 것이 큰 도움이 됩니다.
9. 단순히 논점을 증명하기 위해 토론에 들어가지 마라
토론은 재미있지만, 이를 깊이 생각하는 것과 혼동하기 쉽습니다. 옳다는 것을 증명하기 위해 아무런 결론도 없는 논쟁에 휘말리기 쉽습니다. 반면에 신중한 숙고는 자기 모순을 일으키고, 혼란스러워하고, 실수를 하게 만들지만, 결국 실용적인 아이디어에 도달하도록 돕습니다.
10. 항상 이론을 실제에 근거시켜라
학자들은 종종 추상적인 세계에 살면서 실제 생활의 결과가 부족한 것에 화를 내는 함정에 빠집니다. 어떤 이론들은 인상적이고 정교하지만, 우리의 일상생활과 전혀 관련이 없기 때문에 읽는 것이 완전한 시간 낭비일 수 있습니다.
그러나 좋은 이론은 우리의 일상생활에 대한 인식을 직접적으로 바꾸고 우리의 행동에 영향을 줍니다. 기술적인 세부사항에 매몰되는 대신, 이론이 여러분의 삶의 측면에 어떤 영향을 미치는지 자문하고 그것을 경험에 근거시키려고 노력하세요. 이상적으로, 이론과 실제는 서로를 보완해야 합니다. 왜냐하면 둘 다 극단으로 치우치면 어리석은 결론으로 이어지는 경향이 있기 때문입니다.
William Jung
텍스트를 입력하고 tab을 입력하면, 해당 플랫폼/제품에서 원하는 것을 즉시 검색할 수 있어요 ㅎㅎ 저는 유튜브, 레딧, gpt, 네이버, twitter, perplexity를 가장 많이 사용하는 것 같네요!ㅋㅋ
William Jung
개발자에서 창업가로의 전환은 쉬운 일이 아닙니다. 특히 직장을 다니다가 불확실성이 큰 스타트업 씬에 뛰어드는 일은 더 어려울 수 있고요. 이번 인터뷰에서는 낮에는 개발자이면서 밤에는 창업가인 Qvil님과 Ciel님을 만나 창업여정에 대한 이야기를 들어봤습니다.
두 분은 메이커 스프린트 Light Track에 참여해 유통기한이 임박한 상품을 저렴한 가격으로 소비자들에게 제공하는 ‘라스트박스’의 제품개발을 하셨어요. 프로그램 기간동안 작성하신 글은 아래 링크에서 확인하실 수 있어요.
라스트박스에 대해 자세히 알고 싶다면?
사이드 프로젝트 이전의 이야기가 궁금해요.
(Qvil님)
생각해보면 제가 대학교 때 졸업작품으로 처음 앱을 개발했던 경험이 임팩트가 컸던 것 같아요. 이때부터 개발이라는 행위에 재미를 느끼기 시작했고요. 제품을 만드는 일은 마치 게임같이 재미있었고, 재미있는 것을 쫓다보니 어느새 스타트업 씬에 발을 들여 개발자가 되어있었어요. 그리고 단순히 개발자에서 그치지 않고 여러 도메인을 오가며 다양한 경험을 쌓았습니다.
그렇게 이 일 저 일 다 해보니까 이런 생각이 들더라고요.
“나는 최종적으로 어디로 갈 것인가? 그리고 어떻게 거기까지 갈 것인가?”
결과적으로 제 최종 목표는 행복인데요. 사람은 생존같은 기본욕구가 충족되면 자아실현 같은 더 고차원적인 욕구를 충족하고 싶어하는데 저는 자아실현을 위해 하고 싶은 일을 쫓다보니 제품 만드는 것을 좋아한다는 것을 알게 되었어요. 그리고 제 행복을 위해 여러가지를 시도하다보니 많은 사람들을 만나게 되었고, 그렇게 팀이 만들어졌어요. Ciel님도 이때 만났고요.
창업을 게임에 비유한 것이 재미있어요.
그렇게 생각한 이유가 있나요?
(Qvil님)
일단 제가 개발자다 보니, 프로그래밍 자체가 재미있었어요. 코드를 작성하면 UI가 나오고, 무언가 결과물이 나오기도 하니까 그 과정이 즐거웠고요.
그럼 내가 왜 개발을 하지? 하는 질문이 들었는데요. 결국 프로덕트를 만들기 위해 개발자가 있다는 것이고, 그럼 프로덕트가 또 왜 있지? 생각하면 문제를 해결하기 위해 존재한다는 결론이 나더라고요. 그래서 이 일련의 과정을 거치는 것에서 점점 재미를 느끼기 시작했어요.
만약 제가 프로그래밍 자체만 재미있어 했다면 코딩 사이트에서 코딩 챌린지만 계속 했을 것 같네요 ㅎㅎ
근데 그게 아니라 퀘스트 깨듯이 문제를 해결해가는 과정이니까 게임처럼 느껴졌어요.
지금까지 사이드로 제품을 만들면서 가장 어려웠던 점이 있나요?
// 그 식당에서 식당을 큐레이션 했던 모습
(Ciel님)
이전에 ‘그 식당’이라는 프로젝트를 했었어요. 사람들이 SNS나 여러 플랫폼에 나온 식당정보를 알고 싶어할 것이다’는 가설로 제품을 만들었습니다. 쉽게 말하면 맛집 정보를 알려주는 제품인데요, 기존에는 인플루언서, 유튜브 등에서 추천한 맛집을 모아둔 곳이 있기는 했는데, 저희가 생각했던 수준은 아니었어요.
특히 맛집을 찾는 분들을 고객으로 만들기 위해 틱톡에서 숏폼 영상을 만들어 150만 조회수를 달성한 적도 있었지만, 결국 사람들이 문제에 공감을 하고 제품을 사용해야하는데 초기고객을 만들어내는 과정이 정말 어려웠어요. 여러 가설을 세워보고, 실행도 해봤더니 결과가 처참했고요.
실패원인이 무엇이라고 생각하시나요?
// 인플루언서가 방문한 식당들의 정보를 한 번에 볼 수 있었다
(Qvil님)
우선 제품적으로는 고객이 와우할 수 있을만한 ‘핵심기능’이 없었던 것 같아요. 예를 들면, 진짜 맛집 검색이 잘되거나, 개인화가 정말 잘 돼서 지역기반으로 가장 인기있는 음식점을 소개해준다던가. 하지만 저희는 이런 킬링 피처가 없었고, 확보한 데이터도 많지 않아 어려웠다는 생각이에요.
두 번째로는 약해지는 동기부여인데요. 프로젝트를 진행하면서 식당 데이터가 더 있으면 더 큰 가치를 전달할 수 있는 것 같아 일일이 맛집을 리스트업해보기도 했어요. 하지만 저희가 인력도 적고, 본업이 아니다보니 투자할 수 있는 물리적 시간이 적은데, 반복적인 일을 계속해서 하다보니 동기부여가 점점 떨어졌습니다. 이때 무조건 시간을 붓기만 한다고 좋은 제품이 나오지는 않는다는 것을 배웠고요.
결과적으로 각 팀원들이 프로젝트에 투자하는 시간과 열정이 모두 다르다는 것을 느꼈어요. 기여하는 정도에 차이가 생기기 시작한 것이죠. 만약, 문제정의와 가설을 세워서 빠르게 검증하는 싸이클을 만들고, 유의미한 레슨런을 만들어냈다면 훨씬 더 즐겁게 일할 수 있을 것 같아요.
또 다른 이유가 있을까요?
(Ciel님)
팀 구성에도 문제가 있었던 것 같아요.
이전의 팀은 전부 개발자 위주였는데요, 그렇다보니 문제를 해결하고 돈 버는 것보다 개발 효율화에 대한 이야기를 훨씬 많이 하더라고요. 어느 순간부터는 저도 그러고 있었고요. 아무래도 회사에서는 비즈니스 팀이 따로 있으니까 고려하지 않아도 괜찮았는데, 지금은 모두가 비즈니스와 제품 고민을 동시에 해야했다보니 그게 어려웠습니다.
개발자분들의 사고방식은 어떻게 바뀐다고 생각하세요?
(Qvil님)
다소 부정적일 수 있지만, 저는 정말 어렵다고 생각해요. 일단 제가 바뀌는 것도 어려운 것 같거든요. 진부하지만, 가장 좋은 방법은 본인이 깨닫는 방법인 것 같아요. 생각해보면 그래도 저는 어떻게든 가설을 만들고, 그걸 검증하기 위해 제품 만들고, 고객 만나서 부딪히다보니 알게 되는 것이 많았어요.
그래서 이제는 개발자의 자아가 강한 분들한테는 제품개발 사이클을 경험할 수 있는 시간을 주며 개발자 사고에서 벗어나 유저의 생각을 이해할 수 있도록 돕고 있어요. 처음 한 달은 개발자지만 코드를 단 1줄도 작성하지 않는 것이죠. 대신 문제정의를 같이 하고 시장조사도 하게 됩니다.
이때, 개발자의 자아가 강한 분들은 지금 하는 일을 일이라고 느끼지 않고, 노는 것처럼 느끼는 분들도 있어요. 이런 분들은 진성 개발자 이므로 이 분들이 잘할 수 있는 일을 하셔야된다고 생각해요.
반대로 이런 일에 흥미를 느끼는 개발자분들은 초기멤버가 되는 것 같아요. 제가 그걸 직접 경험하기도 했고요.
개발자 출신 창업가 Qvil님이 유저 인터뷰를 하며 배운 것
만약 처음으로 돌아간다면 반복하고 싶지 않은 실수가 있을까요?
(Qvil님)
‘의미없는 일을 하지 말걸’하는 생각이 많이 들어요. 일론 머스크가 사업하는 방법을 5가지 스텝으로 한 것을 보았는데, 가장 첫번째 스텝으로 강조하는 것이 ‘불필요한 것을 최소화해라’예요. 진짜 지금 해야되는 것이 무엇인지 집중하고, 의미있는 것을 만들 것 같아요.
(Ciel님)
저는 창업을 도전하는 다른 분들과 더 교류를 하지 못한 것이 아쉬워요. 그런 분들과 좀더 소통하면서 그들이 이미 겪었던 문제, 그들이 나보다 먼저 고민했던 것 등에 대한 이야기를 나눠서 저희 서비스를 더 완벽하게 만들 것 같아요.
Ciel님의 회고글
(Qvil님)
Ciel님 말 듣고 생각난 것이 있어요. 몇 년 전에 스타트업 대표님 몇 분과 술을 마시는 자리에서 제가 만들어보려는 아이템에 대한 설명을 드린 적이 있었는데요. 그때 대표님들께서 여러 조언들을 주셨어요. 하지만 들은대로 하지 않았고요. 어떻게 보면 직접 경험해보지 않으면 어떤 조언 들어도 와닿지 않는 것 같기도 해요. 그래도 이전으로 돌아간다면 최대한 다른 분들의 조언을 참고해서 의사결정을 다시 내려보고 싶어요.
디스콰이엇 팀에게 프로덕트 리뷰를 맡기고 싶다면 링크를 통해 연락주세요!
William Jung
스코디가 150개의 B2B 리드를 얻을 때까지 겪었던 시행착오
단 2명으로 서비스 출시 3개월만에 150개 이상의 리드를 확보하고 시드투자까지 유치한 팀이 있습니다. 바로 제로원리퍼블릭입니다. 현재 규리님과 용현님은 사용 중인 SaaS들을 효율적으로 관리하는 것은 돕는 스코디를 만들고 계신데요, 지난 메이커 스프린트 1기에 참여해 3주동안 36개의 B2B 리드를 수집하셨습니다.
두 분의 케미가 너무 재미있다보니 1시간 반 동안 다양한 주제의 대화를 나눴어요 ㅎㅎ
이번 글에서는 아래의 주제를 다룰 예정이에요.
유능한 코파운더를 만나기 위해 한 달 동안 시도한 방법
제품없이 세일즈하고, 팬을 만드는 방법
고객의 문제를 이해하기 위해 경영실무 팀에서 일한 이야기
처음으로 돌아간다면 절대 반복하고 싶지 않은 실수
규리님을 영입하기 위해 한 달 동안 설득하셨다고요?
(용현님)
규리님은 전 직장에서 채용을 위해 수집하던 인재풀 데이터베이스와 각종 SNS에서 처음 알게 되었어요. 비록 나이는 어리셨지만, 대단한 성과를 내신 것으로 유명하셨거든요.
그렇게 시간이 지나 저는 창업을 하게 되었고, 네 번의 팀 빌딩이 무너져 너무 힘든 상황일 때 규리님을 처음 만나게 되었어요. 그런데 규리님은 제가 풀고 싶은 문제에 대해 적극적으로 공감하셨고요. 그렇게 몇 번 이야기를 나누다보니 규리님과 함께하고 싶다는 생각이 들었습니다.
보통 규리님처럼 유능하신 분들은 평상 시에도 수시로 합류제안을 받기 때문에 그 와중에도 눈에 띄어야하는데요. 그래서 저는 규리님이 제안하는 해결방법을 최대한 빠르게 구현해 다시 규리님께 들고가서 보여줬습니다. 무식한 방법일 수 있지만 제가 가장 잘할 수 있는 방법이었어요.
실제로 당시의 스코디는 복잡한 인증절차를 통과하지 못해 사용하고 있는 SaaS 계정 정보를 취합하는 기능을 구현할 수 없는 상황이었는데요. 규리님이 기업 이메일 내용에서 필요한 비용정보를 추출해 데이터화 시키는 방법(파싱)을 제안해주셨어요. 저는 전혀 생각하지 못했던 방법이라 이 말을 듣자마자 즉시 해당 기능을 개발해 다음 약속을 잡았죠. 아무래도 빠르게 기능을 구현해 보여주었다보니 규리님도 놀라셨습니다. 이런 빠른 실행력 덕분에 규리님께 긍정적인 인상을 남길 수 있었던 것 같아요.
그럼 규리님은 어떤 이유로 스코디 합류를 결정하셨어요?
(규리님)
용현님이 저를 설득하신지 거의 한 달이 되었을 때 쯤, 새벽까지 술을 마시면서 제품에 대한 이야기를 나눈 날이 있었어요. 결국 가게 마감시간까지 대화를 나누다 마지막으로 할 말이 없는지 물어봤고요. 그랬더니 용현님이 끈기하나는 자신 있으니까 함께 해보자는 말씀을 하셨어요.
이전까지는 용현님이 창업을 통해 이룬 성과, 허슬했던 경험 등을 어필하며 저를 설득하셨는데, 오히려 그런 부분은 크게 와닿지 않았습니다. 그런데 끈기에 대한 이야기가 한 달 동안 들었던 이야기 중 가장 진실된 이야기라는 생각이 들었고, 가장 진정성 있게 다가왔습니다. 그래서 합류하게 되었어요.
(용현님)
사실 저도 어디서 얻어걸릴지 모르겠지만, 초기멤버로 일해본 경험이 많으니까 설득력이 있겠다 싶은 정보는 다 던져봤어요. 뭐라도 걸려라는 식으로요 ㅎㅎ
재미있는 스토리네요.
특히 코파운더를 구할 때 내가 고민하는 문제에 대한 조언을 구하면서
핏을 맞춰보는 과정은 다른 분들이 참고해볼 수도 있을 것 같아요.
제품없이 초기 고객을 만들 수 있었던 이야기도 궁금해요.
(규리님)
저는 선의를 가질 때 좋은 관계가 만들어진다고 믿는데요, 그래서 아래의 질문을 시작으로 다양한 정보를 파악합니다. 핵심은 우리 제품으로 이 사람의 문제를 해결하지 못한다면, 어떻게든 도와준다는 마음가짐이에요.
근황과 요즘 가장 고민하는 것이 무엇인지 묻기
우리가 풀려는 문제를 실제로 겪고 있는지 확인하기
겪고 있다면, 문제가 어떻게 해결되면 좋을지 제안하도록 유도하기
이때, '사실 저희가 바로 그런 제품을 만들고 있어요'라며 주의를 집중시키기
이때부터 고객이 상상하는 이상적인 미래를 우리가 구현하고 있다는 느낌을 주기
이렇게 5단계를 거치고나면 우리의 제품수준이 낮거나 제품이 없더라도 팀에 대한 믿음이 생길 수 있어요. 이때 핵심은 상대방을 온전히 이해하는 것인데요, 그럼 이후에 비슷한 문제를 겪는 사람을 만날 때마다 우리가 핵심적으로 풀어야하는 문제를 더 구체적으로 이해할 수 있게 되어요.
그리고 B2B SaaS라면 이런 방식을 통해 획득한 고객을 잃지 않고 끝까지 끌고 오는 것이 관건인데요, 대부분의 초기 고객은 볼품 없는 제품을 참아가면서 사용하는 사람들이기 때문에 주기를 가지고 연락을 드렸습니다. 만약 제품 업데이트가 아직 완료되지 못했다면 안부인사라도 전했어요. 실제로 현재 고객사 중에서 제품이 없던 초기부터 저희 팀을 알고 계셨던 분들이 스코디를 사용하는 경우도 많이 계시고요.
초기 제품에 대한 부정적 피드백은 없었나요?
(용현님)
사실 초기 아이템 선정이 확실해지기 전까지는 유저들의 부정적 피드백에 일희일비하는 것을 경계해야한다고 생각해요.
이전에는 모바일 버전의 스코디를 세일즈 할 때 보여드린 적이 있었는데요. 그럼 정적이 흐르거나, 부정적인 피드백을 분들이 있었습니다. 저는 이 자체가 큰 문제라고 생각하지는 않아요. 진짜 고통이 큰 고객은 부정적 피드백을 주더라도 호기심을 가지거든요. 지금 당장은 MVP에 대한 부정적인 피드백을 줬지만, 아마 그 사람은 다음 날 똑같은 문제를 겪게 될 거예요. 그럼 핵심은 부정적 피드백에 대한 예민한 반응이 아니라, 그 사람들이 이탈하지 않도록 관계를 유지하며 꾸준히 세일즈하는 것이죠.
그럼 문제에 대한 이해도를 높이는게 중요할 것 같아요.
그래서 다른 팀의 경영실무 팀에서 일했던 적도 있다고 들었어요.
(용현님)
맞아요. 전 직장 동료가 창업을 했는데, 마침 경영지원 담당자 채용을 염두하고 있었어요. ICP라고 생각하는 직무였지만 저희 둘 다 경영지원으로 커리어를 쌓은 경험이 없다보니 고객 이해를 잘 못하고 있는게 아닐까 싶던 참이었죠. 그럼에도 불구하고, 당장 제품과 고객개발에 집중해야 하지 않을까 고민하던 찰나, 규리님께서도 제 의견에 동의해주셔서 실제 경영실무 팀에 들어가서 두 달 가량 일을 하게 되었어요.
(규리님)
직접 경험해보니, 런웨이 관리를 위해 카드와 계좌내역에서 비용을 일일이 집계하고 분류하는 일, 세금계산서 발행, 미수금 확인 등 잔업처럼 보이지만 정말 많은 일들이 있었어요. 고객들을 직접 만나 인터뷰할 때 그들이 겪는 문제와 고민을 이해한 상태에서 만나고 대화할 수 있었다는 점에서 정말 도움이 되었고요. 실제로 고객 인터뷰에서 '어쩜 그렇게 세세하게 잘 알고 계시냐'는 이야기를 들을 때마다, 이 일화를 설명드리니 놀라시는 분들도 여럿 있더라고요. '굳이'의 합을 만들어 내기 위해 간절한 마음으로 노력했어요.
처음으로 돌아간다면 반복하고 싶지 않은 실수가 있나요?
(규리님) - 대표처럼 생각하되, 대표처럼 행동하지 않기
대표가 해야하는 일이라 생각하고 해서 하지 않았던 일들이 '대표로서 해야하는 일들을 제품 우선순위에 밀려 놓치고 있다'는 것을 알고 제가 이 일들을 시작하며 상황이 나아지기 시작했어요. 이때 배운 것은 '대표처럼 생각하되, 대표처럼 행동하지 않기'입니다. 자주 소통하며 대표처럼 생각하는 것은 방향성을 항상 맞출 수 있어 좋지만, 코파운더인 제가 대표를 인정하지 않고 대표처럼 행동하기 시작하면 다른 사람도 대표를 인정해주지 않을 거예요. 내외부적으로 위험해질 수 있는 것이죠. 코파운더는 대표가 리더십과 방향성을 잃지 않도록 조력자처럼 존재하는 사람이라 생각해요.
(용현님) - 초기일수록 대표에게 심리적 안정감을 주는 것도 코파운더고, 불안감을 주는 것도 코파운더
초기 단계에는 많은 논쟁이 생기게 되는데, 지금 생각해보면 두 가지 유형으로 분류할 수 있어요.
공통된 이해를 가지기 위한 논쟁
업무방법/방법론에 대한 논쟁
이때, 공통된 이해를 가지기 위한 논쟁은 정말 필요하다고 생각합니다. 반대로 후자는 영양가 있는 논쟁이 아니고요. 그런데 보통 두 가지 유형의 갈등이 공존할 수 밖에 없고, 이때 대표가 스스로의 리더십 스타일까지 모르면 상황이 나아지기 어려운 것 같아요.
예를 들어, 저는 명확하게 잘하는 것(개발) 말고는 다 못 하는 성향인데요. 그래서 위임이 중요한 사람이라는 것을 스스로 인지하고 있고, 그래서 규리님이 잘할 수 있는 일들을 적극적으로 위임하는 편이에요.
그런데 한편으로, 대표의 불안감을 만드는 것도 코파운더일 수 있겠다는 생각도 들어요. 대표도 당연히 사람인지라, 완벽할 수 없다는 것을 모두가 알지만, 완벽을 기대하게 되거든요. 그러다보면 실망도 클 수 있고요. 그래서 최대한 대표가 코파운더에게 투명하게 정보와 상태를 공유하면서 상황에 대한 인지를 맞추는 것이 중요한 것 같아요.
앞으로의 계획
앞으로 한 달 동안은 제품개발에 매진할 생각이에요. 기존에는 직접 적어가며 관리하던 구독 서비스의 비용, 아이디/비밀번호, 추가된 멤버 계정을 전부 SaaS 형태로 관리할 수 있게 스코디를 발전시키고 있거든요. 카드정보나 이메일 정보와 같이 데이터 소스를 기준으로 SaaS 관리를 하면서 발생되는 한계지점을 뚫고, 각 구독서비스별 설정 탭에 있는 모든 기능을 스코디 내에서 동작하게 만드는 것을 개발하고 있어요.
그래서 프론트엔드 개발자 채용을 하고 있어요. 함께 강하게 몰입할 수 있고, 비즈니스 속도에 맞춰 빠르게 제품을 만들어갈 수 있는 분을 찾고 있어요. 저희는 Typescript, NextJS, Recoil. Tailwind 등을 사용하고 있고요. 성향적으로는 개발자체를 즐기는 분을 선호합니다. 오픈소스 활동 이력이 있는 분이라면 더욱 좋아요.
저희가 작성했던 메이커로그를 읽어보신 뒤 가슴이 뛰었다면, 연차 상관없이 official@01republic.io로 간단한 이력서를 보내주세요. 직접 만나뵙고 진솔한 이야기들을 나눠보고 싶습니다.
디스콰이엇 팀에게 프로덕트 리뷰를 맡기고 싶다면 링크를 통해 연락주세요!
William Jung
// 베를린
나는 항상 안정감을 필요로 했지만, 자연스러움이 더 중요하다는 것을 배웠다.
안정감만을 추구하면 과정보다는 결과에 집중하기 때문에, 결과를 안정적으로 만드는 데만 신경 쓰게 된다.
그래서 가끔은 잘못된 의사결정을 내릴 수도 있다. 안정적인 결과를 얻기 위해 무리하게 일을 진행하거나, 비합리적인 선택을 할 위험이 있기 때문이다.
반면, 자연스러움을 추구하면 결과보다 과정에 집중하게 된다. 과정에서의 자연스러움은 스트레스와 긴장을 줄이고 창의성을 높이며, 더 나은 결정을 내릴 수 있도록 도와준다.
결과적으로, 자연스러운 행동들이 모여 결국 안정감을 만들어내기 때문에, 오히려 더 건강하고 지속 가능한 안정감을 얻을 수 있다.
William Jung
수민님이 Day 1부터 매출을 만들면서 SaaS 개발을 시작한 방법
평균적으로 B2B SaaS를 한 번 판매하기까지 평균 84일이 걸립니다. 하지만 초기 스타트업의 SaaS는 개발력과 신뢰도 모두 부족하기 때문에 더 많은 시간이 소요되고요. 그래서 SEO 컨텐츠, 웨비나 등을 통해 초기 리드를 많이 확보하며 충분한 신뢰도를 확보하는 것에 집중합니다.
그런데 메이커 스프린트에 1기에 참여하신 @최수민 님은 미리 만들어진 UI와 기능을 조합해서 원하는 CRM/ERP를 만들 수 있는 프레임워크인 토니를 만들며 이런 시도를 하셨어요.
우선, 시장에 진입하기 전에 직접 고객이 되어 업계 사람들이 고객에게 어떤 제안을 하는지 파악했어요. 이 과정에서 제품개발의 범위까지 정할 수 있었어요.
그 다음 외주를 반복하며 완성된 제품이 없어도 고객을 만나고 매출까지 발생시켰어요.
만약 고객의 IT 친숙도가 낮아서 세일즈에 어려움을 겪는다면 세 가지를 기억하세요. 고객이 가장 두려워하는 문제를 이해하기, 전문가의 인용문구, 최소 2~3개의 실제사례. 수민님은 이 세 가지로 세일즈 전환율을 이전대비 60% 개선했어요.
이외에도 B2B SaaS를 만드는 초기 팀이 참고할 수 있는 몇 가지 GTM 팁을 공유해주셨는데요, 이번 글을 통해 다 정리해봤어요 :)
패션 스타트업 창업 → 외주사 창업 → 토스 입사
// 대학교 때 창업한 패션 스타트업
대학교 때가 첫 창업이었어요. 패션을 좋아해서 패션 스타트업을 창업했습니다. 그렇게 약 2년 반 동안 회사를 운영하면서 월 매출을 2억까지 달성하고 시드투자까지 받았지만, 당시의 무신시와 29CM가 엄청난 프로모션으로 많은 고객을 획득하면서 사업을 접게 되었어요.
이렇게 첫 창업을 정리하고 대학으로 돌아왔더니 그동안 이수하지 못한 18학점이 남아있었어요. 그런데 1년동안 학교만 다니기는 너무 아쉬워서 외주사를 차렸어요. 초기 클라이언트는 이전 창업을 하면서 만났던 팀 중, 개발력이 부족한 팀을 타겟해 고객으로 모셔올 수 있었고요. 그렇게 1년동안 정말 빠르게 성장했습니다. 여유가 생긴 뒤부터는 아지트도 만들었어요.
그러다 하루는 이런 생각이 들었습니다.
“나는 나이가 들수록 일하기 싫을텐데 외주는 딱 일한만큼만 보상이 돌아온다.
같은 시간을 일해도 더 많은 보상을 받기 위해서는 내 가치를 높여야겠다“
이때 나의 가치를 빠르게 높이기 위해서는 뛰어난 사람들이 많은 환경에 있어야한다고 생각했고, 그래서 그런 사람들이 모여있다고 생각되는 토스에 입사했는데요, 결론부터 말하면 1년만에 퇴사했습니다.
저는 일에 대한 결과물이 제 것이 아니거나, 충분한 통제권이 주어지지 않을 때 몰입이 어렵고 쉽게 지루함을 느끼는 사람이에요. 그래서 토스에서의 일상도 나쁘지 않았지만, 저는 저의 것을 만들 때 가장 행복하다는 것을 느꼈어요. 그래서 더 많은 시간을 낭비하기 전에 퇴사를 하게 되었습니다.
토니를 시작한 계기
// 외주를 진행했던 아지트
퇴사한 뒤로는 미디어아트를 했는데요, 그래도 돈은 벌어야하니 병렬적으로 외주를 다시 시작했어요. 그런데 외주 문의 중에서 CRM 의뢰가 정말 많다는 것을 발견했어요. 그래서 이야기를 들어보면 그냥 엑셀을 그대로 개발해달라는 수준의 요구였고요. 사실 스프레드시트나 노션을 사용하면 되는데 왜 굳이 이 돈 들여서 CRM을 개발하려고 하는지 궁금해서 150만원을 주면 노션으로 만들어주겠다는 제안도 해봤어요. 그런데 아래의 이유를 들며 거절하셨습니다.
보안에 대한 걱정 때문에 사내망을 활용하고 싶음
노션/스프레드시트를 사용할 경우, 이후에 원하는 기능을 자유롭게 추가할 수 없음
CRM을 사용하는 사람들의 IT 친숙도가 떨어지기 때문에 외부 제품을 사용하면 러닝커브가 높음. 그래서 자체 CRM과 메뉴얼을 만들어 주입식 교육을 할 수 있어야 함
그리고 이렇게 IT 친숙도가 낮고, 사내망을 활용해 소프트웨어를 관리하고 싶어하는 회사가 많다는 것을 발견하고, 이들을 위한 SaaS를 만들어야겠다는 생각이 들었어요.
직접 외주사의 고객이 되어 업계 분위기 파악하기
그렇게 제품개발을 시작하려고 했는데, 어디서부터 시작해야할지 감이 안왔어요. 어떤 기능까지 만들어야하는지, IT 친숙도가 낮은 고객과는 어떻게 소통해야하는지 등의 고민이 있었죠.
그래서 직접 외주사의 고객이 되어보는 것이 이 업계의 분위기를 빠르게 익히는 방법이라 생각했어요. 그렇게 직접 여러 외주사를 만나 대화를 나누고 견적서를 받아보면서 시장에 대한 감을 잡았습니다. 이 과정에서 크게 3가지를 배울 수 있었어요.
시장에 이미 존재하는 솔루션과 그것들의 장단점을 파악하기 좋습니다.
고객 입장에서 매력적인 제안과 매력적이지 않은 제안을 구분할 수 있게 되었습니다.
업계에서 뛰어난 사람이 일하는 방식을 알 수 있습니다. 소통방식, 신뢰를 주는 방식 등.
외주를 반복하며 고객과 매출을 동시에 잡기
그렇게 기본적인 Baseline을 빠르게 파악한 다음에는 시장 평균 가격의 80%~90% 선에서 외주를 반복하면서 고객, 매출, 제품개발을 동시에 진행했어요. 이때, 빠른 이터레이션을 돌리는 것에 초점을 맞춰 적정 수준의 외주를 진행할 필요가 있어요.
마찬가지로 외주를 반복하면서 3가지 레슨런이 있었어요.
고객을 만나는 시점을 앞당길 수 있어요. SaaS는 특성상 제품이 개발되지 않았거나, 고객이 필요로하는 기능이 없는 경우 세일즈가 어려워지는데요. 외주는 구현자유도가 높기 때문에 다양한 고객을 당장 만족시킬 수 있어요. 게다가 돈을 낼 준비가 된 유저들이기 때문에 핵심적인 문제가 무엇인지 바로 말해줍니다.
병렬적으로 제품개발도 가능합니다. 현재의 토니는 라이브러리인데요, 외주개발을 진행하면서 토니를 활용해 제품개발을 진행하고, 토니에 없는 기능이 필요하면 그때그때 개발해 공급하고 있습니다. 이때 새로 개발한 것의 활용가치가 높다고 판단되면 토니에 추가하는 식으로 제품을 고도화시키고 있어요.
마지막으로 방향성에 대한 감을 잡을 수 있어요. 저는 처음에 버블같은 노코드 SaaS를 만들어야한다는 생각이 들었는데요, 타겟 고객을 만나 이야기를 나누다보니 SaaS를 당장 만들 필요가 없다는 쪽으로 생각이 기울면서 방향성을 잡게 되었어요.
반대로 외주를 반복할 때의 단점도 있는데요. 장단점을 모두 이해한 상태에서 외주를 진행해야 함정에 빠지지 않을 수 있어요. 외주의 단점은 아래와 같아요.
요구사항을 잘 조율하지 못하면 고객의 지엽적인 요구사항을 대응하는데 시간을 빼앗길 수 있어요.
한 번에 대응할 수 있는 고객 수가 적어요. 외주 특성 상 고객 한 명 한 명에 매우 깊게 관여하며 소통/개발을 하다보니 시간소모가 커요. 그래서 저는 지금 최대 3팀까지만 수주하고 있어요.
맥락 전환이 잦아 혼란스러울 수 있어요. 제품개발과 외주 프로젝트를 병행하다보니 집중력이 분산되는 것이죠.
IT 친숙도가 낮은 고객에게 어필해야하는 정보 3가지
그리고 IT 친숙도가 낮은 고객에게 세일즈할 때는 최대한 그 사람이 가지고 있는 의문을 명쾌하게 해결해주는 것이 중요한데요. 특히 저는 CRM이다보니 고객사가 공통적으로 개인정보와 보안에 대한 우려를 가장 많이 했어요. 그래서 처음에는 그냥 잘 준수되어 있다. DB 암호화도 해서 괜찮다는 식으로 대응했는데, 결국 이렇게 소통한 건은 계약이 성사되지 않았어요.
그래서 컨설팅펌에 다니는 친구에게 어떻게 대응하면 좋을지 물어봤고, 아래와 같은 답변을 주었어요.
“고객이 특히 어떤 분야에 대해 구체적으로 물어보면 A4용지 2~3장의 분량으로 답변을 해야한다”
이 말을 듣고 세일즈와 개인정보법령에 대한 공부를 한 다음 세일즈 덱에 아래의 내용을 업데이트했습니다.
개인정보 / 보안 관련 법령의 구조를 쉽게 풀어서 정리
전문가의 인용문구
2~3개의 실제사례
// 개인정보보안과 관련한 불안을 해결하기 위해 개선한 세일즈덱
실제로 새로 업데이트한 세일즈 방식을 적용했을 때 고객 전환율이 약 60% 개선되었어요. 그래서 요즘에는 고객사를 만나기 전에 미리 궁금해하는 부분을 물어보고, 이걸 명쾌하게 해결해줄 수 있는 자료를 만들어가고 있습니다.
처음으로 돌아가면 반복하고 싶지 않은 실수
저는 처음부터 토니를 SaaS로 개발하려 했어요. 그래서 시간낭비를 꽤 했고요. 고객들의 지불용의는 내가 만들어주는 제품이지, 내 SaaS가 아니라는 것을 뒤늦게 깨달았어요.
그래서 요새는 외주용역으로 수주하고, 고객사에는 토니를 사용한다는 말도 안합니다. 이렇게 하니 문제 해결에 집중할 수 있어 세일즈시 전달력/설득력이 체감되게 높아졌어요. BEP를 맞춘 채 사업할 수 있어 심리적 부담이 적은 것도 장점이고요!
요새 비효율을 해결하기 위해 버티컬 SaaS를 만드는 메이커 분들이 많은 것으로 알고 있는데요, 한 번쯤은 저단가 외주를 해보면서 방향성에 대한 고민을 해보시면 좋겠어요.
앞으로의 계획
현재 거의 1인 개발로 외주와 제품개발을 진행하고 있는데요, 그래서 제가 어느 수준에서 과부하가 오는지 알기 위해 최대한 많은 의뢰를 받고 있습니다. 그리고 이 지점을 파악해서 재무적 지표를 기획한 다음 어떻게 비즈니스를 스케일할 수 있을지 계획하려 해요.
팀원채용도 고민을 하고 있는데요. 외주사를 운영하면서 배운 것은, 팀이 여유로울 때 팀원을 채용하면 R&R을 정하기 어렵다는 것이에요. 오히려 팀이 급박한 상황에 처했을 때 채용해야 명확한 R&R을 부여할 수 있는 것 같습니다.
정리하면, 현재는 고객을 모으는 것에 집중하고 있어요. 더 많은 고객과 이야기 나누며 마켓에 대한 이해도과 제품의 수준을 높이고 싶습니다.
안전하고 효율적인 CRM/ERP를 만들고 싶은 분은 수민님께 연락해보세요 :)
디스콰이엇 팀에게 프로덕트 리뷰를 맡기고 싶다면 링크를 통해 연락주세요!
William Jung
통역사가 애플뮤직을 거쳐 AI 웹툰 SaaS를 만들기까지
여러분은 어쩌다 창업을 하게 되었나요? 이번 메이커 스프린트 1기에 참여하신 @Danny Lee 님은 통역가, 애플뮤직 리드, 행사기획자 등을 거쳐 지금은 프롬프트를 작성하면 웹툰을 생성해주는 WeToon을 만들고 계신데요.
우선, 미국에서 통역사를 그만두고 애플뮤직에 합류하셨습니다.
그리고 애플에서는 팀 리드가 되어 직접 팀빌딩까지 담당하면서 많은 성과를 만드셨고요.
더 많은 책임과 권한을 가진 환경에서 일하기 위해 한국에 왔고, 지금의 WeToon을 하고 계세요.
그래서 오늘은 AI 제품을 만들기까지 어떤 도전을 하셨는지, 평소에 새로운 것을 빠르게 배우기 위해 어떤 방법을 사용하시는지 여쭤봤습니다.
WeToon은 어떤 제품이고, 만드는 과정에서 배운 점은 무엇인가요?
WeToon은 쉽고 빠르게 4컷 웹툰을 생성해주는 AI SaaS에요. 저는 팀에서 개발 이외의 모든 일을 맡고 있는데요. 이 과정에서 굉장히 많은 시행착오가 있었어요.
우선 타겟 설정에 어려움이 있었어요. 초기에는 소상공인 분들이 WeToon에 많은 관심을 보이셨어요. 요즘 자영업하시는 분들은 SNS 등에서 고객을 확보하기 위해 웹툰을 활용하더라고요.
하지만 메타 광고를 통해 핵심타겟을 검증하는 과정에서 WeToon에 대한 관심이 소상공인 분들보다는 기획자분들이 더 많다는 것을 확인했습니다. 그래서 저희는 마케터가 없는 초기 기획자가 앱이나 웹서비스를 홍보할 수 있는 웹툰을 생성하기 위해 프롬프트를 조정했어요.
그런데 핵심타겟이 웹툰을 제작할 때 말풍선을 수정하는 과정에서 높은 이탈률을 보였어요. 유저를 만나보니 어떤 멘트를 작성해야 메세지를 잘 전달할 수 있을지 모르겠다고 했어요. 전문성이 없으면 하기 어려운 과정이 있었던 것이죠. 그래서 건당 10만원을 받고 시나리오 프롬프트를 생성하면 그 이후에 말풍선을 생성하고 어울리는 멘트를 대신 만들어주기로 했어요. 그렇게 10만원 프로젝트를 시작하게 되었죠.
10만원 프로젝트에 대해 더 설명해주실 수 있나요?
10만원에 말풍선과 어울리는 멘트를 대신 만들어주겠다고 제안했지만 문의하는 분이 없었어요. 가격이 문제일까 싶어 10만원에서 5천원까지 비용을 낮춰도 마찬가지였고요.
그래서 원인을 찾기 위해 제품을 사용한 유저들을 일일이 연락해 피드백을 받았고요. 이때까지만 해도 ‘아, 그럼 시나리오를 적는게 어렵나보다’ 싶었습니다. 실제로 시나리오를 작성하는 구간에서도 이탈율이 높았으니까요.
하지만 결론은 아래와 같았어요.
그림체를 원하는대로 바꿀 수 없다면 사용하지 않을 것 같아요.
고객과 이야기를 나눠보니 이미 WeToon으로 웹툰을 완성한 분들이 이탈한 이유는 그림체였어요. 예를 들면, B2B 홍보웹툰과 인스타툰을 원하시는 분들이 굉장히 많았는데요, 현재는 유저가 원하는대로 그림체를 수정할 수 없다보니 관심을 가지고 들어온 분들은 많았지만 재방문을 하지는 않으신거죠.
하지만 반대로 생각하면 고객이 저희 제품에서 가장 핵심으로 느끼는 가치가 어떤 것인지 알 수 있어서 정말 유의미했어요.
WeToon 이전에는 통역사였다고 들었어요
저는 원래 미국에서 대학교와 대학원을 나왔어요. 스탠포드 대학병원과 USCIS(미 이민국)에서 통역사로 일하기도 했고요. 그런데 하면할수록 2가지 이유로 통역사라는 일이 저랑 맞지 않다는 것을 느꼈어요.
먼저 통역사라는 직업의 특성인데요. 한 번은 대학원 교수님께서 이런 말씀을 하셨어요.
“통역사는 철저한 조연이다. 절대 주인공보다 눈에띄면 안되고, 생각을 하거나 의견을 덧붙여도 안된다.
옷은 항상 무채색으로 입어야 한다.”
하지만 전 언제나 주인공이 되어 인정받는 것을 즐겼어요. 유니셰프를 알리기 위해 대회를 주최하거나, 축구대회를 기획해서 진행한 적도 있고요. 이런 성향을 가진 제가 통역사라는 직업을 가졌을 때 스트레스를 많이 받을 것 같았어요.
그리고 통역사는 다양한 도메인의 배경지식을 익히기 위해 매주 주간지를 읽어야 하는데요. 다른 통역사들은 특이한 단어/표현 등에 밑줄을 긋고 익혔어요. 하지만 저는 주간지를 보면 볼수록 비즈니스 기회가 더 많이 보였어요.
그래서 비즈니스를 배우기 위해 학교를 졸업하고 애플뮤직에서 커리어를 시작하게 되었어요.
애플뮤직에서 팀 리드를 맡고도 충족하지 못한 자유
애플 뮤직에서는 K-POP의 메타데이터를 관리하는 일을 했어요. 처음 합류했을 때는 다른 분들보다 더 빠르게 온보딩을 하고 주어진 업무를 빠르게 수행했습니다. 그런데 갑자기 팀 리드가 넷플릭스로 이직을 하게 되었고, 저보다 연차가 높은 분들은 퍼포먼스가 부족해 해고되는 상황이 생겼어요.
그래서 어쩌다보니 제가 리드를 맡게 되었어요. 그때부터 평소 같았으면 절대 들어가지 못했을 미팅에도 참여하게 되었고, 신입사원 채용도 담당했어요. 이렇게 전보다 많은 권한이 주어지다보니 욕심이 나더라고요. 그래서 더 많은 업무를 가져와 수행했어요. 실제로 현재 한국의 애플뮤직에 제가 만든 규정들이 많이 적용되어있는데요, 이것도 당시의 제가 수행한 업무였어요.
좋았던 애플에서의 기억도 2가지 이유 때문에 어려웠어요.
우선 비자 문제로 더 이상 일하는 것이 어려웠어요. 두 번째로, 생각보다 의사결정 과정에서의 제약이 많아 답답했어요. 예를 들면, 한 가지 변화를 만들기 위해 많은 결재를 받아했거나, 제가 뽑은 신입사원을 위에서 해고하는 과정에서 소통이 원활하게 일어나지 않는 등의 문제가 있었어요.
그래서 애플에서의 성공 경험을 토대로 더 많은 책임과 권한을 가진 환경에서 일하고 싶다는 생각이 들었고, 비자 문제가 겹치면서 이참에 한국에서 창업을 하기로 마음 먹었어요.
창업 → 취업 → 창업
그렇게 한국에 들어오자마자 연구소에서 일하고 있던 친구 한 명을 설득해 창업을 했어요. 결론부터 말씀드리면, 약 6개월 정도 프로젝트를 진행하다 중단하게 됐어요. 우선 그 친구는 연구원이라 창업과는 잘 맞지 않는다는 결론을 내렸고, 저는 한국에 대해 아는 것이 없어 지금 당장 한국에서 사업을 하는게 어려웠어요.
그래서 일단 한국에서 회사를 다니며 회사가 돌아가는 구조를 익히는 것에 집중하기로 했어요. 그렇게 국제 행사를 대행하는 국제행사기획사에서 일을 시작했고요. 이때도 꽤 좋은 성과를 많이 냈는데요. BBC에 계신 분을 연사로 모시기 위해 영국에 가서 5~6시간동안 담배피러 나온 BBC 직원들과 친분을 쌓으며 세일즈하기도 했고, 프랑스에서 연사를 섭외하기 위해 또 날아가 내부직원들과 친분을 쌓으며 결국 연사섭외에 성공하기도 했어요.
그렇게 꽤 즐겁게 회사생활을 하다 한 번은 저희가 대행했던 스타트업 경진대회에서 발표하는 대학생들을 보게 되었어요. 엄청 반짝반짝하더라고요. 그리고 제 목적을 다시 상기했어요.
“아, 나는 창업을 하는게 목표였지”
그리고 그때 창업 부트캠프 ‘창’의 광고를 보게 되었고, 바로 합류해서 지금의 WeToon을 만들고 있는 재관님을 만나게 되었어요.
앞으로의 계획
최근에 기획자를 타겟해 광고를 진행하고 있었는데, 교육자 분들이 예상보다 더 많이 유입되고, WeToon으로 퀄리티 높은 결과물을 만든다는 것을 발견했어요.
교육자는 복잡한 개념을 학생들에게 쉽게 풀어서 전달해야하는데, 웹툰이 이런 부분을 잘 해결했다는 생각이었고요. 그래서 앞으로 교육자를 핵심타겟으로 제품을 고도화해볼 생각이에요. 그리고 병렬적으로 그림체 설정에 대한 기능을 고도화하면서 장기적으로는 웹툰으로 PR을 원하는 기획자, 자영업자 분들로 확장할 예정이에요.
William Jung
AI 모델의 발전이 워낙 빠르다보니 분기마다 애용하는 AI 모델이 바뀌는 것 같아요. 이번에는 Claude가 그 주인공인데요. 이번에 발표된 Claude 3.5 Sonnet, Artiact, Project 등의 기능으로 인해 특히 개발자들이 GPT 구독을 취소하고 Claude로 넘어갔습니다.
어떤 포인트에서 Claude가 개발자에게 좋은 인상을 남길 수 있었던 것일까요? 그리고 어떻게 활용해볼 수 있을까요? 이번 글에서는 아래의 내용을 다룰 예정이에요.
이번 글 요약
일을 하는 과정에서 발생하는 문제는 기능적 문제와 감정적 문제가 있어요. 이때, 기능적 문제를 최대한 AI에게 위임하고 감정적 문제에 시간을 더 사용해볼 수 있어요.
pre-commit 훅을 활용한 코드리뷰 경험 개선해본 경험을 소개해요.
특히 Claude는 XML 태그로 프롬프트 정확도 높이는 방법을 추천해요
일을 하다보면 인지하지 못하지만 반복적으로 사용하는 시간이 있어요. 대표적으로 아래와 같아요.
이렇게 표로 정리하면 간단하지만, 대부분의 사람들이 결과물을 만들어내는 과정에서 많은 어려움과 스트레스를 받곤 합니다. 왜냐하면 대부분 감정적인 문제가 결합되어 상황을 더 복잡하게 만들기 때문이에요.
개발자의 업무로 예를 들어보면 아래와 같을 수 있어요.
코드리뷰
기능적 문제 — 리뷰를 기다리면서 개발일정이 지연됨. 이해하기 어려운 코드를 해석하는 시간이 소요
감정적 문제 — 내 의견을 효과적으로 전달하는 것이 어렵고, 반대로 피드백을 받을 때 방어기재가 작동
리팩토링
기능적 문제 — 리팩토링과 새로운 기능개발 중 어디에 얼만큼의 시간을 써야할지 모르겠음
감정적 문제 — 리팩토링의 필요성을 동료 또는 상급자에게 설득하기 어려움
이처럼 하나의 문제를 기능적 문제와 감정적 문제로 나눠볼 수 있는데요. 이 과정에서 AI를 활용하면 기능적 문제에 들이는 비용을 최대한 줄이고, 감정적 문제에 더 많은 시간을 사용해볼 수 있어요. 예를 들면, AI로 피드백 또는 의견을 설득력있게 정리하거나, 공격적인 피드백을 건설적이고 긍정적인 톤으로 바꿔볼 수도 있죠.
그래서 오늘은 개발자가 가장 많이 반복하는 일 중 하나인, 코드리뷰 경험을 개선한 과정을 적어봤어요.
문제상황
디스콰이엇은 오퍼레이터도 필요한 경우에 코딩을 하는데요. 아무래도 전업 개발자는 아니다보니 작성한 코드가 적합한지, 나의 수정사항으로 발생할 수 있는 리스크는 없을지 우려가 돼요. 그런데 마침 Claude 3.5 Sonnet이 공개되었고, 코드 생성뿐만 아니라 리팩토링, 의도파악에서 강점을 보인다는 것을 보고 코드리뷰 과정에서 활용했어요.
솔루션 — pre-commit 훅을 활용한 코드리뷰 개선
Claude를 활용해 개선한 코드리뷰 경험은 아래의 순서로 진행했어요.
코드리뷰를 원할 때 명령어를 입력합니다.
그럼 코드베이스에서 변경된 파일을 감지하고, 이 파일의 내용을 Claude에게 전송합니다.
Claude는 코드를 분석하고, 변경사항에 의한 잠재적인 문제, 개선사항, 최적화 방안 등을 제안합니다.
Claude의 피드백을 확인하고, 필요한 경우 코드를 수정하고 커밋을 진행합니다.
방법
1. .git/hooks/에 pre-commit.manual 생성
.git 폴더가 숨겨져있을 경우 숨겨짐 해제
언어는 자율적으로 변경.
#!/bin/bash
# 프로젝트의 루트 디렉토리로 이동
cd "$(git rev-parse --show-toplevel)"
# .env.local 파일에서 환경 변수 로드
source ./.env.local
# 수정된 JavaScript 파일들을 찾음
files=$(git diff --cached --name-only --diff-filter=ACM | grep ".js$")
for file in $files
do
# 파일의 전체 내용을 가져옴
full_content=$(cat "$file")
# 변경된 내용만 가져옴
changed_content=$(git diff --cached "$file" | grep '^[+-]' | grep -v '^[-+][-+][-+]' | sed 's/^[+-]//')
if [ -n "$changed_content" ]; then
# Claude API에 보낼 JSON 페이로드 생성
json_payload=$(jq -n \
--arg full_content "$full_content" \
--arg changed_content "$changed_content" \
--arg prompt "다음 JavaScript 파일의 전체 내용과 변경 사항을 검토해주세요. 변경 사항으로 인해 생길 수 있는 문제점과 개선 방안을 제안해주세요:" \
'{ "model": "claude-3-5-sonnet-20240620", "max_tokens": 1024, "messages": [ {"role": "user", "content": ($prompt + "\n\n전체 파일 내용:\n" + $full_content + "\n\n변경된 내용:\n" + $changed_content)} ] }')
# Claude API 호출
if ! response=$(curl -s -w "\n%{http_code}" https://api.anthropic.com/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: $CLAUDE_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d "$json_payload")
then
echo "에러: API 요청 실패"
exit 1
fi
# HTTP 상태 코드와 응답 본문 분리
http_code=$(echo "$response" | tail -n1)
body=$(echo "$response" | sed '$d')
if [ "$http_code" -ne 200 ]; then
echo "에러: API가 상태 코드 $http_code를 반환했습니다"
echo "$body"
exit 1
fi
# JSON 응답에서 리뷰 내용 추출
review_content=$(echo "$body" | jq -r '.content[0].text')
echo "Claude의 $file 파일에 대한 리뷰:"
echo "$review_content"
# 사용자에게 커밋 진행 여부 확인
read -p "커밋을 진행하시겠습니까? (y/n) " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
exit 1
fi
else
echo "에러: $file 파일의 내용이 비어있습니다"
exit 1
fi
done
exit 0이후 스크립트에 실행권한을 부여합니다.
chmod +x .git/hooks/pre-commit.manual2. 수동실행 스크립트 생성
#!/bin/bash
# 수동으로 pre-commit 훅 실행
.git/hooks/pre-commit.manual마찬가지로 실행권한 부여
chmod +x run-pre-commit.sh3. npm 스크립트 추가
package.json 파일의 scripts 섹션에 아래의 내용 추가
{ "scripts": { "precommit": "./run-pre-commit.sh" } }
4. 환경변수 설정
.env.local 파일을 생성하고 Claude API 키 설정
CLAUDE_API_KEY="your_API_key"
5. 사용하기
git add .
npm run precommit결과
테스트를 위해 내부적으로 개발해 사용하는 SaaS의 코드에서 변수 하나를 수정한 뒤, precommit을 진행해봤어요. 그리고 아래와 같은 결과과 나왔는데요. 터미널에서 결과물을 확인해야하는만큼 가독성이 중요하지만, 오퍼레이터인 제 입장에서 이해가 어려운 표현이 있어 그래서 무엇을 해야하는지 감이 오지 않았어요.
그래서 프롬프트 개선해봤습니다.
Claude's review for pages/index.js:
변경된 내용을 검토해보면 다음과 같은 문제점과 개선 방안을 제안할 수 있습니다:
1. 문제점: 불필요한 state 추가
- `utmhahaha`와 `setUtmhahaaha`가 추가되었지만 실제로 사용되지 않습니다.
개선 방안: 사용하지 않는 state는 제거하는 것이 좋습니다.
2. 문제점: 오타
- `setUtmhahaaha`에 오타가 있습니다 ('hahaha'가 아닌 'hahaaha').
개선 방안: 오타를 수정하거나, 불필요한 경우 제거합니다.
3. 문제점: 중복된 닫는 중괄호
- 파일 끝에 중복된 닫는 중괄호(`}}`)가 있습니다.
개선 방안: 불필요한 중괄호를 제거합니다.
4. 개선 사항: UTM 파라미터 관리
- UTM 파라미터들(source, medium, campaign, content)을 개별 state로 관리하고 있습니다. 이를 하나의 객체로 관리하면 코드를 더 간결하게 만들 수 있습니다.
개선 방안:
```javascript
const [utmParams, setUtmParams] = useState({
source: "",
medium: "",
campaign: "",
content: ""
});
```
5. 개선 사항: URL 검증
- URL 입력에 대한 유효성 검사가 없습니다.
개선 방안: URL 형식을 검증하는 함수를 추가하고, 잘못된 URL 형식에 대한 에러 처리를 추가합니다.
6. 개선 사항: 에러 처리
- 현재 콘솔에만 에러를 출력하고 있습니다.
개선 방안: 사용자에게 에러 메시지를 표시하는 UI 요소를 추가합니다.
7. 개선 사항: 로딩 상태 표시
- 로딩 중일 때 단순히 "Loading..."이라고만 표시하고 있습니다.
개선 방안: 로딩 스피너나 프로그레스 바 등을 사용하여 사용자 경험을 개선합니다.
8. 개선 사항: 복사 기능 피드백
- URL을 복사할 때 사용자에게 피드백을 주지 않고 있습니다.
개선 방안: 복사 성공 시 토스트 메시지나 알림을 표시합니다.
이러한 개선사항들을 적용하면 코드의 품질과 사용자 경험을 향상시킬 수 있을 것입니다.Claude 프롬프트 정확도를 높이는 방법
Claude는 공식 문서에서도 XML 태그를 활용해 AI의 집중력을 높이라고 말합니다. 장점은, HTML처럼 사전에 정의된 태그만 사용할 필요가 없다보니 맥락에 맞게 태그를 구성할 수 있었어요. 그리고 XML 태그 단위로 관리하다보니 프롬프트를 빠르게 조정하고 싶을 때 직관적인 수정이 가능했고요.
그래서 다음과 같이 변경했습니다.
[기존 프롬프트]
다음 JavaScript 파일의 전체 내용과 변경 사항을 검토해주세요.[개선한 프롬프트]
<요청>
다음 JavaScript 파일의 전체 내용과 변경 사항을 검토해주세요.
<배경>
- 이 코드는 팀 내부적으로 사용하는 SaaS이고, 한 사람이 관리하기 때문에 리팩토링 자주 하지 않아도 됨
- 코드리뷰는 코드리뷰어가 코드를 이해하고 있는지 확인하는 것이 목적이며, 리팩토링은 필요에 따라 진행함
- 프로그래밍에 능숙하지 않은 사람도 리뷰할 수 있기 때문에 최대한 쉽고, 구체적이고, 상세하게 리뷰해주세요
<응답>
아래의 구조로 답할 것. 단, 변경된 사항, 잠재적 위험, 개선방안, 변경된 사항.. 순서가 아니라 변경된 사항/잠재적 위험/개선방안을 묶어서 한 번에 답변할 것
- 변경된 사항 : <설명>
- 잠재적 위험 : <설명>
- 개선방안 : <설명>
프롬프트를 조정하고 나니, 눈에 띄는 개선이 있었어요. 개선된 결과는 아래에서 볼 수 있어요.
변경사항에 기반해 개발자가 의도했던 것을 추론하고 더 나은 수정방안을 제안
코드중복과 확장성을 높일 수 있는 방안 제안 (리팩토링 아이디어)
제품 내 UI의 목적과 사용법을 더 명확히 전달할 수 있는 UX/UI 제안
개발자들이 자주 놓칠 수 있는 에러처리를 짚어줌
비개발자도 이해할 수 있도록 쉽게 설명
결과적으로 코드를 수정하고, 개발자 분들에게 리뷰를 요청하면 피드백까지 30~40분 정도 걸렸던 과정을 15초로 줄일 수 있었어요. 이 과정이 반복되며 복리로 시간이 절약되면 아껴진 시간에는 더 많은 생산을 하거나, 창의적인 사고, 사람 간의 문제를 해결하기 위해 시간을 써볼 수 있을 것 같습니다.
[개선된 결과]
- 변경된 사항:
코드에 두 가지 새로운 state 변수가 추가되었습니다:
1. `utmContent`와 `setUtmContent`: UTM 콘텐츠 파라미터를 위한 state입니다.
2. `utmhahaha`와 `setUtmhahaaha`: 목적이 불분명한 state 변수가 추가되었습니다.
- 잠재적 위험:
1. `utmhahaha` state 변수는 실제로 사용되지 않고 있어 불필요한 코드입니다. 이는 코드의 가독성을 떨어뜨리고 혼란을 줄 수 있습니다.
2. `utmContent`는 추가되었지만, 이를 처리하는 로직이 완전히 구현되지 않았을 수 있습니다. 예를 들어, UTM 파라미터를 추출하고 설정하는 함수들에서 `utmContent`를 고려하지 않을 경우 기능이 제대로 동작하지 않을 수 있습니다.
- 개선방안:
a) 불필요한 상태 제거:
만약 `utmhaha`가 필요하지 않다면, 관련 코드를 모두 제거하세요.
b) 의도한 기능 추가:
만약 새로운 UTM 파라미터를 추가하려는 의도였다면:
- 상태 변수의 이름을 의미 있게 변경하세요 (예: `utmTerm`).
- input 필드의 placeholder를 적절히 수정하세요 (예: "UTM Term").
- `insertUTMParams` 함수에 새 파라미터 처리 로직을 추가하세요:
```javascript
if (utmTerm) {
params.set("utm_term", utmTerm);
}
```
c) 코드 구조 개선:
- UTM 파라미터들을 객체로 관리하여 코드 중복을 줄이고 확장성을 높일 수 있습니다:
```javascript
const [utmParams, setUtmParams] = useState({
source: "",
medium: "",
campaign: "",
content: "",
term: ""
});
```
- 이를 통해 input 필드 생성과 `insertUTMParams` 함수를 더 간결하게 만들 수 있습니다.
d) 사용자 경험 개선:
- 새로운 UTM 파라미터 필드를 추가할 때, 사용자에게 그 목적과 사용법을 명확히 설명하는 레이블이나 툴팁을 제공하세요.
e) 에러 처리:
- `insertUTMParams` 함수에 잘못된 URL이 입력될 경우를 대비한 에러 처리를 추가하세요.일이 안되는 이유를 이해하기
이 과정의 본질은 ‘변경사항 중심으로 컨텐츠를 만드는 것’인데요. PR 메세지, 문서화, 빌딩 인 퍼블릭 등 코드변화로 인해 만들어야했던 다양한 컨텐츠를 AI의 도움을 받아 만들 수 있어요. 특히 AI가 구조적 사고와 의도파악을 잘하기 때문에 내가 이러한 분야에 자신이 없다면 충분히 활용해볼 수도 있고요.
실제로 많은 개발자 분들이 지난 설문에서 업무 시, 코파일럿을 활용하신다고 답변하시기도 했습니다.
하지만 대부분의 ‘일이 안되는 이유’는 기능적 문제가 아니라, 감정적 문제에서 온다는 것을 동시에 이해해야 해요. 그렇기 때문에 AI를 활용한 생산량이 높아진다면 동시에 확보된 시간에는 팀을 동기부여하고, 복잡한 관계를 관리하고, 자주 소통하며 서로의 상태를 잘 이해하는 역량이 경쟁력이 되는 셈입니다. 그리고 이건 개발자뿐만 아니라 모든 직군에 해당할 수 있어요.
AI로 생산성을 높인 팁을 댓글에 공유해주세요!
어떤 업무에서 AI의 도움을 받고 있나요?
AI로 시간이 확보된다면, 확보된 시간에는 무엇에 더 집중해보고 싶나요?
기타 Claude 활용 팁
Claude101 — https://beginswithai.com/how-to-use-claude-for-coding/
Sonnet 3.5 Coding System Prompt (v2 with explainer) —https://www.reddit.com/r/ClaudeAI/comments/1e39tvj/sonnet_35_coding_system_prompt_v2_with_explainer/
Something Claude 3.5 taught me — https://www.reddit.com/r/ClaudeAI/comments/1eavhvh/something_claude_35_taught_me/
William Jung
지난 4주동안 메이커들의 제품개발에 도움을 줄 수 있는 컨텐츠를 매주 1개씩 발행했다. 이런 액션을 한 이유는 '제품 중심 커뮤니티'라는 디스콰이엇의 브랜딩을 강화하고, 더 많은 MAU를 확보하기 위해서다. 그래서 두 가지 목표를 위해 어떤 유형의 컨텐츠를 작성해야할지 정하기 위해 MVP 컨텐츠를 4개 발행해봤다.
그리고 4주동안 배운 것을 정리했다.
1. 정량적 성과
MAU 25% 상승
조회수 총합 16,692회
컨텐츠 만족도 평균 4.29점
2. 배운 것
▶ 독자에 대한 이해
제품을 소비하는 사람보다 직접 만드는 사람을 타겟했을 때 조회수, 레퍼럴, 댓글/업보트가 더 높다. 왜냐하면 제품을 직접 만드는 사람은 일반적으로 더 높은 몰입도를 가지고 있는데, 그래서 관련된 정보를 찾고 학습하려는 욕구가 더 강해 적극적으로 참여하는 경향이 있다.
실제로 이번 4주동안 작성한 컨텐츠 중에 Cursor와 Marblism을 큐레이션할 때는 이들이 집착하며 발전시키고 있는 하나의 기능/UX를 조명했는데, 이 두 컨텐츠는 도합 약 12,000회의 조회수를 기록했다. 그리고 그렇지 않은 컨텐츠와 비교했을 때 약 2배가량 조회수에 차이가 있었다.
또한 이들은 정보를 소비하는 것에서 그치지 않고 추가적인 액션을 할 에너지를 가지고 있기 때문에 다음의 액션을 넛징해볼 수 있다.
컨텐츠를 공유하고 싶게 만드는 장치 삽입하기 - 희소성 있는 인사이트, 매력적인 비주얼 등
특정 주제에 대한 질문 던지기 - A와 B중 어떤 것이 나을까요?, OO에 대한 경험을 공유해주실 분?
그래서 앞으로는 제품을 만드는 사람들을 위해 두 가지를 전달할 예정이다.
특정 제품/창업가가 집착하는 하나의 UX
특정 제품의 희소성있는 GTM 시행착오
▶ 컨텐츠 작성 프로세스 - Write, Measure, Learn
일반적으로 컨텐츠의 성과는 조회수로 판단하게 되는데, 대부분 조회수를 그래프로 나타내면 우상향과 우하향이 반복되는 파도치는 그래프가 만들어진다. 때문에 결과에 대한 불확실성에 높아 주기적인 컨텐츠 발행은 부담을 줄 수 있다.
결과를 통제할 수 없다면, 과정을 통제하는 것이 방법이 될 수 있다. 이번 4주동안 나는 별도의 프로세스 없이 글을 작성했는데, 그래서 매주 발행에 대한 부담을 가지고 있었다. 글은 매주 수요일에 5~6시간에 걸쳐 한 번에 작성했으나, 나머지 시간에는 주제를 선정하고 불안함을 느끼는 것 때문에 스트레스를 받았다.
이에 대해서는 꾸준히 글을 발행하는 해외 뉴스레터의 컨텐츠 작성 프로세스를 참고했는데, 크게 아래의 순서를 매주 반복하고 있었다.
매일 컨텐츠를 소비하고, 아이디어 포착하기 - DB에 저장하기
취합된 아이디어를 우선순위로 스코어링해 주제 선정하기 - 바이럴 가능성 + 주제에 대한 전문성으로 스코어링하기
작성하기 - 초안은 최대한 빠르게 작성하고, 천천히 편집하기
발행 및 유통 - 컨텐츠의 첫 3줄(훅) 신경쓰기
인게이지 유도하기 - 댓글/반응 또는 컨텐츠에 대한 피드백 요청하기
분석하기 - 가장 유입이 많은 채널 확인하기 / 댓글 분석하기
컨텐츠도 제품과 같이 Write-Measure-Learn의 이터레이션을 퀄리티 높게 반복할 수 있어야한다.
▶ 차별화
대다수의 컨텐츠는 높은 조회수/독자의 참여도를 꾸준히 유지하지 못하는 것을 고민한다.
뉴스레터 시장이 먼저 확장된 미국에서는 기존의 뉴스레터를 언번들링하려는 시도가 이어지고 있는데, 예를 들어 'Strategy Breakdown'이라는 뉴스레터는 Not Boring이나 Digital Native 같은 뉴스레터는 내용이 정말 좋지만 길이가 너무 길어 사람들이 끝까지 읽지 않는다는 점을 포착해 길이를 짧게 줄여버린 뉴스레터가 빠르게 구독자를 확보하고 있다.
내가 뉴스레터를 읽는 Matter라는 제품은 몇 달 전부터 '5분 안에 읽을 수 있는 컨텐츠'를 따로 큐레이션하기 시작했다.
이러한 언번들링이 일어나는 이유는, 특히 컨텐츠라는 포맷이 지루함을 느끼기 쉽기 때문이다. 그래서 글을 읽을 때 최대한 빠르게 가치를 느낄 수 있도록 핵심만 남기고 최소화한다. 물론 모든 컨텐츠에 이런 포뮬러를 적용시킬 수는 없지만, 90% 가 선택하지 않은 10%의 옵션에는 어떤 것이 있을지 생각해보고 차별화 포인트를 만들 필요가 있는 것 같다.
최근 한국에서도 많은 컨텐츠가 발행되고 있는데, 대다수가 하지 않는 선택지를 고려해 차별화 포인트를 만들어야 한다는 생각이 든다.
▶ 유통
내가 컨텐츠 작성에 집중했다면, @Doeon Kwon 권도언 도언은 작성한 컨텐츠를 발행 전에 함께 리뷰하고 배포하는 것에 집중했다. 이때 도언이 유효한 타겟에게 효과적으로 도달하기 위해 유통채널을 관리하는 대시보드를 만들었는데, 이곳에서 컨텐츠가 작성할 때마다 타겟 유저에 맞는 채널을 찾아 배포하는 것을 반복했다.
이 과정에서 생각하지 못했던 채널을 발견하기도 했고, 유통할 때 주의해야하는 점을 배우는 등 많은 레슨런이 있었는데 아래의 것들이 가장 기억에 남는다.
여러 채널에 컨텐츠를 유통하는 것은 생각보다 많은 시간이 소요된다 (1시간 이상)
타겟 별(개발자, PM 등)로 가장 유입이 많은 채널을 정의하자 - 긱뉴스, 페이스북 그룹 등
채널 별 성향을 잘 이해해야한다 - 예를 들어 보수적인 채널에 유통하고 싶다면 사전에 미리 warm-up을 해두면 더 많은 반응을 이끌어낼 수 있다.
William Jung
처음 창업을 하면 두 가지가 없어서 힘들다고 해요. 고민을 나눌 동료와 초기유저인데요.
메이커 스프린트 참가자 분들은 서로가 동료면서 동시에 신뢰할 수 있는 초기유저가 되어주고 있습니다 :)
William Jung
노션 블로그 생성기 Feather, Tweet Hunter 창업가에게 3억에 매각
// Tibo가 feather로 만든 블로그의 트래픽
배경
위 이미지는 Tibo가 feather로 만든 두 블로그의 트래픽 추이, 점진적으로 성장하는 중
가치를 느낀 Tibo는 약 3억 5천만원에 feather를 인수
현재 feather는 매달 약 8,300,000원의 매출을 발행시키고 있음
기존에 뉴스레터 툴로 beehiiv를 사용하던 Tibo는 beehiiv의 가격정책 변경으로 2.5배 더 비싼 요금을 내야하는 상황에 불만을 가지고 feather로 옮길 계획
드는 생각
성공한 경험이 있는 메이커가 후배 메이커를 당겨주고, 인수 해주는 모습이 다른 메이커들로 하여금 동기부여를 주게 됨. 동시에 긍정적인 긴장감도 형성할 수 있음.
Tibo도 Tweet Hunter를 창업해 매각하면서 더 유명해진 경향이 있음. 이번 트윗에서도 feather의 창업가를 샤라웃 했는데, 이미 유명하기는 했지만 이번 이벤트를 계기로 feather 창업가는 인지도를 더 높일 수 있게 되었고 새로운 비즈니스를 하더라도 더 많은 기회를 창출할 수 있게 됨
국내에서도 메이커들끼리 더 도우면서 서로의 비즈니스를 키워갈 수 있었으면 좋겠음. 잘 되면 인수도 해주면서.
그 과정에서 디스콰이엇은 영감을 줄 수 있는 제품/메이커를 잘 포착하고 하이라이팅하는 것이 중요하다 생각.
William Jung
안녕하세요! 디스콰이엇 정민교입니다.
최근 3주동안 20개 이상의 AI 제품에 온보딩했고, 이 제품들로 결과물을 만들면서 불편했던 UX가 많이 있었습니다. 그런데 마침 저의 컨텐츠를 읽은 분들께서 이런 피드백을 주셨어요.
"실제 AI 제품을 만들 때 참고할 수 있는 UX를 알려주세요"
"저는 개발자라 UX에 대한 지식이 부족합니다. 어떤 레퍼런스를 참고해야할지 모르겠어요"
사실 'AI SaaS가 따라야하는 필수 UX'는 많은 AI 팀들이 시행착오를 겪어가며 찾아가는 중인 것 같습니다. 하지만 제품을 사용하다보니 사용성이 좋지 않은 UX는 확실히 느껴졌어요.
그래서 오늘은 AI 제품을 사용하면서 가장 불편했던 3가지 유형의 UX와 개선방안을 적어봤어요.
AI 제품의 비용구조는 복잡할 수 있기 때문에 명확한 비용정보가 제공되어야 해요.
AI가 작업을 처리할 때, 그 과정과 방법에 대한 상세한 정보가 사용자에게 전달되어야 해요.
유저가 정보를 탐색하게 하지 말고, 선별된 정보를 검토할 수 있게 경험을 설계해보세요.
1. 보험약관 유형 : 비용 구조를 친절하게 공개하지 않음
문제상황
첫 번째 유형은 비용에 대한 정보를 친절하게 제공하지 않는 경우입니다. 지난 주에 제품에 대한 설명, 사용할 기술, 아키텍처 구조 등을 작성하면 PO agent, DevOps agnet 등이 풀스택 웹앱을 만들어주는 Pythagora.ai를 사용해봤는데요.
놀라울 정도로 제 아이디어에 대해 구체적으로 질문하고, 세부 개발 스펙까지 제안해주는 것이 인상깊었어요. 하지만 본격적으로 제품 개발을 시작하려고 할 때, 무료 토큰이 소진되어 Pro 플랜을 구독해야한다는 아래와 같은 모달이 떴어요.
// 무료 체험판이 끝났다
이때 CTA 버튼을 누르면 Pro 플랜을 구독할 수 있는 결제 모듈 링크가 메일로 전달되는데요. 전 별도의 구독료가 필요하지 않다는 것을 알고 있었기 때문에 의아함을 느끼고 구글링을 해봤어요.
알고보니 무료 체험판이 끝났을 때, 자신의 OpenAI API 키로 API key를 바꿔주면 그대로 서비스를 활용할 수 있다는 것을 알게 되었어요. 저와 비슷하게 혼란을 겪는 사람들이 정보를 주고받는 모습도 볼 수 있었습니다.
// 비용에 대한 안내가 친절하지 않아 헷갈린다는 유저의 코멘트
'Free trial ended'가 헷갈리네요.
사실 .env 파일에서 당신의 OpenAI API 키로 수정만 하면 됩니다. 그럼 계속 제품을 사용할 수 있어요.
만약 당신이 OpenAI API 키를 제공하지 않으면, 그들의 키를 사용하게 되고, 따라서 그들이 비용을 지불하게 됩니다. 이러한 비용은 기본적으로 당신에게 전가되지만, 이것이 잘 문서화되어 표시되어 있지 않았습니다.
...
정리하면, 자신이 OpenAI API 키를 가지고 있다면 별도의 결제를 할 필요가 없습니다. 키가 없다면 결제하면 되고요.
이걸 인지하고 다시 모달을 보니 마치 보험약관처럼 작은 글씨로 아래의 메세지가 적혀있었어요.
다만, 이 모달이 아니면 어디에서도 자신의 API 키를 사용할 수 있다는 안내가 없어 아쉬웠습니다.
If you have your own OpenAI API key,
please read How to use your own OpenAI key with Pythagora
원인정리
이러한 불편함이 생기는 이유에는 두 가지 이유가 있어요.
중요정보에 대한 접근성 낮음 : 비용은 제품 사용여부를 결정할 때 중요한 요소에요. 하지만 가격에 대한 정보를 알 수 있는 방법이 제한되어있어요. 또한 Pythagora를 구독하는 것과 자체 API 키를 사용하는 것의 차이에는 어떤 것이 있는지 안내되지 않아 유저에게 혼란을 줄 수 있습니다.
가독성이 떨어지는 표기 : 사용자가 구독료를 지불하도록 유도하는 다크패턴의 일환으로, 중요한 정보를 작은 글씨로 배치한 경우에요.
개선방법
고정된 구독료를 지불하는 것이 아닌, 비용의 변동성이 생길 수 있는 구조라면 유저가 자신의 상태를 명확하게 인지할 수 있도록 정보를 제공하는 것이 중요해요.
아래는 프롬프트로 리액트 컴포넌트를 생성해주는 v0의 사용자 대시보드인데요. 프롬프트를 실행할 때마다 크레딧이 소진되고, 부족한 크레딧을 충전할 수 있는 비용구조를 가지고 있어요. 그래서 아래와 같은 대시보드를 제공해요.
이러한 형태의 대시보드는 유저가 얼만큼의 비용이 지불되는지 일일이 계산하거나 파악하지 않아도 되는 장점이 있어요. 특히 AI 제품의 경우 비용구조가 복잡할 수 있기 때문에 유저에게 명확한 비용산정 방식 또는 비용을 안내할 필요가 있습니다.
2. 나만 믿어 유형 : 프롬프트 처리 과정을 공유하지 않음
문제상황
이번에는 프롬프트를 입력했는데 그 처리 과정이 공유되지 않는 경우입니다. 먼저 문제가 되는 상황을 볼까요?
// 프롬프트로 디버깅을 요청했더니 everything is ok라고 답변. 하지만 여전히 버그가 고쳐지지 않음
지난 컨텐츠에서 '프롬프트 하나로 풀스택 웹앱을 만들어주는 Marblism'을 소개한 적이 있는데요. 이때 불편했던 UX가 바로 프롬프트로 디버깅을 하는 경험이었습니다.
먼저 Marblism을 잘 모르는 분들을 위해 짧게 설명하면, Marblism은 프롬프트를 입력했을 때 풀스택 웹앱을 구현할 수 있고, 코드베이스도 제공해요. 그리고 여기서 나아가 프롬프트를 작성해 코드에서 발생한 버그를 고치거나, 기능을 더할 수도 있고요.
위의 이미지는 프롬프트를 작성해 디스콰이엇을 똑같이 만들어 배포했더니 특정 기능이 작동하지 않아 디버깅을 시도하는 장면입니다. 이때 문제는 버그가 생긴 원인이 무엇인지 설명해주지 않고, 어디를 어떻게 디버깅하고 있는지도 설명해주지 않는다는 점이에요.
원인정리
이런 불편함이 생기는 이유는 작업을 처리하는 과정에서 유저를 완전히 배제하고, 처리과정에 대한 구체적인 정보를 유저에게 제공하지 않았기 때문이에요. 유저가 대체되는 느낌을 받아서는 안되는 것이죠.
개선방법
해당 경험을 잘 구현한 제품이 ChatGPT인데요, 파일을 삽입하고 특정 작업처리를 요청하면 '작업 처리 중' 상태 메세지와 함께 코드 인터프리터에서 어떻게 작업이 처리되고 있는지 볼 수 있어요. 만약 결과물에 이상이 있다면 코드 인터프리터를 보고 수정할 수 있는 여지가 있는 것이죠.
그래서 AI 제품은 AI가 어떤 근거로 작업물을 생성했는지에 대해 상세하게 정보를 전달할 필요가 있습니다.
// 작업 처리를 위해 생성한 python 코드를 볼 수 있다
3. TMI 유형 : 너무 많은 정보가 나열되어 있음
문제상황
마지막으로 너무 많은 정보가 있어 유저에게 부담을 주는 경우입니다.
Lindy는 AI 기반의 자동화와 각종 AI 어시스턴스를 제공하는 플랫폼인데요. 현재 시리즈 B 투자를 유치했고, zapier처럼 AI 기반의 뛰어난 자동화 솔루션을 제공할 수 있지 않을까 싶어 초기 단계부터 응원하는 팀입니다.
또한 지금의 소프트웨어 마켓플레이스에서는 사람이 공급자이지만, 앞으로는 AI도 소프트웨어 마켓 플레이스의 공급자가 될 수 있다고 생각하기 때문에 Lindy 같은 팀을 더 관심가지게 되는 것 같고요.
원인
다만, 일반 유저들이 Lindy를 잘 사용하려면 러닝커브가 있는데요. 그 이유는 나에게 적합한 솔루션을 탐색하는 과정에서 소비되는 에너지가 크기 때문입니다. 위의 이미지는 Lindy에 접속하면 가장 먼저 보게되는 화면인데 그냥 봐서는 내 문제를 해결해줄 수 있는 솔루션이 무엇인지 탐색하는게 어렵습니다.
해결방법
사람이 인터넷에서 원하는 정보를 얻는 방식은 '내가 정보를 찾아가는 방식'에서 '선별된 정보를 검토하는 방식'으로 변하고 있어요.
검색하기 → 검색한 정보를 필터링하기 → 프롬프트를 작성해 선별된 정보를 받아 검토하기
예를 들어, Zapier도 이전에는 Lindy와 같이 여러 자동화 템플릿을 나열하고 탐색하는 방식의 UX를 제공했지만, 현재는 제공되는 정보의 양을 확 줄이고 프롬프트를 입력해 자동화 솔루션을 생성하는 방식으로 경험을 바꿨어요.
아래의 두 이미지를 비교하면서 어떻게 UI가 변경되었는지 확인해보세요 :)
// 이전의 Zapier 탐색 탭
// 현재 변경된 UX. 자연어로 유저가 원하는 자동화를 입력하면 자동화 템플릿을 생성해준다.
정리
결국 ‘유저에게 필요한 정보를 간결하고 명확하게 전달하는 UX’로 수렴되는 것 같습니다. 이에 대해 사용성 높았던 제품은 최대한 단순하게 UI를 구성하고, 정보를 덜어냄으로써 유저가 자신의 문제를 해결하는 것에 집중할 수 있는 환경을 만들어주는 것이 특징이었어요.
특히 AI 기술의 잠재성이 크다보니 지나치게 발산적인 사고를 하게되는 경우도 많다고 생각하는데요. 그래서 이것저것 창의적인 솔루션을 생각하며 기능개발에 많은 리소스를 쓰게 되는 것 같아요. 그래서 이럴 때일수록 더 유저의 문제에 집중해서 최대한 단순하게 문제를 정의하고 솔루션을 만드는 자세가 중요하게 느껴지네요!
혹시 대신 리뷰를 맡기고 싶은 제품이 있나요?
매주 컨텐츠에 대한 피드백을 받고 있는데요, 특히 아래와 같은 피드백이 눈에 띄게 많아요.
AI 제품은 쏟아져 나오는데 일일이 사용해보기는 귀찮고, 직접 써보자니 우선순위에서 밀려 결국 사용해보지 못하고 넘어가는 경우가 많다.
대신 프로덕트를 사용해서 리뷰 남겨주는 컨텐츠가 좋은 것 같다.
그래서 여러분을 대신해서 프로덕트를 직접 사용해보고, 특징, 인상깊은 UX, 창업가의 스토리, GTM 전략 등을 큐레이션해보려 합니다.
큐레이션 해줬으면 하는 제품이 있다면 아래 링크에 남겨주세요 :)
William Jung
폴 그레이엄의 Superlinear Return을 읽고 간단정리
성과에 대한 보상은 비례적으로 늘어나는 것이 아니라, 매우 빠르게 늘어날 수 있다'
1/ 주요 내용
성공은 비례적 보상이 아니다: 선생님이나 코치들이 "노력한 만큼 보상을 받는다"고 많이 말하지만, 실제로는 그렇지 않다. 예를 들어, 어떤 제품이 경쟁자의 제품보다 절반만큼만 좋다면, 고객이 절반만큼 줄어드는 것이 아니라 아예 없을 수도 있다.
즉, 노력과 보상 사이의 관계는 비례적이지 않습니다.초선형적 보상: 어떤 분야에서든 성과에 대한 보상은 초선형적(superlinear)이다. 이는 성과가 조금만 좋아도 보상이 크게 늘어나는 것을 의미. 예를 들어, 스타트업 회사가 성공하면 매우 큰 보상을 받을 수 있지만, 그렇지 않으면 생존조차 어려울 수 있음.
성장과 임계값: 초선형적 보상의 원인은 두 가지.
기하급수적인 성장(exponential growth)
기하급수적 성장은 작은 차이가 큰 결과를 낳을 때 발생. 예를 들어, 박테리아가 자랄 때, 조건이 맞으면 기하급수적으로 증가.
임계값(threshold)
임계값은 어느 정도의 성과를 넘어야 보상이 크게 주어지는 것을 의미. 예를 들어, 스포츠 경기에서 이기는 팀은 큰 보상을 받지만, 지는 팀은 아무런 보상도 받지 못함.
학습의 중요성: 학습도 초선형적 보상을 가져옴. 많이 알수록 더 빨리 새로운 것을 배울 수 있기 때문에, 학습 자체가 중요한 투자가 됨. 예를 들어, 자전거를 배우면 다른 많은 것들도 더 쉽게 배울 수 있음.
경쟁과 기회: 경쟁이 있는 곳에서는 보상이 크지만, 모든 경쟁이 가치 있는 것은 아님. 중요한 것은 기회가 있는 곳에서 경쟁하는 것. 예를 들어, 어떤 제품이 인기가 있지만 평범하다면, 더 나은 제품을 만들어서 그 시장을 차지할 기회가 있을 수 있음.
호기심과 독립성: 호기심을 따르고 독립적으로 생각하는 것이 중요. 독립적으로 생각하는 사람들은 새로운 아이디어를 내고, 이는 큰 성과를 낼 가능성이 큼. 예를 들어, 과학자들은 새로운 발견을 하기 위해 다른 사람들이 이미 말한 것을 반복하지 않고 새로운 것을 탐구함
2/ 정리
결국 성과에 대한 보상이 비례적이지 않다는 것을 이해하고, 이 구조를 잘 이용하는 것이 중요하다.
호기심을 따르고, 학습하며, 경쟁과 기회를 잘 선택할 수 있어야 한다.
William Jung
클릭 한 번으로 이해하기 쉽게 AI가 데이터를 해석해주는 Graphy
안녕하세요 윌리에요!
오늘은 AI를 활용해 클릭 한 번으로 데이터를 쉽게 해석할 수 있도록 도와주는 Graphy를 소개하려 해요. 그리고 Graphy를 사용해보면서 디스콰이엇의 데이터 몇 가지를 공유해봤습니다 :)
Graphy의 핵심기능은 다음과 같아요.
Google Sheet, GA, Google Search Console, Linkedin, X, 등에서 만들어지는 통계를 클릭 한 번으로 하나의 대시보드로 가져와 가공할 수 있어요
AI 기능을 활용해 가져온 데이터를 기반으로 인사이트를 도출할 수 있어요.
AI 요약 기능으로 많은 양의 데이터를 빠르게 이해할 수 있어요
무료 계정으로도 충분히 사용할 수 있어요
임베딩, 외부 링크공유가 자유로워 BIP할 때 사용하기 좋아요
데이터를 수집하는 과정에서의 어려움
제품을 빌딩 인 퍼블릭하는 방법 중 가장 솔직한 방법은 데이터를 공개하는 일이에요. 일반적으로 클라이언트, 파트너, 투자자, 내부 팀원에게 주기적으로 데이터를 공유할 수 있는데요, 이때 몇 가지 문제가 발생해요.
데이터의 출처가 너무 다양하다. 구글시트, 믹스패널, GA 등 데이터를 관리하는 출처가 많아 수집에어려움이 있다.
데이터를 해석하는 역량이 전부 다르다. 같은 차트를 보더라도 이해하는 속도와 정도가 다르다. 캡션을 달거나, 직접 부가설명을 해야한다
공유가 어렵다. 특히 내부정보를 트래킹하는 플랫폼이라면 엑세스 권한이 있는 사람만 해당 데이터를 조회할 수 있어요. 그래서 내부 정보를 외부에 공유하려면 csv를 다운받아 가공하거나, 스크린샷을 찍어야하는 불편함이 있습니다.
Graphy는 어떻게 이 문제를 풀어가고 있는지 볼까요?
첫인상
랜딩을 보고 느낀 점은, Graphy는 내부의 데이터를 선택적으로 취합해 인사이트를 도출하고 공유하는 업무를 많이 하는 분들에게 적합하다는 생각이 들었어요. 대표적으로 아래와 같은 사례가 떠오르네요.
의사결정을 위해 내부 팀원들에게 선택적으로 데이터를 공유해야하는 PM
투명하게 빌딩 인 퍼블릭하기 위해 지표를 공유해야하는 인디메이커
클라이언트에게 내부 데이터로 매력적인 피칭을 하고 싶은 세일즈 매니저
실제로도 세일즈포스, 감마와 같이 규모가 큰 팀에서도 사용하고 있는 것을 확인할 수 있어요.
그럼 이제 자세한 사용법을 알아볼까요?
1단계 - 크롬 익스텐션 설치하기
// Graphy 랜딩페이지
Graphy를 사용하면서 가장 편리했던게 익스텐션이었는데요. 내가 사용하고 싶은 그래프를 호버하면 'Save to Graphy'라는 버튼을 뜨고, 클릭하면 해당 그래프가 내 워크스페이스에 저장되는 구조에요.
특히 웹에서 그래프를 호버할 때마다 버튼이 뜨다보니 자주 눌러보게 되는데요, 일반적인 SaaS와 다르게 이런 방식으로 유저의 접근성을 높이는 것이 재미있었습니다.
2단계 - 보드 만들기
워크스페이스에 들어오면 빈 대시보드가 있어요. 원하는 대시보드 제목과 설명을 기입하고, 원하는 출처에서 데이터를 가져올 수 있습니다. 저는 디스콰이엇의 DAU가 어떻게 성장했는지 먼저 알아봤어요.
3단계 : 그래프 저장하기
// 직접 GA에서 그래프를 생성해봤다
GA에서 원하는 그래프를 클릭하고 익스텐션을 실행하면 오른쪽의 그래프를 생성합니다. 이렇게 생성된 데이터를 바로 워크스페이스로 저장하는데요. 저장하기 이전에, 가공할 수 있는 모달이 뜹니다. 이 모달에서는 불필요한 컬럼을 제거하는 등의 작업을 할 수 있어요.
특히 인상 깊었던 부분은 언제든지 그래프를 새로고침할 수 있다는 점인데요. 다양한 출처의 데이터로 대시보드를 구성하고, 특정 대시보드만 집중해서 볼 수 있도록 되어있어서 매우 편리해요.
2022년에는 약 20,000이 채 안되었던 DAU가 현재 약 100,000으로 5배 가량 성장했어요. 최근 들어서는 꾸준히 100,000명이 넘는 메이커 분들이 디스콰이엇을 찾아주고 계세요. 정말 감사합니다!
4단계 - AI Caption 삽입하기

이제 그래프를 더 빠르게 이해하기 위해 설명을 작성할 차례인데요. 이때 AI로 6가지 유형의 요청을 할 수 있어요.
인사이트 도출하기
핵심만 요약하기
이상현상 찾아내기
프레센테이션 멘트 생성하기
간략한 리포트 생성하기
트윗용 문구 생성하기
AI에서 위 그래프에 대한 요약을 직접 부탁해봤고 이런 답이 나왔어요.
요약
데이터셋은 2021년 3월부터 2024년 5월까지의 일일 활성 사용자(DAU)를 보여줍니다.
특히 2023년과 2024년에 큰 성장이 나타났습니다.주요 하이라이트
📈 DAU 급증: 2023년 중반부터 2024년 초까지 큰 증가가 관찰되었습니다.
🚀 최고 기록: 2023년 12월에 최고 DAU인 118,595명이 기록되었습니다.
꾸준한 성장: 2022년 이후 월간 증가가 두드러져, 견고한 사용자 참여를 나타냅니다.
권장 다음 단계
2023-2024년 동안 DAU 증가를 촉진한 요인을 분석합니다.
사용자 성장을 유지하고 활용할 기회를 모색합니다.
트렌드를 모니터링하여 전략을 조정합니다.
특히 요약을 넘어 이제 무엇을 해야할지 액션 아이템을 제공하는 점이 인상깊었는데요, 그래프의 유형에 따라 구체적인 목표 KPI를 세워주기도 했어요. 사실 데이터를 취합하는 목적은 좋은 의사결정을 내릴 때 참고하기 위함이니 정보를 수집하는 리소스를 아껴주고, 의사결정 내리는 것에 몰입할 수 있도록 제품을 만들어가고 있는 것 같아요.
5단계 : AI로 대시보드 전체 인사이트 요약하기
// 디스콰이엇 데이터를 기반으로 요약을 부탁해봤다
가장 놀랐던 기능이었는데요. 마지막으로 완성된 대시보드 전체의 그래프를 기반으로 AI에게 요약을 부탁했습니다. 전반적으로 답변의 퀄리티가 좋았고, 대시보드 내의 그래프의 수가 많아질수록 가치가 크게 느껴질 것 같은 기능이었어요.
특히 Graphy의 방향이 AI로 정보를 해석하는 시간을 줄이고, 빠른 의사결정까지 도와주는 것인데, 이런 방향성을 제품에 잘 녹여낸 기능이라는 생각도 들었습니다.
기존의 데이터 분석 플랫폼에서는 이렇게 대시보드 전체의 정보를 AI로 요약해주는 기능을 유료로 제공하고 있는데 Graphy는 무료라는 점도 좋았고요.
디스콰이엇의 지표
간략하게 DAU, 구글 검색 결과에 노출된 횟수, 유저가 페이지를 본 횟수를 뽑아봤어요. 연말이 되었을 때 디스콰이엇의 성과를 공유해볼 수 있겠다는 생각도 드네요 ㅎㅎ
링크를 클릭하시면 더 자세한 데이터를 보실 수 있어요.
특히 최근 들어 디스콰이엇을 찾아주시는 분들이 더 증가하고 있는만큼, 고객을 찾고 싶거나, 프로덕트 인사이트를 공유하기 위해 디스콰이엇에서 빌딩 인 퍼블릭 해주시면 좋은 결과를 만들 수 있을 것 같습니다 :)
정리
Graphy의 장단점을 정리하면 다음과 같습니다.
장점
일단 멋있습니다. 멋진 스크린샷을 찍게 도와주는 xnapper와는 다르게 상호작용이 가능한 차트를 생성하고 공유할 수 있다는 점이 매력적이에요. 훨씬 프로페셔널하게 보이고요.
데이터를 빠르게 해석할 수 있어요. AI 기반의 Caption을 통해 PM, 개발자, CX 등 직군에 상관없이 많은 양의 데이터를 빠르게 이해할 수 있습니다.
외부 공유가 쉽습니다. 예를 들어 믹스패널는 엑세스 권한이 없는 사람에게는 내부 정보를 공유할 수 없는데요. Graphy를 사용하면 가능합니다. 그것도 원하는 정보만 골라서요.
처음 한 번만 필요한 데이터를 모아두면 그 다음부터는 하나의 대시보드만 보면 됩니다. 번거롭게 다른 플랫폼을 오갈 필요가 없어요.
단점
간헐적으로 버그가 있습니다. 예를 들어 믹스패널에서 데이터를 추출할 때 익스텐션이 작동하지 않는 것인데요, 그래서 Graphy를 사용하신다면 내가 사용하는 플랫폼을 안정적으로 지원하는지 확인해보시면 좋을 것 같아요. 그래도 구글 서치 콘솔, GA, 구글 시트는 안정적으로 지원하고 있습니다.
여러모로 무료로 사용 가능한 것을 감안하면, 사용하지 않을 이유는 없어보여요 :)
창업가의 진정성
// Richard와 직접 소통하며 나눈 내용
저는 종종 제품을 사용해보고 피드백하고 싶은 내용이 있으면 직접 메일을 보내거나 트위터 메세지를 보내는데요, 특히 Graphy를 만들고 있는 Richard와는 여러 번 소통하며 제품에 대한 이야기를 즐겁게 나눌 수 있었습니다. 구체적으로 유저의 경험을 묻고, 피드백을 요청하는 모습이 인상깊었어요.
안녕 William,
피드백 고마워. 매우 유익하고 도움이 되었어.
넌 Graphy가 제공하고자 하는 사용 사례와 가치를 정확히 이해하고 있네!간단한 질문이 있는데. 현재 Google Sheets를 사용할 때 (Graphy 외부에서) 이미 Google Sheets 내에 생성된 차트를 사용하고 있어?
이걸 물어보는 이유는 Chrome 익스텐션이 사용자들에게 얼마나 편리함을 제공하는지 더 잘 이해하고 싶어서 그래. (사용자들이 Google Sheets에서 이미 차트를 가지고 있어서 이를 단순히 Graphy로 옮길 수 있는지 아니면 Google Sheets에서 차트를 먼저 만들어야 하고 그 후에 Graphy로 옮길 때 귀찮음을 느끼는지 알고 싶거든.)
Graphy로 제품 데이터를 메이커로그로 공유해주세요!
William Jung
지금 아래 15팀을 팔로우하고, 3주 뒤 열리는 투표에 참여해주세요
디스콰이엇은 스타트업이 주도하는 스타트업 커뮤니티를 만들기 위해 노력하고 있어요. 그리고 그 일환으로 진행하게 된 '메이커 스프린트'는 AI & SaaS 메이커들이 3주동안 GTM(Go-To-Market)에만 집중하는 프로그램입니다.
지금 아래의 15팀을 팔로우하고, 3주 뒤 열리는 투표에 참여해주세요!
프로그램이 종료되는 3주차에는 참가자들이 프로덕트를 런칭할 예정이에요. 그리고 런칭 성과가 가장 좋은 3팀에게 리워드가 제공되는데요, 이때 메이커님도 참가팀의 프로덕트 중 마음에 드는 프로덕트에 업보트/하트/댓글을 남겨 서포트하실 수 있어요.
메이커 스프린트 참가팀
이번 메이커 스프린트 참가팀을 소개할게요. 관심가는 제품/메이커 분을 팔로우하고, 메이커로그가 올라왔을 때 가장 먼저 알림을 받아보세요!
김효준
소개 : 12살에 OS 개발. 중학생 때 20만명 테크 커뮤니티 빌딩. 고2에 AB180 첫 팀원으로 시리즈B까지 경험. 현재 프로젝트 관리의 귀찮음을 덜어주는 AI PM 창업.
제품 : 스스로 업무 현황을 문서화하는 AI 프로젝트 매니저 개발 중
안홍준
소개 : 서울대학교 물리학 학사 및 전기정보공학부 박사과정 수료. AI 헬스케어 창업. 스타트업 경험 없이 빠르게 배우며 MVP 출시하고 고객 확보.
제품 : 치매 위험도와 인지능력을 그림설명과정을 통해 분석하는 온라인 검사
황성현
소개 : 뱅크샐러드를 창업해 시리즈D 규모까지 경험. 이런 경험과 제품 역량을 바탕으로 여러 AI 프로덕트를 계속해서 출시 중.
제품 : 프롬프트를 하드 코딩하지 않도록 도와주는 서비스
이남우
소개 : 서울대학교 컴퓨터 비전 및 하드웨어 시스템 디자인 연구 과정 수료.
제품 : LLM 기술을 활용해 구조화 없이도 클릭 한 번으로 자료를 저장하고 쉽게 검색할 수 있는 메모 서비스
김규리
소개 : 팀 규모 2명으로 서비스 출시 3개월 만에 150개 이상의 기업 고객 확보. 이후 시드투자 유치 성공.
제품 : 이메일 분석과 스크래핑 기술을 통해 SaaS 비용을 절감하고 관리 효율성을 극대화하는 솔루션
Danny Lee
소개 : MVP 출시 한 달 만에 글로벌 유저 1,200명 확보.
제품 : 시나리오 작성부터 캐릭터 생성, 컷 생성, 식자 작업까지 가능한 4컷 웹툰 제작 올인원 툴
최수민
소개 : 토스페이먼츠 재직 당시 자동화 니즈를 강하게 느끼고, 자동화 SaaS 창업 후 2곳과 계약 성공.
제품 : 업무 체계를 로우코드 플랫폼으로 디지털화하여 비용과 시간을 절감하는 맞춤형 솔루션
정수연
소개 : 4만명이 사용한 챗봇 ‘아포피스’ 창업 경험.
제품 : 혼자 일하는 사람들을 위해 온라인 모각일 기능과 집중 지원 도구를 결합해 몰입과 생산성을 높여주는 솔루션
김근우
소개 : UC Irvine에서 컴퓨터 과학 박사 과정 및 쿠팡 머신러닝 개발 경험.
제품 : 재무 및 주식 시장 경제 리포트를 생성하는 로봇 어드바이저
David Bang
소개 : 20대 초반 웹 에이전시 창업. 앤틀러 1기. 현재 3D 메타버스 창업.
제품 : the center of the metaverse
성기봉
소개 : 엠파스가 SK 커뮤니케이션에 Exit 될 때 개발자로 제품 개발 경험
제품 : 고객 데이터를 통합하고 분석 및 시각화하며 AI 기반 자동화를 통해 효율적인 세일즈 관리를 제공하는 CRM
홍혜연
소개 : AI 프로덕트 PM 경험. 디스콰이엇에서 적극적으로 네트워킹하며 버블쉐어의 시드투자 성사에 기여.
제품 : AI로 현지 맞춤형 콘텐츠 제작과 마케팅 전략을 지원하는 글로벌 마케팅 SaaS
손민지
소개 : 시각예술 전공 후 비즈니스 가치를 주고 싶어 프로덕트 디자인으로 전환. 빠른 MVP 개발 역량 보유.
제품 : 식단과 운동 기록을 통해 트레이너가 효율적으로 피드백을 제공하는 SaaS
김도윤
소개 : 필요하면 스파게티 코드 짜고 개발 없이 검증할 수 있는 메이커 기질. 임팩트 내는 것에 진심.
제품 : 정부 환경인증 데이터를 활용해 친환경 건축 경로를 최적화하고 탄소비용을 절감하는 솔루션
김단우
소개 : 인공지능 석사 졸업 후 엘박스에서 판결문 검색 AI 개발 경험.
제품 : 중소기업과 개인사업자를 위해 영업 활동을 체계적으로 관리하고 분석하는 클라우드 기반 영업 관리 시스템
William Jung
댓글로 매출을 만든 방법과 프로덕트 링크를 간략하게 적어주세요 :)
William Jung
댓글로 링크/프로덕트 한 줄 소개를 적어주세요 :)
William Jung
안녕하세요, 윌리에요!
오늘은 프롬프트 하나로 SaaS를 비롯한 다양한 웹앱을 만들어주는 Marblism을 소개하려 해요. 이번 글은 자세한 사용 후기를 담은 만큼 이미지와 글이 많은데요, 이 프로덕트에 인상깊었던 UX는 아래와 같았아요. 만약 AI 제품을 만들고 있다면 참고해보세요.
AI 제품은 사용자가 선택할 수 있는 옵션의 수를 최소화해 의사결정의 난이도를 낮춰야해요. Marblism은 AI App, SaaS, Marketplace, Social Network, Internal Tool 5가지의 선택지만을 제시합니다.
복잡한 기능을 점진적으로 노출해 사용자가 한 번에 많은 정보를 처리하지 않도록 해야 해요. Marblism은 풀 스택 웹앱 개발이라는 복잡한 과제를 세 단계로 나누어 유저가 부담 없이 구현할 수 있도록 해요.
예상치 못한 보상을 단계별로 제공해 사용자의 참여를 유도하는 것이 중요해요. Marblism은 각 단계를 완료할 때마다 놀라운 결과물을 제공해 사용자가 지속적으로 동기부여를 받을 수 있도록 합니다.
제품을 만들기 시작할 때의 어려움
코딩을 해본 경험이 있다면 이 밈에 공감할 수 있을 것 같아요. 그만큼 제품을 만들기 위해서 필요한 환경을 구축하는 것은 개발자에게도 복잡하고 어려운 일이에요. 결국 개발환경을 구축하는 단계에서 발생하는 버그를 수정하기 위해 많은 리소스를 사용하게 되는데요, 이 리소스를 줄일 수는 없는 걸까요?
개발자들의 반복 업무를 줄이고, 창의적인 생각에 몰입할 수 있는 세상을 만드는 것이 목적인 Marblism을 사용해 본 후기를 상세하게 적어봤습니다.
Marblism의 랜딩페이지
Marblism의 첫인상이에요. 하나의 프롬프트를 작성하면 SaaS를 만들어준다는 문구가 인상깊어 바로 사용해봤어요. 저는 디스콰이엇처럼 제품과 피드를 업로드하고, 다른 유저를 팔로우할 수 있는 소셜 네트워크 만드는 것을 목적으로 했어요.
1단계 : 프로젝트 이름, 유형, 프롬프트, 유저 경험 작성하기 (1분 소요)
프로젝트를 시작하면 가장 먼저 이름과 유형을 설정할 수 있어요. 개인적으로 프로젝트 유형을 SaaS, AI App, Marketplace, Social Network, Internal Tool 등으로 구분해둔 것이 정말 좋았는데요, 복잡하게 프롬프트를 입력하는 경험을 효율적으로 만들어준 것 같아 만족스러웠어요.
다만, Project Description을 작성할 때는 얼마나 구체적으로 작성해야할지 감이 오지 않아 어려웠습니다. 그래서 처음에는 제품에 필요한 기능을 거의 전부 적었는데요, 몇 번 사용하다보니 모든 기능을 나열하는 것보다 내가 만들려는 프로덕트와 비슷한 프로덕트의 이름을 프롬프트에 포함시켜 간결하게 작성하는 것이 더 좋은 결과물을 만들었어요.
그래서 제 프롬프트도 이렇게 바꿔 작성했습니다.
a social app like product hunt
2단계 : 페이지별 유저경험 설계하기 (5분 소요)
다음은 조금 놀란 부분이었는데요, ‘a social app like product hunt’라는 프롬프트를 토대로 필요한 페이지를 정의하고, 페이지별 유저의 경험과 시나리오를 아래와 같이 아주 상세하게 정의했어요.
UX 정의
사용자로서, 나는 내 필요에 맞는 도구를 찾을 수 있도록 AI 도구들의 분류된 목록을 둘러볼 수 있다.
사용자로서, 나는 각 AI 도구에 대한 간단한 설명과 URL 링크를 볼 수 있어 도구에 대해 더 많이 알고 해당 도구의 메인 페이지에 접근할 수 있다.
사용자로서, 나는 언어 처리, 머신 러닝, 데이터 분석 등과 같은 카테고리별로 도구를 필터링할 수 있어 특정 관심 분야의 도구를 빠르게 찾을 수 있다.
사용자로서, 나는 AI 도구들을 이름이나 키워드로 검색할 수 있어 특정 도구를 쉽게 찾을 수 있다.
시나리오
디렉터리 둘러보기: 사용자가 홈 페이지에 있을 때, 목록을 둘러보면 AI 도구들이 유형별로 분류되어 보인다.
도구 필터링: 사용자가 홈 페이지에 있을 때, 카테고리 필터를 선택하면 목록이 해당 카테고리의 도구들만 보여준다.
도구 검색: 사용자가 홈 페이지에 있을 때, 검색어를 입력하면 목록이 검색어와 일치하는 도구들을 보여준다.
사진에는 Home 페이지에 대한 정보만 있지만, 이외에도 프로덕트 업로드 페이지, 알림, 프로필, 로그인, 프로덕트 디테일 페이지 등 10개 이상의 페이지를 스스로 만들어서 제안했어요.
AI는 유저의 프롬프트를 읽고 그 의도를 읽어내는 행위를 잘하는데요, 그 부분을 잘 활용한 UX였어요.
사실 알림 페이지와 같은 디테일은 저도 놓치고 있던 부분이었는데, 디테일한 페이지까지 알아서 생성해 주니 인상 깊었습니다.
3단계 : 데이터베이스 생성 (5분 소요)
‘다음’ 버튼을 누르면 지금까지 정의한 유저의 경험을 토대로 DB를 만들어서 제안해요. 이때 복잡도가 높은 프로덕트일수록 자잘한 에러가 있었어요. 대부분의 에러가 칼럼이 중복되거나 누락된 경우였고요.
대신 프로젝트 시작 단계에서 기존에 이미 존재하는 프로덕트 이름을 포함해 프롬프트를 작성하면 DB 생성 시의 에러를 줄일 수 있었습니다. 예를 들어 대다수의 SaaS가 비슷한 DB 구조로 되어 있다 보니 정확도가 높았던 것 같고요.
4단계 : 배포
마지막 단계에서는 프로젝트를 배포할 수 있어요. 하지만 완벽한 프로덕트가 완성된 것은 아니었고, 템플릿에 가까웠어요. 그래서 이미지의 Launch Workspace를 클릭해 페이지 별로 기능과 디자인 등을 다듬어야 합니다.
만약 개발을 할 줄 안다면 본인의 깃헙 프로필을 초대해 코드베이스를 활용할 수 있어요.
Marblism이 생성하는 웹앱의 스택은 그림을 참고해 주세요!
5단계 : 워크스페이스에서 수정하기
// 우측에서 프리뷰를 보고, 좌측에서 프롬프트로 수정하는 구조
개발을 할 줄 모른다면 Marblism에서 지원하는 Workspace를 활용할 수 있는데요, 개인적으로는 코드를 보지 않고 프롬프트만으로 제품을 만드는 경험이 생각보다 불편했습니다. 예를 들어, 특정 div의 사이즈를 조절하거나 색상을 변경하는 간단한 프롬프트를 입력하면, Marblism이 스스로 task를 생성/수행하고 배포하지만, 변경 사항이 반영되지 않는 상황이 반복되었어요. 더욱 답답했던 점은 왜 변경 사항이 반영되지 않는지 알려주지 않는다는 점이었고요.
아래는 Marblism으로 만든 웹페이지 입니다. 원인 모를 에러를 수정하지 못해 기능은 작동하지 않네요. 참고용으로 봐주세요 :)
웹페이지 링크 : https://disquietai.app.io/home
Marblism — UX 리뷰
1~5단계를 거치면서 AI 제품이 갖춰야 할 UX를 정리해 봤어요.
1. Hick’s Law — 옵션의 수를 최소화해서 의사결정 난이도 낮추기
높은 자유도는 AI 프로덕트의 양날의 검이에요. 유저 입장에서는 원하는 바를 편하게 표현할 수 있지만, 지나친 자유도는 선택의 부담을 만들어낼 수 있기 때문이에요. 이때 옵션의 수를 최소화해서 의사결정의 난이도를 낮추는 것을 힉스의 법칙이라고 하는데요.
Marblism처럼 제품이 가장 잘 수행할 수 있는 선택지를 선별하고, 유저에게 제안함으로써 유저는 좋은 퀄리티의 결과를 빠르게 받아볼 수 있어요.
2. Progressive Disclosure — 복잡한 풀스택 개발과정을 점진적으로 구성
인기 있는 노코드 툴인 버블과 Marblism을 비교하면 풀스택 웹앱을 만들기 위한 학습곡선의 차이를 명확하게 느낄 수 있어요. ‘풀스택 웹앱 개발’이라는 task를 세 단계로 쪼개 정말 간편하게 구현했다는 점에서 복잡한 기능에 압도되지 않도록 UX를 잘 구성했어요.
3. Variable Reward — 예상치 못한 뛰어난 결과물 제안
마지막으로, 복잡한 과정을 세 단계로 쪼개고 각 단계를 수행할 때마다 기존의 개발경험에서는 느낄 수 없는 보상을 줍니다. 가령, 프롬프트만 작성했는데 제품에 필요한 페이지가 정의되고, 페이지 별 기능이 정의되는 경험이죠. 매 단계마다 랜덤한 보상을 줌으로써 동기를 부여하는 것도 좋은 UX 같아요.
Marblism의 방향성 — 초개인화 보일러플레이트를 생성하기
Marblism을 사용하면서 프롬프트 하나와 약간의 수정만으로 유저경험을 설계하고, 코드베이스가 만들어지는 경험은 와우할만한 경험이었어요. 그런데 코드베이스가 만들어진 이후에 직접 코드를 수정하는 workspace 기능이 정말 아쉬워서 의문이었습니다.
이렇게 경험의 질이 차이가 나는 것을 보고 이질감을 느꼈고 그 이유를 알아봤어요. 그리고 Marblism의 블로그에서 그 힌트를 찾을 수 있었어요.
A SaaS boilerplate, is a pre-built template for SaaS applications, including all standard features.
(SaaS 보일러플레이트는 SaaS를 구성하는 기본적인 기능을 이미 갖춘 템플릿입니다.)
Developers can focus on creating unique and innovative features for their customers, rather than building basic functionalities like authentication, user accounts, and billing flows from scratch.
(보일러플레이트를 통해 개발자는 인증, 사용자 계정, 결제와 같은 기본적인 기능을 처음부터 구축하지 않아도 됩니다. 대신 고객을 위해 독창적이고 혁신적인 기능을 만드는 것에 집중할 수 있습니다.)
여기서 보일러플레이트는 Next.js 같은 프레임워크와는 다른데, 정확히는 프레임워크 위에서 만들어진 템플릿이에요. 기본적인 인프라 설치를 넘어, 인증, 사용자 계정, 결제와 같은 기본 기능까지 구현되어 있어 제품 개발의 생산성을 극대화할 수 있죠.
기존에도 여러 유형의 보일러플레이트를 템플릿으로 제공하는 Makerkit.dev , shipfa.st 같은 서비스가 있지만, Marblism은 프로젝트 유형에 따라 프롬프트만으로 보일러플레이트를 자유롭게 생성할 수 있다는 차별점이 있어요.
이와 같은 이유로 현재는 원하는 기능을 포함하는 코드베이스를 빠르게 만들어내는 것에 더 집중하고 있다는 생각이 들어요 :)
보일러플레이트로 제품을 만들어본 분은 AI 프로덕트 클럽에 가입해서 경험을 공유해주세요!