2017년을 돌아보며

2017년의 커밋기록

벌써 2018년이다. 도쿄 신주쿠에는 비가 내리고 있다. 확실히 한국보다 춥지 않아서 눈은 내리지 않는다. 블로그를 시작해야겠다고 생각한게 벌써 반년 전이다. 오늘처럼 노는 것도 지겨운 날이 아니면 또 내년으로 미루게 될 것 같아 시작한다. 첫 글은 제목대로 나의 2017년을 돌아보는 것으로 시작하겠다. 월 단위로 쪼개어서 이야기 해볼까 한다. 아이폰 사진들, 사내 Gitlab 커밋기록을 참고로.

2016년

코엑스에 있는 기관에서 프로그래밍 (주로 자바, 윕프로그래밍) 과 일본어를 공부했다. 처음에는 8시부터 밤 9시까지의 스케줄보다도 프로그래밍 자체에 대한 아무런 배경지식이 없는 상태에서 집어넣는게 너무나 힘들었다. 주변에는 전공자와 이 전에 공부 좀 해 본 사람들이 너무나도 많았고 나는 정말로 바보 그 자체가 된 기분으로 보내고 있었다. 기관의 1차평가 점수가 별로 좋지않으면 ‘내 길이 아닌가보다’ 하고 그만둘 생각까지 했었으니까.

운이 좋게도 주변에 좋은 사람들의 도움으로 1차는 겨우겨우 통과할 수 있었다. 그 후 1차 프로젝트로 자바와 자바 스윙을 이용한 다트게임을 만들면서 ‘프로그래밍의 재미’를 느꼈다. 상하좌우로 움직이는 슬라이더 바를 멈추어 던질 곳을 조준하는 GUI를 만들었는데, 프로젝트 기일이 다가와도 도저히 못만들겠어서 포기하려던 와중에 자려고 누웠는데 갑자기 방법이 떠올라 새벽 4시까지 코드를 짠 이후로 실력과 상관없이 내가 이 길로 들어오길 잘 선택했구나하는 체험을 했다.

일본어는 워낙 공부하는데에 자신도 있었고 (물론 이 쪽도 전공은 아니라서 계속 중급반-중고급반을 전전했지만) 어쩌면 프로그래밍보다도 노력대비 결과가 좋았다고 해야할까, 그저 재미있었다.

몇 개월 후, 전공자가 아니었음에도 나름 1지망으로 목표로 한 회사에 내정을 받아, 그야말로 일본으로 건너가게 되었다. 12월에 본 JLPT N1도 합격.

2017년 1~3윌

기관을 졸업하고, 미루고 미루던 운전면허를 땄다. 좌회전 차선에서 직진을 하는 어처구니없는 실수를 한번하고 두번째 주행에서 합격. 1종 보통을 땄다. 비자 발급받는데에 여러가지로 걱정했지만 거의 2주만에 5년짜리 비자를 받아서 너무 기뻤다. 쉐어하우스도 계약하고, 여러가지로 준비에 준비를 하는 기간이었다. 그렇게 절친의 결혼식 다음날이었던 3월 20일, 캐리어 하나들고 일본으로 떠났다.

2017년 4월

첨엔 회사의 기간시스템인 md-dc나 md-cms쪽에서 일하게 될줄 알았으나, 갑자기 프로덕트개발부라는 신생부서에 들어가게 되었다. 생애 처음으로 맥북을 쓰게되었다. 사수에게 정말 너무 미안하게도 brew라든지 Alfred라든지 하는 기본 프로그램부터 GitLab, XCode 등등 툴 사용법에 대해서 배우느라 정신이 없었다. 먼저 2주정도 사내 만화책 데이터베이스API를 테스트하는 어플을 만들었다. 어느정도 기초적인 걸 알게되고, MDViewer라는 만화 뷰어 앱의 간단한 이슈들을 해결하며 같이 입사한 동기가 C를 해본 경험이 있어 주로 나는 안드로이드를 담당했지만, 결국엔 아무래도 손이 모자라 둘다 iOS에 붙었다.

