인생을 걸고 개발을 배운다는 것

한 시간 안의 결정과 시작.

작년 10월말 페이스북 메신저로 누군가 만나자는 연락이 왔다. 당시 한중청년불패 때문에 매우 바쁜 일정이었는데, Stage5라는 기업가정신(Entrepreneurship) 커뮤니티를 통해 건너서 알던 김인기 Ingi Kim라는 친구였다. 처음엔 그저 다른 친구들처럼 일반적인 스타트업 창업에 대한 조언을 구하는 줄 알고, 마침 우연찮게(?) 다음날 오전 일정이 비어서 바로 만나게 되었는데, 우리는 이런 것을 두고 연(緣)이라 부른다.

당시 나는 한국에서 진짜 스타트업에 필요한 소프트웨어 엔지니어가 부족하다 생각하고 있었고, IT 대기업이나 SI(System Integrator) 분야의 전문적인 Enterprise급 엔지니어들은 많겠지만 full-stack engineer, 정말 한 분야 기술에는 깊지 않더라도 인터넷, 모바일 제품/서비스를 만들기 위한 다양한 최신 기술들을 자유자재로 활용하고 모험할 수 있는 엔지니어들이 참 부족하다고 느끼고 있던 차였다.

그저 코딩 교육, 개발 교육이 아닌 프로그래밍 부트캠프(Programming Bootcamp)는 무엇인가?

미국에서는 이미 스타트업들의 소프트웨어 엔지니어 수요 때문에 Programming Bootcamp라는 이름의 새로운 개발교육 과정들이 운영되고 있었고, 당시 얼마전 뉴욕에서 General Assembly라는 Programming Bootcamp를 설립한 Jake Schwartz라는 친구도 한국 방문했을 때 따로 만나기도 했었는데다, FlatIron School, App Academy, Full Stack Academy, MakerSquare 등 많은 민간 기관에서 소프트웨어 엔지니어들을 양성하고 있었다.

그렇게 처음 만나게 된 김인기 대표는 그 중 실리콘밸리의 Hack Reactor를 막 졸업했고, 자신의 경험이 너무나도 좋았으며 $20,000에 가까운 비싼 돈 들여서 졸업했지만 실리콘밸리 스타트업들의 취업 Offer들을 거절하고, 한국에서 꼭 이런 과정을 만들어봤으면 한다는 자신의 생각을 내게 털어놓았다. 그때 내가 궁금했던 왜 이런 실리콘밸리와 앨리(NewYork 지역 스타트업을 Silicon Alley라 부른다)에서 프로그래밍 부트캠프들이 인기가 높고 취업률이 높은지 그 이유를 확실히 알게 되었다.

“좋아요. 같이 해보죠.”

한 시간도 안 되어 내가 내린 답변이었다.

일단 먼저 걱정부터 들었다. 한국에선 교육 플랫폼 아닌 이상 절대 투자유치하기 어려운 ‘교육 분야’인데다가, 이미 이 친구가 졸업하고 한국 왔다고 하니 당연히(?) 스타트업을 창업하리라 기대하고 만났던, 그 만나기 어렵다는 거의 어지간한 국내 투자자 분들은 몇몇 분을 제외하곤 아이러니하게도 하나같이 ‘규모가 안 나오는 일이다. 교육사업은 우린 잘 모르겠다’라는 말 뿐이었다고 한다.

내가 빠르게 결정내린 그 이면에는 그간 스타트업에서 필요하다 생각했던 개발자 구하기 힘들었던 많은 경험들과 이 친구가 앞으로 겪을 많은 고초들이 눈앞에서 펼쳐졌기 때문일 것이다. 그래서 Lean Startup이 별 것인가, 사람들이 얼마만큼 개발을 간절히 배우고 싶어하는지 주변에 개발자도 별로 없는 내 개인 페이스북에 한 번 올려봤다.

날짜를 보니 아무래도 12월 방학 기간을 앞두고 배우겠다는 친구들을 위해 빠르게 준비해야 했다. 물론 교육이 한참 이상한 길을 가버린 헬조선의 특성(?)답게 준비과정에서 매우 많은 시행착오들이 있었는데, 어찌하여 약 1달 후 12월에는 아래와 같은 꽤 큰 규모의 설명회를 가지게 되었고, 1월부터 시작단계인 Pre-course를 꽤 성공적으로 진행했고, 이제 본격적인 단계인 Immersive Course를 시작했다. 우리가 알고 있는 실리콘밸리의 Programming Bootcamp의 과정이다.

