DDC 2023 발표를 위하여 에세이 형식으로 먼저 작성한 글입니다.
개발자 때려치려고. 역시 나는 개발자가 잘 맞지 않아.
그 날따라 회사에서 개발을 하던 중 뭐가 잘 안되는 날이었는지, 세상에서 가장 멍청한 사람이 된 것만 같은 기분이 들어 저의 10년지기 친구에게 카톡을 보냈습니다. 그러자 그 친구에게 이내 답이왔습니다.
나도 개발자 안맞는거같아, 우리 누가 먼저 개발자 그만두게 될까
어쩌다 개발자가 된 이야기
네, 저와 제 친구는 모두 개발자입니다. 10년 전, 스무살의 저희는 둘 모두 개발자를 하고 있을 거라고 상상도 하지 못했습니다. 저는 컴퓨터공학을 전공 하기는 했지만, 저의 온 관심사는 창업과 비즈니스였거든요. 저는 4년의 대학 생활은, 학교 주변에 있는 작은 기업을 컨설팅 하러 다니고, 창업을 해보겠다며 프로토타입을 가지고 사용자 인터뷰를 하러 다니거나 내가 하고싶은 비즈니스를 사람들 앞에서 발표를 하는데 저의 온 열정과 관심을 쏟아부었습니다. 저의 친구는 "찐문과"로, 심리와 디자인을 전공하던 친구였습니다. 심리학에서는 A+로 가득찬 학점을 받을 정도로 공부를 잘했는데, 디자인을 복수전공으로 선택하더니 어떤날은 심리공부를 하며 밤을 새고 또 다른 날은 일러스트레이터를 켜놓고 졸업작품을 하며 밤을 새며 대학생활을 보냈습니다.
개발과는 아주 거리가 멀어보였던 저희 둘은, 10년후 어쩌다보니 개발자가 되었습니다. 저의 첫번째 회사는 실리콘밸리에 있는 작은 스타트업이었습니다. 그 때의 저는 굳이 따지자면 "기획자"였습니다. 헬스케어 디바이스를 개발하는 회사였는데 그 디바이스와 같이 사용할 수 있는 편두통 기록 앱을 기획하는 역할을 했거든요. 앱을 열심히 기획하고 있는데, 회사에는 앱개발을 할 수 있는 역할을 할 수 있는 사람이 없었고 외주를 맡길 비용을 쓰기도 어려운 상황이었습니다. 개발을 하지 않으면 기획자였던 저는 회사에 더 이상 필요한 존재가 아닌 상황이 되자, 저는 앱을 개발하기 사작 했습니다. 졸업 하기 바로 전 모바일 앱개발 수업을 들은 지식으로 작동은 겨우 하는 프로토타입 정도라면 만들 수 있을거라고 생각했거든요. git도 제대로 쓸줄 몰라서 문제 없게 해달라는 기도 한 번 하고 명령어를 쳐야 할 정도(?)로 할 줄 아는게 없었지만, 기획자였던 저는 그렇게 "개발자"가 되었습니다.
디자이너가 될 줄 알았던 제 친구는 졸업 후, 갑자기 데이터 교육 프로그램을 듣고 있다는 소식을 저에게 전해주었습니다. 학교 다닐때는 코딩 교양 수업도 최대한 피해서 들었던(!) 친구가, 데이터 분석을 배우고 git도 배우고 데이터 분석결과를 웹사이트로 척척 만들기 시작하더니 한 스타트업의 제안을 받아 신입개발자로 일을 하게 된 겁니다.
저희 둘은 그렇게 계획에 없던 개발자가 되었고, "역시 나는 개발자는 안맞아"라는 농담반 진담반의 이야기를 나누고 공감할 수 있는 사이가 됐습니다. 저와 친구 모두 남들처럼 차근차근 준비해서 '개발자로서 취업성공!'을 한 것이 아니었기 때문에, 개발을 하며 각자가 가진 부족함에 절망감을 느낄 때가 많았습니다. 그 때의 저는, 개발자라는 직업이 마치 1등부터 100등까지 줄을 세울 수 있는 직업이라고 생각했어요. 개발자라면 읽어야하는 필독서들이 쌓여있고, 프로그래머스의 2-3단계는 적어도 다 풀고 있어야 하며, 개발자가 이걸 모르면 자격 미달이고. 마치 1000페이지가 넘어가는 개발의 정석 책에서 저는 이제서야 chapter1을 겨우 뗐는데, 남들은 벌써 그 책의 마지막 자락을 공부하고 있는 것만 같았습니다.
부족하지만 특별한 개발자 되기
개발자로서 이러한 절망감을 가장 많이 느꼈을때는 한국 회사로의 취업을 준비할 때였습니다. 코로나로 인해 비자 발급이 중단되었고, 비자 준비를 하며 한국에서 리모트로 일하고 있던 저는 미국으로 가고 싶다는 꿈을 접고 한국 개발자로 취업 준비를 하기 시작했습니다. 코딩 테스트라고는 한 문제도 풀어보지 못했고 경력이라고는 그 당시에는 더더욱 쓰이지도 않았던 flutter로 아주 잠깐 개발을 해본 것이 다였거든요. 역시 생각했던 대로 처음 지원한 회사들은 모두 서류탈락이라는 결과를 저에게 안겨주었습니다.
조금 억울하기도 했습니다. 개발자로서 부족한 건 맞지만, 그래도 제가 가진 경험과 장점들은 이야기조차 해볼 수 없었으니까요.
그렇게 취업준비를 하던 중, 저는 한 가지 프로젝트를 시작하게 되었습니다.
"hello siliconvalley"라는 웹사이트를 만들게 되었는데요, 요즘 유행하는 MBTI나 연애성향 테스트와 같이, "당신에게 가장 잘 어울리는 실리콘밸리의 빅테크 기업을 추천"해주는 웹서비스였습니다. 유저는 실리콘밸리에서 일어날 법한 상황들 속에서 자신이 어떤 선택을 할지 선택지를 선택하면, 총 점수를 매겨서 구글, 넷플릭스, 아마존, 테슬라 등 실리콘밸리에 있는 테크 회사들을 추천받게 됩니다.
이 서비스를 만드는 저의 목표는 딱 하나였습니다.
이력서가 아닌 방법으로 나를 알려야겠다.
웹 개발자로 취업을 하기 위해 한창 react를 배우고 있었기 때문에, 당연히 웹사이트는 react로 개발을 했습니다. react를 배우면서 테스트코드 작성하는 법도 배웠는데, 이 것도 어떻게 좀 어필할 수 없을까 해서 테스트 코드도 열심히 작성했어요. 심리테스트의 처음과 끝에는 "만든 사람들"이라는 페이지로 가는 버튼을 만들어서, 테스트를 해본 사람들 중 일부라도 저의 프로필을 볼 수 있도록 유도했습니다. 물론, 저의 깃헙 링크도 당연히 추가했습니다. 무엇보다도 웹사이트에는 (아주 짧은 시간이었지만) 실리콘밸리에 있을때의 경험을 녹이려고 노력했습니다. "휴일에는 소살리토에 가서 놀지, 스카이다이빙을 하면서 놀지", "스타트업 네트워킹 파티를 가게 된다면 어떻게 할것인지", "101 highway를 달리는데 차가 막힌다면 어떤 상상을 할지" 등 유저에게 물어보는 질문들은 모두 제가 3개월간 미국에 있으면서 경험한 것들이었거든요.
저를 알리기 위하여 시작하겠다고 시작한 작은 프로젝트는 오픈한 날, 4000명의 유저가 웹사이트로 들어오게 되었습니다. IT직군에 있는 사람들이 특히 흥미를 느끼며 테스트를 하더니 삽시간에 링크가 공유가 되자 7일간 40개국에서 22000명이 넘는 유저가 유입 되었고, 구글, 페이스북 (현재 메타) 등등 실리콘밸리에서 회사를 다니던 분들이 직접 해보고 후기를 트위터에 남겨주시기도 했습니다. 저의 목표대로 이직 제안도 여러 군데 받기도 했고, 제가 가고싶은 회사를 지원했을때 서류탈락시키지 않고 관심을 가지고 면접에 초대해 주기도 했습니다. 그리고, 운이 좋게도 제가 관심갖던 회사 한 곳에서 개발자로 일을 할 수 있게 되었습니다.
저에게는 꽤나 짜릿 했던 몇 주간의 경험은 저에게 중요한 교훈을 하나 남겨 주었습니다. 개발자라는 직업을 갖는데는 전혀 쓸모 없어 보였던 장점과 경험들이 개발자가 되는데에도 꽤 가치있는 것이라는 사실을요.
미국에 있었던 짦은 시간동안 실리콘밸리의 빅테크 회사를 다니는 한국인들을 찾아가 그분들의 이야기들 들은 경험이 hello siliconvalley를 만드는 가장 좋은 재료가 되었고, 직접 만든 명함과 프로토타입을 들고 사람들을 찾아가 제가 만들고 싶은 제품을 이야기한 경험은 "개발자 김난”이라는 제품을 효과적으로 회사에 홍보하는데 꽤 도움이 되었습니다. 그리고 무엇보다도 hello siliconvalley는 저 혼자 했던 프로젝트가 아니었는데요, 저의 10년지기 개발자친구 그리고 또 다른 한 친구까지 총 세 명이 만들었습니다. 세 명이 모여서 기획부터 디자인 개발까지 해서 프로젝트를 완성하게 됐는데, 저는 3명이 가지고 있는 특별한 장점들이 있었기 때문에 좋은 결과를 얻었다고 생각합니다. 20명도넘는 주변 친구들의 MBTI를 다 외우고 있을 정도로 사람에 대한 관찰력을 가진 한 친구의 뛰어남이, 어떠한 분야도 빠르게 적응해서 디자인과 개발을 자유자재로 할 수 있는 친구의 강점이, 목표가 생기면 불도저처럼 일을 추진하는 저의 성격이 모두 합쳐져서 만들어진 거니까요.
훗날 제가 개발자가 되어 많은 사람들과 함께 일을 하게 되더라도, 저의 특별함은 함께 일 하는 누군가의 부족함을 채워줄 것이고 옆에 있는 동료의 경험은 팀이 마주한 문제의 돌파구를 제시해줄 것이라는 것을 이 때의 경험으로 깨닫게 되었습니다.
가장 단단한 팀
지금 저는 뱅크샐러드의 웹개발자로 일을 하고 있습니다. 뱅크샐러드에서 "유전자검사"를 한다는 이야기를 들어보신 분도 계실 거 같은데, 유전자검사를 포함하여 뱅크샐러드의 건강데이터와 관련된 모든 제품을 만드는 팀에서 개발을 하고 있습니다.
저희 팀에는 웹, 서버, 데이터과학자, 네이티브 개발자가 있습니다. 모두 기술적으로도 탁월한 엔지니어지만 한 사람 한 사람이 가지고 있는 특유의 장점과 경험들이 저희 팀을 더 단단하고 풍요롭게 만들고 있다고 생각합니다.
최근, 저희팀에서는 네이티브 작업보다 웹뷰를 기반으로 한 작업들이 많아지며 엔지니어팀이 이 문제를 가지고 모두 다같이 고민하던 적이 있습니다. 네이티브 작업은 줄어들고 서버와 웹개발자의 작업은 늘어나는 문제를 어떻게 해결해야할지 고민하던 중, iOS 개발자 분은 서버 개발을 Android 개발자분은 웹개발을 시작해보기로 했습니다. 어느날 Android 개발자 분께서 간단한 웹 작업을 하다가 스크럼에서 아젠다를 올려주셨습니다. 저희가 A/B테스트 기반으로 작업을 하고 있기 때문에 서버, 네이티브, 웹 모두 A/B테스트와 관련하여 각자 작성해야하는 코드가 있는데, 웹에서는 복잡하게 하고 있으니 개선해보면 어떠냐는 제안이었어요. 안드로이드 팀은 더 간단하게 하고 있다면서요. 사실 매일 같은 코드를 보고 당연하게 작업해오던 저희는 인식하지 못하던 불편함이었는데 Android 개발팀을 경험한 개발자 분이 새로운 시각으로 저희가 일 하는 방식을 바라봐 주신 겁니다. 만약 그 네이티브 개발자 분이 "웹 개발"만 경험 해왔다면 그 문제를 발견할 수 없었을 겁니다. 또 그분의 용감함이 있었기 때문에 불편함이 수면위로 올라왔고 웹팀이 일하는 방식을 크게 개선할 수 있었습니다.
이 외에도, PR리뷰를 누구보다도 꼼꼼하게 해주는 좋은 리뷰어인 동료 덕분에, 저의 코드에서 누락 되거나 실수 한 부분을 잡았던 적이 정말 많아서 그분께는 항상 감사한 마음으로 리뷰를 받습니다. 저희 팀의 웹팀 리더를 보면서는 기술적으로도 많이 배우지만, 섬세하게 일을 계획하여 프로젝트가 잘 진행되도록 하는 역량을 가지고 계셔서 함께 일하며 도움을 받은 적이 정말 많습니다. 지금 이야기한 팀원들 외에도, 날카로운 리뷰를 잘해주는 데이터과학자, 팀이 잘 굴러가도록 회고와 티켓관리를 앞장서서 챙겨주는 서버개발자 등등 각자 다른 전문성을 가지고 있지만 각자가 가진 특별함으로 그 어떠한 팀보다도 가장 단단하고 강한 팀이 되어가고 있습니다.
저와 함께 일하는 동료들과 마찬가지로 저도 그럴거라고 믿습니다. 저의 동료들이 그렇듯이 저만 해온 경험들과 제가 가지고 있는 뾰족한 부분이 이 팀에 가치있게 쓰이고 있을 거라고 말이에요.
마무리
다시 처음으로 돌아가 저의 단짝친구 이야기를 마무리 지으려고 합니다. hello siliconvalley를 만들기 전 취업 못할 거 같다며 우울해하는 저에게 친구는 저의 장점들을 이야기해줬습니다.
친구가 이야기하는 저는,
- 제가 알고있는 것 지식을 다른 사람에게 잘 설명할 줄 알고 저의 생각과 이야기를 담백하고 솔직하게 잘 전달하는 사람입니다.
- 평소에는 주변에 별다른 관심을 갖고있지 않다가도 제가 하고 싶어서 꽂힌 일이 있으면 온 집중을 다해 해내는 추진력이 있는 사람이기도 하죠.
- 또, 스스로를 잘 성찰하여 본인 스스로를 누구보다도 잘 알고 있기 때문에 제가 좋은 선택들을 해나갈거라고 믿는다는 이야기를 해줬습니다.
그 때 친구의 이야기는 초라해보였던 저에게 큰 힘이 되었고, 지금도 제가 개발자로서 부족함을 느끼며 집에 돌아올때면 친구가 해준 이야기를 생각하며 힘든 마음을 툭툭 털고 다시 일어나서 노트북을 켤 수 있게 만들어 줬습니다.
저도 친구에게, 또 비슷한 고민들을 해본적이 있던 사람들에게 이야기하고 싶습니다. 제가 지켜보는 저의 친구는 제가 봐도 부러울 정도로 좋은 장점들을 많이 가지고 있고, 그 친구의 장점들이 개발자로서의 그 친구를 더 가치있게 만들어주고 있다고 생각합니다. 조금 느릴 수는 있지만 포기하지 않고 "개발의 정석" 책의 마지막 챕터에 도착하기 위하여 노력하고 있고 너가 가진 재능들로 함께 일하는 동료들의 부족함을 채워 주며 충분히 좋은 개발자로 나아가고 있으니, 걱정하지 말라고요.