2017년 5월

받은 일은 C++로 epub파일의 본문만 추출하는 간단한 프로그램을 만드는 일. C++과 C 전혀 경험이 없던 터라 같이 입사한 동기가 전부 구현했다. 나는 제목이나 소제목에 들어갈법한 はじめに、あと書き와 같은 단어를 찾아내 블랙워드 리스트를 만드는 일을 했다. 거의 한달간은 샘플epub파일의 css형식이라던지 출판사마다의 습관을 알아내기 위해 엑셀로 정리하고 또 정리했다. 그러면서 전자출판 업무적으로도 기술적으로도 조금은 알게 되었다. 이 기간엔 커밋 이력을 별로 남기지 못했지만 불안하거나 하지는 않았다. 결국 이 프로젝트는 나중에 새로 들어온 사수가 php로 엄청나게 빠르고 간단하게 만들었기 때문에 archive 당해버렸드아… 특히 이 기간엔 동기들이랑 놀러가거나 마시거나 하면서 점점 친해지기 시작했다.

2017년 6~7월

새로 개발하고 있는 epub 렌더링엔진의 테스트를 담당하게 됐다. 처음엔 말그대로 테스트만 새로운 버전이 올라올 때마다 테스트->버그 발견->이슈 등록 정도로 간단한 일을 했지만, 미팅도 주도적으로 잡고 개발일정도 조정(?)하게 되었다. 한창 개발 중인 단계였기 때문에 정말 세세한 부분까지 열심히 테스트했었다. 이 시기에 사수들의 코드도 꽤 읽게 되면서 많은 충격을 받았다…‘여태까지 내가짠 건 뭐였지?’하는.

2017년 8월

7웖 말부터 갑자기 간단한 데모사이트를 만들어 줄 수 없겠냐고 제안을 받았고, 사수에게 이왕 만드는거 React로 만들어보라고 해서 C++, Objective-C에 이어 javascript를 하게되었다. 일단 데모사이트이기 때문에 그저 정적인 구성이라 React로 구현하는 자체는 크게 문제없었지만, React를 쓰면서 엄청난 기술부채를 지게 되었다는 걸 알게되었다. npm이 무엇인지 es6, jsx, bower 등등…정말 끝이없었지만 어쨌든 구현하기 바빴다. 일적으로는 프로토타이핑 방법으로 영업담당 선배가 무려 펜으로 그려주는 화면을 마크업하는 것이어서, 단순히 일본어를 사용하는 것 뿐만 아니라 요건을 듣고, 구현하고, 제대로 맞게 구현했는지 재차 확인 후 경과를 보고하는 일련의 흐름을 경험할 수 있었다.

2017년 9월

계속해서 렌더링엔진 테스트를 겸하면서, 중간에 10일간 여름휴가를 한국으로 다녀왔다. 반년만에 간거라 마치 여행에서 돌아온 듯한 느낌을 받았지만 휴가를 마치고 다시 일본 돌아갈 때 느낌이 너무 이상했다. ‘왜 여기 다시 온건가’ 하는. 비를 맞아서 그런거 같다.

2017년 10월

입사 반년이 지나 미팅을 통해 나는 모바일에서 아예 빠지고 웹을 담당하게 되었다. 휴직에서 돌아온 사수와 함께 사내 epub파일을 elasticSearch를 도입해 검색사이트를 만들었다. 사수가 거의 리딩을 도맡고 나는 elasticSearch를 공부하면서 기존의 서버를 elasticSearch가 공식 지원하는 자바 RESTClient 를 이용해 리팩토링하는 일을 했다. 또 기술부채가 생기다니…라는 생각을 하면서도 새로운 것에 대한 거부감이 전혀 없게 되었다. 내 나름대로 새로운 것을 접하게 되었을 때 어떻게 대응할지 기준을 잡았기 때문. 일단 그 기술의 공식홈페이지의 tutorial이나 get started를 본다. 영어라도, 시간이 걸려도 무조건 그 것부터 제대로 읽는다. 그 후에 동영상강의이나 블로그를 통해 본격적으로 공부한다. 하면서 모르는게 있으면 공식 홈페이지의 Reference를 본다. 이런 다른 개발자들에게 너무나도 당연한 걸 몸에 익히게 된 시기였다.