정말 감사하게도 많이들 오셨다. 옴마야(…) 너무 힘들어서 앞으론 이런 큰 대규모 설명회는 하지 않기로 했다(…)

우리의 개발교육은 무엇이 문제일까?

난 어려서부터 운좋게 컴퓨터 키즈로 자라왔고, 당시의 컴퓨터를 배운다는 것은 지금의 윈도우나 OS/X 같은 그래픽 환경이 아니라 텍스트로만 표현되는 DOS시절, 컴퓨터를 쓸모있게 쓰기 위해서는 반드시 Basic으로 시작해 C, Fortran, Cobol, Assembly 등 많은 프로그래밍 언어를 접할 수 밖에 없었다. 나중에는 독학으로 HTML/CSS/Javascript를 배우고 내 지인들이 만든 Perl/CGI 코드들을 뜯어고쳤으며, PHP/JSP로 된 개발 라이브러리들을 가져다가 고쳐쓰며 살아왔다.

나는 개발자로서 자질은 없는 편이고, 직업적으로 소프트웨어 엔지니어는 더더욱 아니다. 소싯적 Windows 3.1/NT나오던 Win32 시절 호기롭게 독학으로 워드패드 같은 바퀴를 다시 재발명하다(유명한 격언 중 하나이다. Don’t invent the wheel, 개발하면서 비슷한 것들을 또 만들고 있는 것을 일컫는다) printer의 hardware 컨트롤이나 그래픽 처리관련 알고리즘 이슈들에 막혀서 중도포기했던 흑역사도 가지고 있다.

하지만 닷컴시절 1세대 큰 웹에이전시 중 하나인 홍익인터넷을 비롯해, 네이버에서 블로그와 카페 서비스를 만드는 과정, 초창기 네이버 모바일 서비스의 XHTML 페이지를 비롯 온갖 삽질들, 다양한 일들을 무수히 많은 개발자들과 함께 만들어온 경험을 가지고 있으며, 나름 스타트업에서도 다양한 제품/서비스를 만들면서 많은 개발자들과 일해본 경험을 가지고 있긴 하지만, 어디 CS(Computer Science) 전공했다고, 유명한 학원 어디 나왔다고 좋은 개발자가 된다는 것의 필요/필수조건은 아닌 듯 했다.

현재 우리 교육의 문제점을 이야기하자면 끝도 없겠지만, 일단 코딩 교육이나 개발 교육만 놓고 봤을 때 가장 심각한 문제는 너무나도 단편적으로 해당 언어들의 방법들만 다룬다는 것이다. 게다가 뭔가 뜬다하는 키워드들만 있으면 ‘빅데이터 전문가 과정’이네 ‘데이터 사이언티스트 양성과정’ 등, 심지어 최근 이야기하는 초등학생들을 위한 코딩교육까지 너무나도 많은 ‘교육 전문가’들께서 이런 일들을 하신다. 물론 나는 이런 교육 전문가나 교육 사업가는 더더욱 아니다.

실제 우리 수업 사진이다. Toy problem을 풀고 Whiteboarding을 하며, Pair programming을 통해 코드를 배운다.

그렇다면 스타트업에 진짜 필요한 개발자는 누구인가?

하지만 약 20년간 인터넷과 모바일, 게임분야 등에서 살아온 경험으로 자신있게 이야기하자면 이런 교육과정들은 결코 ‘제품’ 즉, ‘서비스’ 만드는 과정을 충분히 배울 수 있다고 생각되진 않았다. 내가 채용하는 입장에서 무수히 많은 개발자 친구들을 인터뷰했었고 같이 일해보기도 했었지만, 진짜 스타트업에 필요한 사람의 필요조건이란 건 좀 다르다고 생각했기에.

Java 장인 20년, PHP 초고수, 큰 IT기업 출신 개발자라고 해서 사실 스타트업에 당장 필요한 개발자일까? 물론 초기부터 멤버로 있으면 당연히 좋긴 하겠지만 스타트업에서는 초기 시작 단계부터 매우 규모가 안 나오는 하찮은(?) 일들을 하게된다. 기술적으로 깊이가 깊으면 당연히 좋지만 스타트업의 제품(서비스)이란 것은 농담삼아 리팩토링(재개발) 5만번 정도 하게 될텐데…

