2021. 5. 1. 22:35ㆍThoughts
프로그래밍에는 모듈화라는 개념이 있다. 하나의 파일 안에서 인라인으로 모든 코드를 다루기에는 효율성이 떨어지기 때문에, 기능 별로 파일을 분리해서 따로 관리하는 방식을 말한다. 이렇게 하면 코드의 유지/보수가 상당히 쉬워지고, 코드의 재사용성이 높아지며, 코드의 의미를 파악하기가 쉬워진다. 특히 다른 사람이 만든 모듈(third-party module)을 가져다 쓰는 경우에는 그 기능을 구현하고 업데이트하느라 직접 고생하지 않아도 된다. 해당 기능이 만들고자 하는 서비스의 핵심 요소가 아닌 경우에는 더욱 그렇다. 채팅 API를 판매하는 B2B SaaS 스타트업 센드버드가 최근 유니콘이 되었는데, 채팅 기능을 구현하는 데 들어가는 개발자들의 피 땀 눈물을 생각하면 왜 이제야 유니콘이 되었는지 의아스러울 정도이다. 모듈화는 마치 레고 블록 같은 느낌으로, 이 외에도 무궁무진한 장점이 있다. 코딩에서는 너무나도 당연한 개념이라 이렇게 설명하는 것이 무안할 정도다.
인간의 생활은 다방면에서 모듈화되고 있다. 각자 자신에게 정말 중요한 일에만 집중할 수 있도록, 이외의 분야에 대해서는 모든 허드렛일을 누군가 대신 해주고 있고 이 양상은 앞으로 더욱 가속화될 것이다. 공유 오피스는 수많은 기업들이 리스크를 지지 않고도 좋은 시설에서 일하는 데 오롯이 집중할 수 있도록 도와준다. 기업 활동에 가장 중요한 요소 중 하나인 사무실이라는 부분에 패스트파이브나 위워크가 제공하는 모듈을 끼워넣어 쓰는 행태라고 이해할 수 있다. 요즘 핫한 세탁 대행업도 마찬가지이다. 집 앞에 빨랫감을 두기만 하면 세탁특공대나 런드리고가 깨끗하게 세탁해서 갖다준다. 개인의 삶이라는 프로그램에 세탁대행업 모듈을 꽂아서 쓰는 것이다.
그리고 이건 그냥 러프한 생각이지만 비슷한 맥락에서 창업 1세대(삼성, 현대, 롯데) 때와 지금이 달라진 점이 하나 있다면, 과거에는 하나의 기업이 여러 분야에서 수평적으로 활동하는 것이 일반적이었다면, 지금은 하나의 기업이 한 분야에서 수직적으로 활동하는 것이 표준이 되었다는 점이다. 무신사, 오늘의집, 토스, 야놀자를 보면 알 수 있다.
창업 아이디어와 연관 지어보면 - 사실 성공하는 모든 (Make life easier 타입의) 아이디어는 각자 어떤 면에서는 모듈의 특징을 가지고 있다. 따라서 새로운 아이디어를 떠올렸다면 거꾸로 자문해보는 것이 도움이 될 것이다. 내 아이디어는 과연 어떤 부분(버티컬)에서 사람들의 모듈이 되어줄 수 있을까? 이 질문에 명쾌하고 자신있는 대답을 하지 못한다면 아마 실패할 아이디어일 가능성이 높다. 결국 많은 창업가들이 하는 말과 똑같은 이야기다. Y-Combinator의 만트라처럼 "Make something people want"! 내 경우에는 모듈화의 개념을 빌렸을 때 이 말이 더욱 이해가 잘 되었어서, 내 생각을 공유해보았다.
'Thoughts' 카테고리의 다른 글
첫번째 프로젝트를 돌아보며 (6/9 수정) (0) | 2021.06.08 |
---|---|
내가 사업에 갖는 의미의 중요성 (센드버드 김동신) (0) | 2021.05.27 |
[스탠포드 스타트업 #4] Building Product, Talking to Users, and Growing (0) | 2021.05.17 |
내가 만들고 싶은 것과 사람들이 필요로 하는 것 (0) | 2021.04.26 |
기록 남기기 (0) | 2021.04.22 |