소프트웨어 엔지니어로서 주문형 인쇄 사업 시작하기
어느 날 Github 타임라인을 인쇄해 보면 어떨까 하는 생각이 들었습니다. ‘가상’인 무언가를 현실 세계로 가져온다는 발상이 마음에 들었죠. 😄
그래서 친구 Wolfgang에게 연락했고, 함께 codeprints를 만들었습니다. 처음으로 만든 ‘실물’ 제품이었기에, 그 과정에서 배운 점을 공유해 보기로 했습니다.
로 유명한 [Felix Krause](https://krausefx.com/)는 우리의 첫 고객 중 한 명이었습니다. 서비스를 홍보해 주고 엄청난 트래픽을 가져다준 이 트윗에 정말 감사하고 있습니다.](https://endler.dev/2021/codeprints/tweet_felix.jpg)
출시는 어렵습니다. 그러니 일찍 출시하세요
일찍 출시하는 것이 중요하다는 사실은 알고 있었지만, 출시 예정일을 얼마 앞두고 최종 디자인에 ‘확정’ 도장을 찍고 싶지는 않았습니다. 고쳐야 할 버그가 하나씩 남아 있었고, 추가하고 싶은 작은 기능도 늘 있었죠. 예를 들어 클래식한 Github 기여 타임라인과 저장소용 그래프 기반 디자인, 이렇게 두 가지 디자인과 레이아웃을 제공하고 싶었습니다. 이럴 때는 공동 창업자가 있으면 도움이 됩니다. Wolfgang은 MVP에 여러 레이아웃이 필요하지 않으며, 일찍 사용자 피드백을 받지 않는 한 우리가 어떤 결과물을 내놓든 아마 틀릴 것이라고 설득했습니다. 그의 말이 맞았습니다. Wolfgang이 없었다면 이 쇼핑몰은 아마 지금도 출시되지 않았을 겁니다. 일찍 출시한 덕분에 이제는 사람들이 무엇을 보고 싶어 하는지 훨씬 명확하게 알게 됐습니다. 알고 보니 사용자들은 그래프 기반 디자인에 별로 관심이 없었고, 그걸 만드는 데 시간을 썼다면 낭비였을 겁니다.
배운 점: 제품을 만드는 규칙을 모두 알고 있어도, 실제로 처음 적용해 보면 이야기가 다릅니다. 쇼핑몰 기능에 완전히 만족하는 날은 아마 오지 않겠지만, 일단 일찍 출시한 뒤 나중에 조금씩 개선하는 편이 낫습니다.
소프트웨어 개발은 쉽습니다
시작할 때 가장 큰 걱정은 소프트웨어 개발이었습니다. 프런트엔드와 백엔드를 코딩하고 서로 연동해야 했습니다. 사이트에 사용자가 많아졌을 때 Github의 요청 제한에 걸리고 싶지도 않았습니다. 어떤 웹 프런트엔드를 사용할지도 많이 고민했습니다. Yew를 사용해 Rust로 만들까, 아니면 Gatsby를 사용하는 편이 나을까?
그런데 막상 해 보니 코드를 작성하는 일이 가장 쉬웠습니다.
우리는 소프트웨어 엔지니어였기 때문에 백엔드 API를 구현하는 데 오랜 시간이 걸리지 않았고, 프런트엔드에 사용할 괜찮은 템플릿도 금방 찾았습니다. 대부분의 시간은 제품, 사용자 경험, 자금 조달, 세금, 배송 과정, 마케팅, 고객 피드백 반영을 고민하는 데 썼습니다. 이런 일들은 제가 경험이 거의 없었고, 지금도 마찬가지입니다.
Wolfgang은 빨리 시작하려면 “그냥 Shopify와 기본 템플릿을 사용하자”고 제안했습니다. 돌이켜 보면 정말 옳은 결정이었습니다. 저는 늘 Shopify가 단순한 소규모 상점을 위한 서비스라고 생각했는데, 실제로는 커스터마이즈할 수 있는 부분이 매우 많았고 거의 무엇과든 잘 연동됐으며, themekit 같은 훌륭한 도구도 제공했습니다. 결제, 환불, 할인, 고객 분석까지 모두 플랫폼에 내장돼 있습니다. 덕분에 개발 시간을 정말 많이 아낄 수 있었습니다.

배운 점: 프로젝트를 시작하면 미지의 미지, 즉 우리가 인지하지도 못하고 이해하지도 못하는 일이 많이 생깁니다. 시간을 절약하고 매몰 비용의 오류를 피하려면 가능한 한 빨리 문제의 근본 원인에 도달하도록 하세요.
사용자는 훌륭한 UI/UX를 기대합니다
Amazon, Facebook, Netflix 같은 거대 기업들은 뛰어난 UX에 대한 고객의 기대치를 끌어올렸습니다. 이들은 웹사이트를 다듬고 모든 세부 사항을 완성하는 데 수백만 달러를 씁니다. 그 결과 수백만 명의 고객이 어떤 기기를 사용하든 사이트가 정말 ‘딱 맞게’ 작동합니다.
독립 쇼핑몰에는 이런 자원이 없습니다. 그럼에도 많은 고객은 자신이 이용하는 다른 사이트와 똑같은 수준의 사용자 경험을 기대합니다. 처음으로 반대편 입장에 서 보니, 사람들의 90%에게 제대로 작동하는 사용자 인터페이스를 만드는 일이 얼마나 어려운지 알게 됐습니다. 입력 필드의 순서처럼 사소해 보이는 세부 사항 하나하나가 엄청난 차이를 만듭니다. 세부 사항을 너무 많이 잘못 처리하면 고객을 잃게 됩니다.
이런 문제는 실제 사용자가 제품을 사용하는 모습을 지켜봐야만 발견할 수 있습니다. 정말 시야가 확 트이는 경험이 될 거라고 약속할 수 있습니다!
배운 점: 잠재 고객이 서비스를 사용하는 모습을 지켜보세요. 처음에는 고통스럽겠지만 제품의 품질을 높이는 데 도움이 됩니다. 가능하다면 쇼핑몰용 표준 프레임워크를 사용하세요. 기본 설정만으로도 UI/UX의 많은 세부 사항이 제대로 갖춰져 있기 때문입니다. WooCommerce나 Shopify를 생각해 볼 수 있습니다.
제품을 만든다는 것은 실용적으로 판단하는 일입니다
앞으로 만들고 싶은 제품 아이디어가 많습니다. 친구와 고객들은 잠재적인 기능을 끊임없이 이야기해 주지만, 문제는 우선순위를 정하는 일입니다. 대부분의 아이디어는 규모를 키워도 작동하지 않습니다. 제품을 판매하면서도 가격이 저렴하고 전 세계로 배송하며 쇼핑몰 시스템과 제대로 연동되는 공급업체를 찾기란 쉽지 않습니다. 그래서 공급업체의 지원이 충분하지 않다는 이유만으로 제품 아이디어를 정기적으로 폐기해야 합니다. 게다가 본업과 다른 책임을 병행하며 사업을 운영하고 있으므로, 시간을 최대한 효율적으로 활용해야 합니다.
배운 점: 서비스가 아무런 노력 없이 작동하는 것처럼 보이게 만드는 일은 고된 작업입니다. 시간은 가장 큰 제약입니다. ‘예’라고 말할 수 있는 횟수보다 ‘아니요’라고 말해야 하는 횟수가 더 많을 겁니다.
를 사용해 보면 좋겠습니다.](https://endler.dev/2021/codeprints/whereby.jpg)
소규모 사업으로 견인력 얻기
쇼핑몰을 출시하기가 지금처럼 쉬웠던 적은 없습니다. Shopify, Stripe, 수많은 공급업체 같은 서비스 덕분에 시작이 아주 간단해졌습니다. 반면 진입 장벽이 이렇게 낮아진 만큼 경쟁도 훨씬 치열해졌습니다.
수천 개의 서비스가 끊임없이 우리의 관심을 두고 경쟁합니다. 게다가 요즘 대부분의 고객은 쇼핑할 때 Amazon, AliExpress, eBay 같은 대형 플랫폼을 기본적으로 이용하고, 검색 엔진도 트래픽의 상당 부분을 이런 곳으로 보냅니다.
우리 제품은 주문 제작 방식이므로 이런 대형 플랫폼에서 판매할 수 없습니다. 독립 쇼핑몰인 우리는 주로 입소문, 뛰어난 고객 지원, 그리고 개발자들이 모이는 곳에서의 광고를 통해 방문자를 얻습니다. 예를 들면 Twitter, Reddit, HackerNews, Lobste.rs, 그리고 친구들입니다. 이런 플랫폼에서는 가치를 제공하는 데 집중하는 것이 중요합니다. 단순한 마케팅 게시물로는 누구의 관심도 끌 수 없습니다. LinkedIn, Facebook, ProductHunt, IndieHackers 같은 다른 플랫폼도 효과가 있을 수 있지만, 우리의 타깃 고객인 활발한 Github 프로필을 보유한 오픈 소스 개발자들은 그곳에 그다지 많이 모이지 않습니다.
배운 점: 고객이 어디에 있는지 항상 파악하고, 고객의 필요를 이해하세요.
틈새시장을 찾는 것은 일의 절반일 뿐입니다
시장에서 흔히 통하는 지혜는 틈새시장을 찾고 그 안에서 성장하라는 것입니다. codeprints를 통해 우리는 분명 틈새시장을 찾았습니다. 대상 고객층은 매우 좁지만 우리의 괴짜스러운 제품에 관심이 있습니다. 오늘날 Github에는 5,600만 명의 개발자가 있습니다. 상당히 큰 타깃 시장이죠. 하지만 대부분의 프로필은 그다지 활발하지 않습니다. 인쇄물이 매력적으로 보이려면 오랜 기간, 즉 수년 동안 꾸준히 코드를 커밋해야 합니다. 개발자 중 활동적인 사람이 1%뿐이라고 가정하면 타깃 고객은 56만 명으로 줄어듭니다. 여전히 큰 시장이지만 훨씬 작아졌습니다. 이제 이들 중 1%만 쇼핑몰을 찾아와 무언가를 주문한다고 해 보죠. 꽤 좋은 전환율일 텐데도 총주문량은 5,600건입니다. 그리 많지 않죠!
이 고객층을 넓히려면 잠재 고객의 수를 늘리거나, 기존 잠재 고객 중 더 많은 사람을 페이지로 유입시켜야 합니다. 우리는 1년 단위 레이아웃을 제공해, 멋진 인쇄물을 만드는 데 필요한 Github 활동량을 낮추는 방식으로 확장했습니다. 비어 있는 프로필도 더 흥미롭게 보이게 하고 오픈 소스 기여가 만들어 내는 가치를 강조하는 작업도 진행하고 있습니다. 기여는 아무리 작아도 모두 중요합니다.
배운 점: 틈새시장이 너무 좁아서 지속 가능한 사업을 만들 수 없게 되는 일이 없도록 하세요.
 같은 얼리 어답터는 시작할 때 정말 소중합니다. 물론 모두가 이런 스타 개발자급 프로필을 가진 것은 아닙니다. 그래도 괜찮습니다.](https://endler.dev/2021/codeprints/tweet_orta.jpg)
사용자 피드백을 실행 가능한 형태로 만드세요
초기 고객의 피드백은 소중합니다. 이 고객들은 여러분의 제품을 믿고 성공하기를 바라기 때문에, 그들이 하는 말 하나하나에 집중해야 합니다. 결국 지갑으로 투표한 사람들이니까요. 친구들의 피드백도 도움이 되지만, 저는 보통 더 큰 필터를 거쳐 받아들입니다. 제 친구들이 모두 소프트웨어 개발자인 것은 아니고, 모두 선의로 말해 주더라도 그들이 말하는 내용이 실제 의도와 다를 수 있습니다. 자동차를 원하는 사람이 ‘더 빠른 말’을 요구하는 것과 비슷합니다. 더 빠른 말을 원한다고 말하지만, 사실 원하는 것은 자동차인 셈이죠. 소셜 미디어의 피드백은 때때로… 비꼬는 말투를 띨 수 있습니다. 그런 상황에 대비하세요! 여러분의 일은 모든 말에서 진실의 알맹이를 찾아 건설적인 조언에 집중하는 것입니다.
예를 들어 우리가 받은 이 피드백을 보죠.
이걸 36유로씩이나 내고 사다니, 얼마나 게으른 거야.
이 말을 건설적인 피드백으로 바꿔 볼 수 있습니다.
제가 직접 인쇄할 수 있는 더 저렴한 버전도 받을 수 있나요?
이건 꽤 가치 있는 피드백입니다. 앞으로 다운로드 가능한 버전을 제공할 수도 있겠네요!
배운 점: 사용자 의견에서 실행 가능한 피드백을 뽑아내고 이를 제품의 비전에 맞추려면 연습이 필요합니다.
정리
2020년은 정신없는 한 해였습니다. 저는 codeprints와 analysis-tools.dev라는 작은 사이드 비즈니스 두 개의 출시를 도왔습니다.
두 사업은 수익 모델이 완전히 다르지만, 한 가지 공통점이 있습니다. 만드는 과정이 정말 재미있었다는 점입니다! 🤩 가끔 이런 성과를 돌아보면 동기 부여가 됩니다… 2020년을 인쇄한 저 작품은 제게 이런 감정을 거의 그대로 담고 있습니다. 8월과 9월에 더 초록색으로 보이는 부분은 analysis-tools를 출시한 시기이고, 12월의 부분은 codeprints를 만든 날들입니다.

2021년에도 더 많은 제품을 만들기를 바랍니다.
이 글이 도움이 됐는지 알려 주세요. 궁금한 점이 있다면 언제든 연락해 주세요. 아, 그리고 홈 오피스를 꾸밀 독특한 방법을 찾고 있다면 codeprints에서 나만의 인쇄물을 만들어 보는 건 어떨까요? 😊
추신: 제품 책임자이며 팀을 위한 특별한 선물을 찾고 있다면 연락해 주세요. 비공개 베타 초대장을 가장 먼저 받을 수 있습니다.
글을 무작위로 읽기