다른 큰 회사에서 높은 연봉 받으면서 원래 잘하던 일을 하실 수 있는 분들이 내 시간을 쪼개어 박봉으로 일하면서 이런 일들이 마냥 즐겁기만 한 일은 아닐 것이다. 또한 만들려는 제품이 아직 바퀴를 다시 발명하는 초기 단계이거나 그동안 안해본 일이나 기술들을 새로 배우는 즐거움 마저도 없다면 더더욱 쉽지 않은 일이다.

스타트업에 필요한 소프트웨어 엔지니어는 이런 기술적 깊이보다는 바로 이런 ‘제품’과 ‘서비스’를 만드는 과정을 즐길 수 있는 친구여야 한다는 게 내 생각이다. 내가 만난 대다수의 고급(?) 개발자 분들은 기술이 숙련될 수록 자신이 익숙하고 안정적인 시스템 위주로 구축하려는 경향을 보인다. 물론 절대로 이게 잘못되었다는 것은 아니지만, 첫 취업 면접부터 아르마니 수트를 입는 것과 무엇이 다를까.

김인기 대표의 인생샷이라고 한다.

그렇다면 프로그래밍 부트캠프는 무엇이 다른가?

낚시로 이야기하자면 고기를 잡기 위해 Flying 낚시대 사용법을 하나하나 알려주는 게 아니라 낚시대가 왜 필요하고 어떤 힘으로 고기를 낚는지, 고기는 어디에 있는지를 알려준다. 개발을 배우기 위해서 필요한 리소스들, 책과 구글링만 잘 해도 나오는 방대한 튜토리얼들은 넘쳐난다. 다만 우리가 개발을 잘 못 배우는 이유는 어떤 계기나 집중적으로 할 기회가 없기 때문인데, 프로그래밍 부트캠프는 그것을 해결하는 과정이다.

1기 Pre-course 참여하시는 분들과 본 과정인 Immersive Course를 이제 막 시작한 분들의 눈빛과 표정을 보면 알 수 있다. 정말 소프트웨어 엔지니어가 되거나 데이터 사이언티스트가 되었든 프로그래밍을 진정 배우고 싶어서 오신 분들, 어찌보면 기존 교육과정이나 다른 곳에서 개발 배우다가 그 갈증을 해결하지 못해서 오신 분들, 매우 다양한 분들이 제대로 배워보겠다고 오셨다. 그리고 그 중 정말 비전공이고 아무것도 알지 못했지만 매우 빠른 속도로 적응하고 학습하시는 분들도 꽤 있어서 그 열기는 옆에서 지켜본 사람 아닌 이상 절대 알지 못한다.

기존 실리콘밸리의 프로그래밍 부트캠프를 졸업한 친구들이 많이 도와주고 함께 시작했기에 내용들은 실리콘밸리의 최신 트렌드를 참고하긴 했지만, 사실 처음부터 끝까지 한국의 교육과정들을 감안해서 새로 만든 것에 가깝다고 할 수 있다. 홍콩이나 싱가폴 같은 아시아의 영어권 국가들에는 이미 그 지사들도 생겨나고 있다지만, 우리는 최소한 아시아에서는 경쟁력 있는 콘텐츠이자 프로그램으로서 자리잡을 수 있다고 생각한다. 언어가 문제가 아니라 문화적 차이도 결코 무시할 수 없기에.

심지어 실리콘밸리나 앨리 현지의 시선들도 이런 Programming Bootcamp들에 대해 매우 긍정적으로 바뀌고 있음은 아래 글에서도 확인할 수 있다.

Dillon Forrest — Sorry, developer bootcamps: I was wrong
Code/States의 Global Instructor들은 이런 회사들을 다녔거나 현재 다니고 있는 친구들이다. 지금은 점차 한국 스타트업의 엔지니어들도 확대하고 있다.

결국 어떤 사람들이 하는 일이냐에 따라 다를 것이다.

이 차이점을 잘 알고 계신 분들이 벌써 관심을 가지고 먼저 연락주셔서 다양한 파트너들과 이야기를 시작했다. 글로벌 ICT 기업의 한국 branch부터 시작해서, Stanford나 Carnegie Mellon 같이 CS로 유명한 학교들 졸업하고 한국에서 창업한 스타트업들의 CEO나 CTO분들은 이미 초기과정 부터 관심과 조언, 도움을 주고 계시는 것을 보면 우리 멤버들이 더 열심히 과정을 만들고 운영해야겠다는 생각이 든다.

