brunch

You can make anything
by writing

C.S.Lewis

by 이정훈 May 30. 2018

흔한 문과생의 프로그래밍 도전기 (1)

기획자의 개발 공부 일지

∙ 이 매거진은 IT 스타트업 굿너즈의 탄생부터 현재까지의 이야기를 담아내고 있습니다.

∙ 이 매거진은 연재물입니다. #1화부터 읽어주시면 감사하겠습니다.


개발자가 되고 싶었다.



앱 서비스를 만드는 게 (20대 중반의) 가장 큰 목표였고 내가 직접 개발하는 게 가장 돌아가지 않는 길이라 생각했다. 창업 열풍(?)과 함께 비전공자 코딩 열풍도 불던 터였고 '문과생이 독학으로 개발자가 되는 경우'도 심심찮게 볼 수 있었다. 창업 관련 세미나에 가도 "창업자라면 스스로 제품을 만들 수 있어야 한다."는 말 뿐이었으니 내가 코딩 독학을 안 할 이유는 없었다. 그로부터 약 3년간 (막연하게 창업을 꿈꾸던 시절부터 지금까지) 3번의 '개발자 되기' 시도를 하게 된다.


결론부터 얘기하자면 나는 '개발자가 되기'를 완전히 포기했다. 다시는 팀원들에게 "나도 개발에 참여하겠다."는 이야기를 하지 않을 것이며, "6개월만 공부하면 웹사이트 하나 정도는 쉽게 만든다."는 말에도 혹하지 않을 것이다. 포기한 게 자랑은 아니지만 '개발에 쏟았을 에너지를 다른 곳에 투자해 더 좋은 효율을 내고 있다.' 정도는 말할 수 있다. 이번 화에서는 1) 나의 3전 3패 실패 후기2) 개발을 안 하는 것도 하나의 선택지가 될 수 있다 에 대해 이야기해볼까 한다. (문과생의 프로그래밍 독학 방법론으로는 Andrew Younghwi Cho님의 글을 추천한다.)



< 3번의 도전 그리고... >


처음 프로그래밍의 필요성을 느낀 건 아마추어 아티스트가 작품을 공유할 수 있는 플랫폼을 만들고 싶을 때였다. 블로그가 플랫폼의 역할을 하기는 힘들 것 같아 '웹사이트를 만들어야겠다'는 생각을 했고 검색 끝에 찾은 게 바로 Wix였다. (사실 프로그래밍은 1도 안 해도 되는 서비스다.) 블록을 조립하듯 사이트를 만들어봤지만 좀 더 자유도를 갖고 만들어보고 싶어 졌다.



멋쟁이 사자처럼과 루비 온 레일즈



바로 그때 '이거다.' 싶은 게 등장했다. 바로 멋쟁이 사자처럼이다. 멋쟁이 사자처럼은 현업 개발자와 전공자가 비전공자(문과생)들에게 프로그래밍을 가르쳐주는 비영리 교육과정이다. 지원자는 온라인 서비스를 기획하여 선보이고 그중 합격점을 받은 사람만이 교육을 받을 수 있는 방식이었다. 하지만 비즈니스 모델이 부실해 탈락을 하게 되었다. 다행히 그들은 독학을 할 수 있는 좋은 자료(코드 라이언)를 알려주었고 난생처음 프로그래밍이라는 것을 접하게 된다. (신난다!)



독학을 하며 계산기나 로또 번호 뽑기 등 간단한 프로그램을 만들고, AWS에서 서버를 사고 도메인(www로 시작하는 주소)도 달아보고, HTML, CSS 등을 이용해 사이트의 외관을 만들어도 봤지만 '이게 도대체 어떻게 실제 서비스가 되는지' 감이 안 왔다. 독학의 한계를 느낄 때쯤 내가 주 언어로 공부하던 '루비 온 레일즈' 스터디가 있는 오픈 컬리지에 들어가게 되었다. 하지만 기대와 달리 독학의 연장선이었고 실력은 제자리를 걸었다.



