2019년 회고

회고의 시즌이 왔다. 이 시기가 되면, 적어도 회고의 가치를 알고 있는 사람들은, 너 나 할 것 없이 회고를 하는 분위기다. 회고, 돌아본다는 것은 잠깐 호흡을 가다듬는 시기인 느낌인 것 같고, 호흡을 가다듬는다는 것은 그만큼 올 한해 달려왔다는 것 아닐까.

다른 사람들은 연말 또는 연초에 개인의 목표나 KPI(...)를 설정하여 회고를 할 때 돌이켜보는데, 나는 그런걸 세워본 적이 없다. 참 가치없게 연말을 보내고 새해를 맞이하지 않았나 싶어서 올해는 회고를 써야겠다. 회사에서 팀 단위 회고를 진행하는 것을 준비할 겸 해서도 말이다.


운전

물론 나 또한 연초 계획이라면 세우긴 했다. 기억에 남지 않아서 그렇지. 그래도 그 중에서 기억에 남는 것은 운전이다. 인천 사람이 서울에 차 몰고 갈 일이 뭐가 있겠냐며, 차일피일 미루다 보니 작년에 이 계획을 세웠던 그쯤이 되었다. 여전히 쏘카나 렌터카를 빌려볼 엄두를 못내는 모습이 아쉽다.

블로그

개발자라면 누구나 한 번쯤 블로그를 만들어 봤을 것이고, 상당수 개점휴업을 해봤거나 하고 있을 것이라고 생각한다. 블로그를 만들 수 있는 방법도 다양하다. 티스토리나 미디움처럼 플랫폼을 사용할 수도 있고, 휴고나 지킬, 갯츠비로 직접 만드는 방법도 있다.

올해 들어서는 벨로그를 이용해서 글을 좀 쓰다가, 역시 내가 직접 블로그를 만들고 싶었다. 뭔가 블로그가 있는 개발자라는 퍼스널 브랜딩도 해보고 싶었고, 꾸준히 유지보수를 할 수 있었으면 좋겠다 싶어서 갯츠비로 만들었다. 관련글도 썼다.

뜸 하더라도 꾸준히 쓰려고 의식하자. 혹시 블로그를 고민하고 있다면, 고민하지 말고 일단 시작하자. 직접 만들겠다면 갯츠비를 추천하고, 플랫폼을 사용하겠다면 벨로그나 미디움을 추천하고 싶다.

회사 기술 블로그도 써야 할텐데 내 블로그에 쓰는 것 만큼 의욕이 들지 않는다. 기술 블로그만큼, 이직을 염두에 두고 있는 사람의 관심을 끌기 좋은게 또 없는데... 차근히 써 봐야겠다. 회사 기술 블로그를 고려하고 있다면 미디움을 추천한다. 글로벌하게 트래픽이 많아서 미디움으로 쓴 글도 곧잘 구글 상위에 뜰 수 있다. 또한, 회사 일을 하다보면 직접 만든 블로그는 금세 방치되기 쉽다.

New to React

이전 직장에서는 앵귤러를 쓰다가 작년 말, 이 회사에 오면서 처음으로 리액트를 접했다. 처음에 시행착오도 많이 거쳤지만 확실히 리액트는 앵귤러에 비해 진입 장벽에 낮다는 말에는 동의한다.

최근에서야 이해를 할 수 있었던 점은, UI 런타임으로서의 React에 마지막에 나와있는 내용이다: '리액트의 성공은 위 주제(리액트의 복잡한 내용)을 몰라도 많은 것을 할 수 있기 때문' 맞는 말이라고 생각한다.

올해 초에는 "리액트 쉽네ㅋㅋ" 였던 생각은 중반을 넘어서면서 "매우 어렵다"는 상태에 도달했다. 올해 내내 수많은 아하 모먼트를 겪었고, 특히 함수형 컴포넌트와 훅이 자리잡으면서 알고 있던 모든 것을 부정하기도 했다. 그런 과정을 겪었기 때문에, 조금 다를 수 있는 정도까지 오지 않았을까.