구글이나 에어비앤비를 비롯한 유명한 스타트업들 외에도 실리콘밸리에서 가장 유명한 투자자 중 하나인 안데르센 호로위츠(Andreessen Horowitz)의 투자 파트너로 스택 오버플로우(Stack Overflow)와 버즈피드(Buzzfeed)를 투자했던 Preethi Kasireddy같은 친구들도 본인도 프로그래밍을 직접 배워 우리 Instructor로 참여할 정도이니깐. (그녀의 글 Why I left the best job in the world는 꼭 읽어보시길)

물론 이외에도 정말 많은 좋은 친구들이 우리를 도와주고 계시고, 앞으로 이 친구들이 개발 역량을 향상할 수 있는 실리콘밸리를 비롯해 한국이나 아시아권의 좋은 스타트업으로 갈 수 있도록 노력을 게을리하지 않을 생각이다. 우리의 네트워크들은 앞으로 이 미디엄을 통해 자세하게 소개하고 경험들을 공유할 수 있도록 할 예정이다.

Code/States의 Mission과 Vision

어찌보면 굳이 하지 않아도 될 일을 시작한데다 단순히 돈을 벌겠다고 시작한 일은 아니니, 대한민국에서 우리같은 부류는 사회적 기업이라 부를 수 있을지 잘 판단이 서질 않지만, 앞으로 공개할 우리의 미션과 행보들은 다음과 같을 것이다.

진짜 스타트업에 필요한 Full Stack 소프트웨어 엔지니어를 양성
아직 어디서도 투자받지 않았지만 끝까지 살아남으며 지속가능한 모델을 실행하고, 실리콘밸리에서 주목받는 stack들을 빠르게 도입하고 전달해서 프로그래밍 경쟁력을 높이려고 한다. 또한 한국을 중심으로 아시아권 개발 커뮤니티들에게 이런 우리의 학습 과정들의 한국어 리소스를 지속적으로 공개해서 기여하고자 한다.

다양성 증대와 아시아권 소프트웨어 엔지니어들의 글로벌 기회를 제공
단순히 어떤 대안 교육 형태로서 존재하는 것이 아니라 지역, 성별, 나이, 학력 등 차별없도록 프로그래밍 실력으로서 인정받는다면, 한국이나 개발도상국 등 소프트웨어로 안정적이고 기술적으로도 비전 있는 회사에서 일할 수 있는 기회를 열어주고, 아시아를 비롯 우수한 인재들의 글로벌 다양성을 얻을 수 있도록 노력할 것이다.

진짜 협력과 개발협업이 이루어지는 글로벌 스타트업 커뮤니티를 형성
우리는 그동안 능동적인 기여와 참여, 협력이란 것을 배워보지 못했다. 나부터도 우리를 도와주는 훨씬 어린 글로벌 친구들로부터 이런것이 진짜 파트너십이란 것을 체감하며 이 일을 하고 있다. 단순히 개발 뿐만 아니라 투자유치를 비롯해 온갖 일들이 힘든 한국의 스타트업들에게 이 네트워크를 활용해서 해볼 수 있고 결과를 만들어낼 수 있는 가능성을 보았다.

나는 Code/States의 Managing Director로서 CEO인 Ingi Kim를 비롯한 멤버들, 파트너들과 함께보다 많은 Director들을 양성하고 이 도전을 해보려고 한다. 단순히 내가 소속된 R’FN이라는 스타트업 뿐만 아니라 한국, 더 나아가 아시아 스타트업들에게 꼭 필요한 일이라 생각되기에 주저없이 우리 Code/States 멤버들과 함께 헤쳐나가 보려고 한다.

그리고 우리는 지금 HiveArena — coworking space에 있다. 이런 프로그램을 누구보다 잘 이해하고, 공간에 대한 고민을 해결해주며 개발 커뮤니티 확대에 노력하고 있는 멋진 파트너이기도 하지만 우리는 서로 지분 1% 관계도 없으면서 서로 돕는 진짜 파트너들이다. 앞으로 새로운 형태의 확장들을 같이 진행할 Monoraum 학원 역시 마찬가지.

앞으로 Code/States의 Facebook 페이지와 이 Medium Publications, 앞으로 공개할 Github 등을 통해 많은 소식들을 알려드릴테니 많은 공유와 응원 부탁드린다.

Facebook : https://www.facebook.com/codestates
Partnership 문의는 codestates@gmail.com 로 보내주시면 된다.

Show your support

Clapping shows how much you appreciated Yann Heo’s story.