자바를 자바 그리고 안드로이드



내가 사칙연산 수준에서 헤매고 있을 때 동네 친구 H는 자바를 이용해 간단한 게임도 만들고 안드로이드 앱을 만들고 있었다. 막연하게나마 미래를 도모한(?) 사이였기 때문에 이참에 나도 자바와 안드로이드로 갈아타야겠다는 생각을 했다. 마침 오픈 컬리지에도 안드로이드 앱을 만드는 스터디가 있어 냉큼 열차에 올라탔다. (프로젝트 이름이 '자바를 자바'였다.) 현업 개발자가 호스트였고 '실제로 앱을 만들어보는 게' 이 프로젝트의 목표였기 때문에 재미도 있고 나름의 진전도 있었다.



스마트폰에 앱이 뜨니 개발자가 된 줄 알았다.




당시 만들었던 앱이 '자기소개 기반 이상형 월드컵'이었다. 모든 프로세스를 이해하진 못했지만 일단 내 손으로 작성한 코드로 앱이 뜨는 걸 보니 개발자가 될 수 있는 경계(?)를 넘었다는 생각이 들었다. 하지만 막상 창업을 결심하고 진짜 서비스를 개발하려 하니 차원이 다른 막막함이 찾아왔다.


앱의 겉모습은 어떻게 만든다 쳐도 회원가입 같은 기능은 어떻게 만드는 거지?
사진과 글 같은 데이터는 어디에 저장하지?
앱을 어떻게 온라인으로 만들지?


안드로이드 스터디에서 만든 앱은 서버리스 앱(인터넷 통신이 필요없는 앱)이었다. 나는 클라이언트 (앱의 보이는 부분) 개발만 경험했을 뿐 서버, 데이터베이스에 대한 개념조차 없었던 것이다. (앱의 안 보이는 부분을 보지 못했다.) 게다가 실제로 만들어보려 했던 서비스는 팀빌딩 후 기획 단계에서 엎어졌다.  



패스트 캠퍼스 그리고 node.js



나의 마지막 기회는 지금 운영하고 있는 '우주챗'과 함께 찾아왔다. 이번엔 두 명의 개발자와 함께 하게 되었고 그들과 함께 까만 화면(에디터)를 띄워놓고 개발을 하는 게 내 소망이었다. 우주챗은 기획 -> 디자인 -> 클라이언트 개발 -> 서버 개발 순으로 개발 계획을 세웠다. 기획을 하는 단계에서 시간 여유가 생겼고 프로그래밍을 정말로 끝장낼(?) 마지막 수단을 찾게 된다. 바로 패스트 캠퍼스다.



독학과 스터디를 거치면서 정규 과정에 대한 갈망이 생겼다. 제대로, 기초부터 시작해 하나의 서비스를 완성하는 데 필요한 모든 것을 배우고 싶었다. 이런 저런 검색을 통해 알게 된 가장 좋은 선택지가 패스트 캠퍼스였다. (수강료는 비싸지만 단기간에 실무 역량을 키우기 가장 좋은 곳이다.) 강사님 또한 이 바닥에서 꽤 유명한 분이었다. (안수찬 강사님 - 지금은 서바나링으로 유명한 매디컬 팩토리에서 개발을 하고 계신 것 같다.) 이번에는 클라이언트부터 서버, 데이터베이스까지 '앱을 만들 수 있는 모든 기술'을 배울 수 있게 됐다.



천천히, 그 어느 때보다 진지하게 다시 시작했다.



(다음 화에 이어서...)






글쓴이는 현재 스타트업 GOODNERDS에서 앱 서비스 기획과 디지털 마케팅을 담당하고 있습니다. GOODNERDS는 질문에 답을 하며 새로운 관계를 형성하는 익명 SNS 우주챗을 개발 및 운영하고 있습니다.

매거진의 이전글 오픈 컬리지로 성장하기
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari