일단 시작해 보기
밤 12시 검정 바탕 모니터에 하얀색 커서가 고요하게 깜빡인다. 커서의 템포에 맞게 머리를 좀 굴려본다. 조금 빠른 듯 하지만 집중이 필요한 시간이니 이 정도 속도가 적절하다. 한참을 모니터를 들여다보며 텍스트 더미를 뒤적이더니, 고개를 갸웃이며 잠시 골똘히 생각한다. 이내 납득이 되었다는 듯 키보드를 두드리기 시작한다. 코딩을 할 때는 영화에서 나오는 천재 해커처럼 빠르게 두드릴 필요는 없다. 왼쪽 엄지는 command, 오른쪽 검지는 n, 변수명을 지어주고는 다시 command + shift + l. 생각의 속도를 따르기엔 단축키 몇 번이면 충분하다.
때는 바야흐로 개발자의 시대다. 한때는 3D 업종이네, 야근을 밥먹듯이 하네 하며 다들 기피하던 직종이던 때가 있었는데, 사짜 돌림 직업까지는 아니더라도 누군가의 선망의 직업이 될 줄이야. 역시 사람일은 모르는 법이다. 기피 업종이 인기 직종이 된 일도 그렇고, 인문학 전공자인 내가 개발자가 된 것도 그렇다. 쓸모가 없기에 쓸모 있는 것이 인문학이라 배웠기에, 쓸모없는 것만 배우느라 할 줄 아는 것이 아무것도 없다고 느꼈다. 그때는 그래서 뭔가 하나라도 할 줄 아는 사람이 되고 싶었다.
사람들 머릿속 개발자는 어떤 존재일까. 만성피로와 근골격계 질환에 시달리면서 컴퓨터 앞을 떠나지 못하는 현대판 지식노동자인가 아니면 뭐든 뚝딱하고 금방 만들어 낼 수 있는 새 시대에 걸맞은 능력자인가. 적어도 나는 후자라 생각했던 것 같다. '그냥 직장인인 개발자는 되지 말자'던 회사 선배의 말이나 '좋아하는 일을 하는데 돈까지 준다'던 어느 스타 개발자의 말이 공감을 얻는 걸 보면 나만 그렇게 생각했던 건 아니었나 보다. 하지만 반대로 저런 말들이 기억에 남는 건 그만큼 '그냥 직장인'인 개발자로 남기가 쉽다는 반증이 아닐까.
후자보다는 전자에 가까운 삶을 살고 있다고 느꼈을 때, 내가 그래서 뭐라도 되나 하는 무력감에 빠져 알고리즘의 바다에서 허우적댈 때, 나에게 알고리즘이 하나의 길을 제시한다. 도파민이 터져 나오는 제목과 함께.
대학생의 10만 사용자 어플 개발 후 매각 후기
안드로이드 어플 3일간 만든 앱 수익공개
월 수익 1300만 원! 실제 앱 운영자의 리얼 인터뷰
당연하게도 처음부터 완벽을 바라서는 아무것도 할 수 없다. 완벽한 프로젝트를 계획하고 있다면 해야 할 일들이 많을 거다. 팀원도 모아야 하고, 회의 시간 약속을 하고, 아이디어 회의를 하고, 기획과 디자인을 구체화시키고, 개발 일정을 잡고. 이렇게 하려다간 두 달 세 달이 지나도 당신의 서비스는 빛을 보지 못할 거다. 안타깝게도 당신의 열정은 한 번도 불타오르지 못한 채로 다시 가슴속 어딘가에서 어느 빅테크 대기업의 알고리즘에 몸을 맡기겠지. 바로 사이드 프로젝트 절망 편이다. 만일 당신이 첫 사이드 프로젝트를 시작할 예정이라면 어렵고 따분한 일들은 모두 집어치우자. 개발자가 가장 잘할 수 있는 Hello world로 시작하자.
화려하지 않아도 좋으니 내가 사용할만한 서비스를 만들기로 했다. 아이디어는 심플했다. 나는 계획적인 사람은 아니지만 매일 조금 더 나아지기를 바라는 사람이다. 계획적인 삶을 살고 싶어 TODO 앱을 여럿 사용해 봤으나 매번 실패했다. 꽉 짜인 하루가 나에겐 맞지 않는 듯하기에. 나처럼 '할 일' 관리가 어렵다면 '한 일'을 적어보면 어떨까.
Hello world 와 함께 호기롭게 시작했다면 이미 절반쯤 성공한 것이나 마찬가지다. 날짜와 한 일과 도장을 찍을 수 있게 해주는 아주 단순한 내 첫 서비스는 아직 사용하기에 부족한 것이 많았다. 하지만 사용하기에 부족함을 드러내는 것으로 충분히 그 역할을 했다. 제대로 된 기획, 디자인, UX, 시장조사 이런거 다 제쳐두고 떠오른 프로토타입 개발을 먼저 시작한다. 가장 빠르게 결과물을 만들고 더 필요한 것이 있다면 다음 스텝으로 개선하자. 처음부터 욕심부리면 체한다.
사실 쓸만한 앱을 만들려면 고민이 필요한 부분이 한 두 가지가 아니다. 하루 쓰고 말 것이 아니니 날짜를 선택할 수 있어야 하고, 사람마다 활동 시간이 다르니 화면에 표시되는 시간 범위도 설정할 수 있어야 했다. 오늘의 목표를 적는 작은 메모도 있어야 의욕이 생길 것 같았고, 용돈 벌이라도 하고 싶었기에 광고도 작게 넣었다. 하지만 딱 거기까지만. 사용하기에 불편함이 없는 가장 작은 스펙에서 서비스를 오픈해야 한다.
디자인에 어울리게 로고도 만들고. 앱의 이름도 지어야 했다. 데일리리포트 앱을 쓰는 사람들이 바르게 생활 했으면 좋겠다는 마음을 담아 앱 이름을 '바른생활'로 정했다. 어릴 적에는 언제나 '참 재미있었다'로 끝나는 일기만 써와도 '참 잘했어요' 도장을 받고는 했다. 바른생활 교과서를 보고 자란 그 시절처럼, 우리 앱 사용자들이 한 일을 솔직하게 적기만 해도 '참 잘했어요' 도장을 주고 싶었다. 공들여 개발한 앱을 배포까지 마무리한 후에 브런치에 소개글 하나를 적고서 나의 첫 사이드 프로젝트 오픈을 완료했다.
첫 오픈까지의 과정을 너무 단순하게 요약했다. 첫 시도라면 가장 단순한 서비스를 오픈한다고 해도 걸림돌이 많을 거다. 개발 스택을 정하고, 새 기술과 언어를 배워야 할 수도 있다. 빌드도 배포 방법도 새로 배워야 하지만. 그런 기술적인 이야기는 여기서 하고 싶은 이야기가 아니다. 그런 문제들은 수많은 책과 영상에서 어떻게든 당신에게 해결법을 가르쳐주고 싶어 안달이 나있다. 개발을 할 줄 알고, 개발하려는 의지가 있다면 당신도 해결할 수 있을 거라 믿는다. 그리고 골치 아픈 기술 이슈들은 오히려 개발자에게는 포상이다.
앞서 이야기한 것처럼 어려운 일들은 제처 두고 어찌 되었든 오픈만을 향해 달리기를 응원한다. 보여주기 부끄럽더라도 좋다. 적당히 못 본 척 흐린 눈을 해도 좋다. 첫 오픈 후에 사용자는 아무도 없을 수 있다. 아주 평범한 시작이다. 첫 시도에서 우리가 얻어가야 할 것은 첫 번째 사이클을 완료하고서 무엇이든 만들 수 있는 능력을 얻었다는 사실을 아는 것. 회사일 말고도 무언가 생산적인 것을 해낼 수 있다는 자신감이다. '잘 만들고 싶다'는 마음은 과한 욕심이다. 많은 시도 후에야 얻을 수 있는 결과물을 첫 번째 시도에 얻고자 하는 욕심이다. 과한 욕심을 부리면 제풀에 지쳐 끝까지 개발하지 못하고 포기하고 만다.
잘 만들고 싶다는 욕심은 훗날 멀리 가기 위해 숨겨두고 더 키우는 편이 좋다. 오히려 더 크게 키워두지 않는다면 골치 아픈 문제들 앞에 조금씩 닳아 없어 져버릴지도 모르니. 지치지 않고 놀라운 결과물을 만들어내야 할 그날을 위해 조금 더 아껴두자.