-> 평범하게 흐르는대로 살았다고 생각했는데, 어느새 굴곡진 인생을 살고 있는 한 사람이 되어있었다. 첫번째 목표이자 직업이었던 직업군인 4년, 두번째 목표이자 전공을 살린 직업과 함께 남은 미래를 그렸던 미국 생활 3년 8개월여, 그리고 이제는 어쩌면 마지막 터닝포인트가 될 지도 모르는 개발자로서 2개월차. 중대한 결정이나 헤어나오기 힘들 정도의 좌절에 빠질 때면 항상 내가 현재 서 있는 곳의 위치를 되돌아 보게된다. 지금 하던 것을 멈추는 것이 맞는 것인가?
, 실패했을 때의 리스크는?
, 리스크를 감수할 것인가 혹은 감당할 것인가?
. 직업 군인을 택할 때에는 회계전공과 대졸 타이틀을 포기하는 리스크를 감수 했었고, 미국행을 결정했을 때에는 췌장암으로 돌아가신 아버지의 임종을 지키지 못한 것을 감당했어야 했다. 그러다보니 나에게 인생을 걸고 하는 선택은 평소에 믿지도 않는 신에게 신탁을 바랄만큼 어렵고도 중대한 사안이었다.
-> 지금으로부터 1년전, 나는 미국 라이프에 실패하고 빚만 남은 한국에 돌아온 백수
였고, 아르바이트를 전전하고 있었다. 코로나 핑계를 댔지만, 실제로 취직도 되지 않았고, 무엇보다 더 이상 의욕이 생기지 않은게 우울감을 더 크게 증폭시켰다. 그렇게 평소처럼 밥을 먹으며 뉴스를 보고있는데, "사무직 2천여명 해고, 개발자 1800여명 신규채용"
이라는 기사가 들려왔고, 그야말로 홀린듯이 개발자에 대한 자료들을 찾아보기 시작했다.
-> 단순히 취업이 목적인 것은 아니었다. 평소에도 컴퓨터 쪽에 관심이 많아서 하드웨어, 소프트웨어 가리지 않고 흥미를 갖고 있었고, 실제로 손수 부품을 사 모아, 조립컴터를 만든다던지, 와이파이를 집 전체에 고르게 퍼지게 하는 방법을 찾아서 화장실에서도 유튜브가 끊기지 않게 한다던지 하는 자잘한 것들이지만, 그 시간들 만큼은 다른 일들을 고려하지 않을 정도로 빠져들었고 재미있었다.
-> 그래서, 마지막이라는 생각으로 '평생 할 수 있고, 하고 싶은 것'을 하기로 했다.
-> 1주차가 지날 땐 잘못 온 줄 알았고, 2주차가 지날 땐 터미널에 홀딱 반해버렸고 3, 4주차엔 엄청난 양의 정보에 지난날에 대한 후회막급인 시간이 계속 되었다. 처음 접하는 건 둘째치고, 끝이 안보이는 지식의 해일 속에서 숨도 못쉬고 흐름에 몸을 맡기다 보니 벌써 4주가 지나고 첫번째 프로젝트 날이 도래했다. 할 줄 아는건 과제를 하면서 겨우 습득해온 지식 몇 가닥과 빠른 구글링을 위한 Ctrl+C, V 밖에 없는데 클론 프로젝트라니. 그나마 동기들과 빠짐없이 친해지고 서먹한 관계가 없다는 것에 위안을 삼으며 아침을 맞았다.
-> 프로젝트가 시작되었고 어떻게든 한 사람 몫을 하기 위해 더 많은 시간을 쏟았고, 백엔드 팀원들과 한 몸처럼 붙어다니며 쉴새없이 대화를 나눴다. 다행히 백엔드 팀원 모두의 뜻이, 필수 구현 사항 몇 가지만 완벽히 해내면서 각자의 코드들을 빠짐없이 이해하는 것으로 모아졌고, 모델링부터 초기세팅, 그리고 모델 수정도 팀원들 모두가 모여 함께 해결했다.
기획과 모델링 과정
-> 모의 데이터를 넣을 .csv 파일과 uploader가 준비되었을 시점에 프론트쪽에서 언제쯤 통신이 가능할지 질문해왔다. 그때까지 나는 모델링을 겨우 마치고 clone을 받아, 막 view 를 작성해나가고 있을 때 였기에 미안함을 담아 프론트 팀원에게 알렸고, 동시에 주말안에 통신을 할 수 있도록 준비를 마치겠다는 약속과 함께 속으로 스스로의 마지노선을 그었다.
.csv & uploader.py 만들기
-> 미친 듯이 몰두했다. 부트캠프에 와서 처음으로 주변 사람 아무에게도 신경쓰지 않고 오로지 내 코드만 들여다보고 고민했던 것 같다. 몇 시간을 헤메고, 손으로 직접 써보기도 하고, 공식 문서를 번역해가면서 겨우 스스로 코드를 완성했을 때, 코드 리뷰를 부탁한 팀원에게서 "좋은데요? 고생하셨네요."
라는 말을 듣자, 비로소 웃음지을 수 있었다. 이후 프론트 팀원에게 준비가 되었다.
고 알리고 본격적인 통신에 돌입했다.
-> 생각보다 통신이 잘된다 싶었는데, 발목을 잡은 것은 '전체보기'
기능 이었다. 지나고 보니 단순한 로직이었는데, 당시에는 왜 이렇게 생각을 했는지 모르겠다.
메인페이지 첫 code
-> '전체보기'
는 대분류 카테고리를 눌렀을 때와 같은 데이터들을 출력하면 되는 것이었는데, 하나의 분리된 기능을 더 만들어야 하는 것으로 이해하고 if
와 elif
를 남발하며 코드를 써내려 갔고, 코드 리뷰에서 멘토님에게 좋은 샘플이 되어 드렸다. 하지만 코드 리뷰를 하고 난 후 에러와 문법 오류가 눈에 띄게 줄어들었고 프론트와의 데이터 교환에 대해서 좀 더 넓어진 시야를 얻었다. RESTful API
를 구분하고 그에 따라 코드를 작성할 줄 알게된 것도 이때였다.
최종 메인페이지 code
-> 새벽 늦게까지 발표용 ppt를 만들며 발표 준비를 했고, 준비한 것이 무색하게 어버버 하며 발표를 마무리 했다. 우리 팀은 초기 설정한 목표를 훌륭히 완수 했고, 화려하게 많은 기능들은 없지만, 필수 구현으로 지정한 기능들은 모두 오류없이 깔끔하게 만들어 냈다. 물론, 프론트 팀원들의 적극적인 협조가 있었고, 심지어 실력이 좋아서 더 할 수 있었음에도 팀원들을 고려해 본인의 기준에 비해 낮게 목표를 설정해준 한 팀원에게 너무나 감사했고 한편으론 미안함을 감출 수 없었다. 이 회고록을 빌어서 다시 한번 깊은 감사를 전한다. 또, 같이 끝까지 함께 발맞춰 뛰어준 백엔드 팀원들에게도 감사하고, 주말, 늦은 시간에도 성심성의껏 도와주신 멘토님들에게도 감사를 전한다.
-> 아직 2차 프로젝트와 기업협업을 지나, 평생이 될지도 모르는 개발자 라이프 속에 많은 어려움들이 산재해 있을 것이다. 이해하기 어려운 코드에 발목잡히고, 두뇌 연산의 한계를 시험하는 로직 구현에 몇날 몇일을 고민 할 때도 있겠지만, 1차 프로젝트에서 가장 배우기 어려운 협동 & 협업
이라는 부분을 나는 아주 만족스럽게 잘 배웠고, 습득했다. 모자란 지식에 대한 부분은 내 스스로 채워넣으면 되는 것이기에 이제는 지식의 해일 속에서 흐느적 거리기 보단, 작은 판자라도 하나 붙잡아서 위태롭지만 조금씩 내가 원하는 방향으로 지식을 탐구하고 쌓아 나갈 것이다. 그러다보면 언젠간 이 해일의 위에서 정확한 방향을 바라보고 원하는 곳에 내려설 수 있는, 그런 개발자가 되어 있으리라.
기록의 양
과지식의 양
은정비례
한다.- 보여지는
글자
에 현혹되지 말고 내가 다루려고 하는데이터
를 구분하자.- 협업에서 나는 팀의 일부이지만 팀은 나의 전부이다.