2017년 11월

서버쪽을 한창 경험하고 있는데, 이번엔 php를 하게 되었다. 사수와의 이야기끝에 앞으로 우리부서는 데모부터 만들일이 많으니 그 어떤 언어보다도 개발스피드가 빠른 php를 사용하자는 것. 그러면서도 Laravel이라는 프레임워크를 써서 안정감있게 가자는 로드맵을 갖게 되었다. php는 5.5 이전과 그 이후, 특히 7 이후는 꽤 다른 언어였다. 모던PHP라는 책이 엄청나게 도움이 되었다. Laravel은 책보다도 라라벨 공식홈페이지의 도큐멘트가 훨씬 좋아서 지금도 가장 많이 방문하는 사이트 중에 하나일 정도이다. 사실 그간 ‘도대체 나는 어느 방향으로 나아가야하나’하고 고민이 많았는데 php를 접하면서 php하나만 일단 잘해두면 퍼포먼스 걱정은 없겠다고 자신을 갖게되었다. 마침 php컨퍼런스도 있어서 혼자 다녀왔다. 그다지 도움은 안됐지만.

2017년 12월

회의록, 기자회견 등의 긴 텍스트를 요약하는 데모사이트 프로젝트에 들어갔다. 첫번째 버전은 사수가 만들었지만 두번째 버전은 UI는 거의 그대로 가되 디자인부터 서버사이드까지 전부 내손으로 만들게 되었다. 나름대로 풀스택을 경험. 신경써야할 부분이 한두가지가 아니어서 역시 기술적인 부분보다 소통이 어려웠다. 부장님은 겉모습을 지적하고, 영업담당은 페이지 구성, 사수는 코드를 지적하는 삼중고. Laravel이 아니었으면 아마 아직도 완성 못했을 수도. 요새도 이 프로젝트에서 jQuery를 이용해 인터렉션 부분을 다루고 있는 중이다. 또 월초에 드디어 쉐어하우스를 떠나 이사를 했다.

마치며

2017년 한해는 태어난 이후로 가장 많은 걸 접한 시기가 아니었나 생각된다. 일단 일본에 왔다는 그 자체. 생각보다 너무나도 조용한 사무실 분위기에 적응이 안됐었지만 지금은 누가 좀 떠들면 신경쓰일 정도로 적응해버렸다. 동기들과 여행도 다니고 사수 집에도 놀러가면서 인간관계로도 문제없이 적응해서 다행. 개발관련해서는 역시 맥북을 처음 써봤다는게 정말 달라진 부분이라고 생각한다. 그리고 git도 제대로 써보게 되었고, gcp와 같은 클라우드 서비스도 써보고, 언어만해도 정말 별거 다했다. C++, Objective-c, Java, php, javascript 등.

사실 여전히 불안하긴 하다. 뭐하나를 집중해서 제대로 하고싶은데…우리 팀은 철저하게 니즈에 의해서 움직이는 팀이라는 것. 때문에 당연히 내가 맞추는게 맞다는 것. 이 부분을 항상 염두에 두어야 한다.

2018년의 목표는 그래서 기술서적을 한달에 한권이상 읽는게 목표이다. 매번 새로운걸 접하고 있으니 기초가 약하면, 인사이트가 없으면 기술에 내가 끌려다닐 것 같아서다. 1년간 책상머리에 앉아서 일본어 공부를 안했었는데 다시 시작해야 할거같다. 특히 어휘력의 한계를 많이 느낀다.

2018년은 어떤 한 해가 될까. 1년 후엔 어떤 회고를 하게 될까. 1년 간 얼마나 더 성장하게 될까. 근데 PS4를 사버려서 아마 안될거야…흑흑