Monorepo

올해 가장 관심을 가졌던 주제중 하나는 모노레포였다. 지난 직장에서 시도했던 삽질과, 해결하고자 했던 이슈가 무엇인지 알고 있어서 그랬을까? 어떻게든 지금 회사에서 도입하려고 열심히 공부했다.

결과적으로 아직 도입은 못했다. 메인 프로덕트 외에 계획이 뚜렷하지 않고, 확실히 당장 써먹을 계획이 없어서 그런가. 그리고 백엔드와의 언어가 다르다보니 모노레포에 목숨걸고 할 필요성을 못느낀다.

지금 회사에서 메인 프로덕트를 기반으로 여러 사업을 진행한다면, 프론트엔드 프로젝트가 더 많아질 것이라는 것은 확실하고 여기에 디자인 시스템이 녹아들면 진짜 좋겠다는 생각만 해본다.

라이브러리 선택은 신중하게

한창 "리액트 쉽다"는 생각을 하고 있을 때, 당장의 문제를 해결하기 위해 무작정 라이브러리를 가져다 썼다. 그러다보니 지금 누더기 의존성을 갖고 있는데... 지금 보면 분명 직접 해결하거나 만들 수 있는데 왜 그랬지 싶다. 앞으로는 할 수 있다면 직접 하자.

리액트는 도구일 뿐

잘 만드려면 바닐라로도 잘 만들고, 못 만들려면 리액트 들고도 못 만든다. 그럼 나는 어디쯤에 있는 개발자일까? 올해 느낀 것은, 결국 자바스크립트에 대한 심도 높은 이해가 필요하다. 뭘 쓰더라도 말이다. 그래서 이런 저런 정보를 얻기 위해 나름 노력했다. 벨로그는 전반적으로 다양한 글이 올라 오는데, 그 중에서 솔깃한 글을 골라서 읽어본다. 리액트에 대한 글은 주로 레딧을 통해 접했다.

가장 좋은 것은 국내 개발자분들의 다양한 발표 자료를 보는 것이다. 감사하게도 그 분들이 고생했던 것들을 공유함으로써 간접적으로 체험하기도 하고, 마침 나도 비슷한 문제를 고민하고 있었던 경우 많은 도움이 되기도 했다. 내년에는 많은 행사에 직접 참석해서 발표를 들어보고 싶다.

1.3K+ 단위 테스트, 0 통합 테스트

전 직장에서 동료분과 같이, 프론트엔드 테스트 케이스가 1K+ 했다며 뿌듯해 했던 것 같은데, 최근에 메인 프로덕트의 테스트 케이스가 1.3K 를 돌파했다. 물론 모든 테스트 케이스가 잘 작성된 것은 아닌 것 같지만, 차곡차곡 쌓여 있으니 조금 든든한 느낌이 든다.

특히 신규 기능을 개발할 때 속도가 더 빠르다라는 말을 이제는 이해할 수 있다. 테스트 케이스를 먼저 작성하니까 내가 무엇을 어떻게 구현해야 하는지 명확해지는 기분을 받는다.

다만 아직 통합 테스트가 하나도 없는게 아쉽다. 주요 기능 정제를 끝내면 할 수 있지 않을까?

믿음직한 동료

올해 중순 쯤에 인턴으로 프론트엔드 개발자분이 잠깐 오신 적이 있었다. 나는 그분과 소통의 문제를 겪었다. 그 분은 전반적으로 배경 지식이 매우 뛰어난 분이셨고, 매우 예리한 질문을 몇번 하셨는데 나는 대답을 잘 못해드렸다. 그런 것도 있고, 테크 수준과는 별개로 나는 새로 오신분에게 "리드"가 되어야 하는데 그 역량이 많이 부족했던 것 같다.

그래서 믿음직한 동료인가? 라는 질문에는 잘 모르겠다. 내가 단정지을 수 있는 부분인가 싶기도 하고. 부족한 부분이 있다고 생각이 드니까 그저 잘 해야겠다고 생각한다.

믿음직한 코드

그렇다면 코드는 어떨까? 내 코드는 스스로가 제일 잘 평가할 수 있으면서, 평가할 수 없는 것 같다. 정말 최대한 객관적으로 보자면... 역시 나 아니면 이 코드는 누구도 건드리기 쉽지 않겠구나 라고 생각이 든다. 뭐든지 고독을 오래 씹으면 늘 문제가 발생하는 것이다.

뚜렷한 코드 컨벤션을 정하지 않아서 그런 것 같다. Prettier 외에도 네이밍 규칙이라던지... 내년에는 이런 측면에서 "신뢰"할 수 있도록 노력해야겠다.

본질(本質, essentials)

내게 있어 가장 긍정적인 변화 중 하나는, 본질을 보려고 노력한다는 점이다. 아직 잘 보진 못한다.

개발할 때 본질을 보려고 하는 것은 매우 도움이 된다. 특히 UX적인 측면에서 많이 생각해보게 된다. 사용자가 이 화면을 볼 때 가장 원하는 것은 무엇일까? 목표가 무엇일까? 다음에 다시 같은 화면을 봐도 같은 목적을 두고 올까? 이런 생각을 하면, 자연스럽게 기획적인 측면에서 시야가 조금 생기는 것 같고, 기획자님과 이야기를 할 때 공감대가 잘 맞게 되는 것 같다.

사실 "본질"이라는 단어는 회사의 기획자님이 정말 자주 사용하는 단어인데, 거기서 버릇이 생긴 것 같다. 뭐... 좋은 점은 따라하는게 좋지 않겠나.

UX/UI != 예쁜 화면

올해 너무나도 와닿은 말이다. 이미 어느정도는 "아, 그래 그렇지" 느낌으로 이해하고 있었는데, 지금은 거의 뼈에 새긴 정도로 다짐하고 이해했다. 특히 사용자 경험(UX) 측면에서 예쁘기만 하면 안되겠다는 생각을 많이 했다. 당연히 사용자도 눈이 있기 때문에 예쁜거 좋아한다. 다만 이를 얼마나 더 편리하게 재가공하고, 고민을 녹여내는지가 중요한 것 같다.

불만족

디자인 토큰 삽질기를 쓸 때에도 언급했지만, 불만족은 올해 내 모습을 요약하는 키워드였다. 일을 하면서 사소한 불만을 꾸준히 쌓아 두면서 지냈다.

그러다 보니 업무 만족도가 떨어지고, 그게 떨어지자 번아웃이 왔다. 현타는 덤이다. 그런 내 모습이 너무 보기 싫었고, 그렇게 있어봤자 바뀌는게 없다는 것을 깨달았다. 딱히 뭐 계기가 있지는 않았다.

그래서 뭐라도 하자는 생각으로 디자인 토큰을 만들기 위해 삽질을 시작했다. UX/UI에 대한 부채가 많다는 불만족 때문에 시작한 삽질기는, 신기하게도 내 의욕을 올려줬다. 그 삽질기는 건강하게 불만족을 해소했던 경험이다.

그럼에도 아직 불만족이나 감정을 잘 다스리지 못하는 경향이 있다. 경험이 부족한 탓이겠지 싶다.

마무리

딱히 뭐 대단한 마무리가 생각나지 않는다. 그저 내년에도 잘 했으면 좋겠다. 그래서 내년 이맘때 다시 돌아보면 그래도 성장했다는 생각을 할 수 있게끔.

책을 좀 읽어야겠고, 또 스스로의 가치를 너무 낮게 평가하지 말고 더 끌어올리기 위해 노력 해야겠다.


이찬희

리액트와 타입스크립트를 사용하여 즐겁게 개발하고 있고, UX/UI에 관심이 많습니다.