나의 (아홉+1)수, 2021년 상반기 회고

ppamppamman
Written by ppamppamman
나의 (아홉+1)수, 2021년 상반기 회고
사람마다 아홉수가 사납지. - 박경리 토지

근데 이제, 2020년 회고를 곁들인

아홉수라는 말을 좋아하지 않는다.
십대의 아홉수도, 이십대의 아홉수도 꽤 힘들게 지나갔다. 재수를 결정했을 때도, 열정을 다했던 회사를 그만둘 때도 나는 아홉수였다.
다만 동시에 ‘아홉수니까 어쩔 수 없어. 괜찮아.’라는 말로 다독일 수 있었던 유일한 시기가 아니었나 생각이 된다. 누군가는 나보고 이름을 바꾸라고도 했다. 더럽게 운이 없다고. 그때도 “스물아홉이라 그래 ㅎㅎ” 라고 이야기 했더랬다.

아홉수소년
마! 니가 내 맘을 알기나 해?
피터팬 컴플렉스 개인적으로 좋아하는 팀이다.

아홉수에 결정한 것

아홉수에 굵직한 실패가 몇가지 있었다.
우선, 회사에서 나가달라는 이야기를 들었다. 개인사업자로 팀을 만들었을 때부터 함께했던 팀이었다. 애정을 갖고 인생에 있어 마지막 도전이라 생각해고 몰두했지만, 함께하던 사람들의 생각은 그렇지 않았던 것 같다.
둘, 개발 공부를 그만하고 싶다고 생각했던 탈락 사례가 있었다. 우아한테크코스가 결정적이었다. 난이도가 낮으면 낮을수록 좋지못한 결과에 대해 감정적인 타격이 컸다.
셋, 생각보다 함께 공부하는 사람들만큼의 지식이 있다고 생각이 들지 않았다. 실패로부터 느낄 수 있을 만한 위기감이 들었다.

그래서 결정한 것은 큰 방향에 있어서 ‘본질적인 성장’에 초점을 맞추자는 것이었다. 그동안 양적인 성장으로부터 스스로의 위치를 올려보려고 했다. 프로젝트를 최대한 많이 하고, 알고리즘 풀이를 최대한 많이 하고 뭐 이런 느낌들.

방법론적인 실패를 인정하고 질적인 성장을 위해 바꿨던 방향은 다음과 같다.

  • 자바스크립트 책에서 볼법한 이론적 내용이 가지는 의미를 코드레벨에서 온전히 이해하고자 했다.
  • 좋은 사람들에게 나의 코드를 평가받고자 했다.
  • 배웠던 CS지식을 외운 이론으로 남기는 것이 아닌 바라고 있는 직무에 대해 의미있는 형태로 만들어내고자 했다.

아홉수가 끝나고

개발자로서의 나의 스탠스를 돌아볼 수 있었던 코드스쿼드 마스터즈 코스 과정을 마쳤다.

HAHAHA
수료할 때 나의 모습

과정을 처음 들어갔을 때 제출했던 내용이 있어서 발췌해봤다.

… 올바르게 리액트 코드를 짤 수 있는 개발자로 성장하기 위한 공부의 시간을 가질 것입니다. 좋은 설계과 견고한 코드로 동료에게 좋은 영향을 줄 수 있는 프론트엔드 엔지니어로 성장하고 싶습니다. … 함께 공부하게 될 사람들과 끝까지 몰입하고 싶습니다.보다 많은 협업 경험으로 개발자와 소통하는 법을 발전시켜가다보면, 결과적으로 원하는 방향으로의 변화가 있을 것이라 믿고 있습니다. 그렇기에 코드스쿼드에서의 경험이 꼭 필요합니다.

기억에 남는 내용이 있다.

올바른 리액트 코드와 몰입과 협업 경험에 대해

FE반 교수님과 운동하는 펭귄맨과 프로젝트를 같이 했을 때 최종 코드를 보고 함께 했던 말이 있다.

“이거 리팩토링 안된다. 완전 스파게티 코드다.”

주차별로 달리는 스케줄, 매 코드마다 달리는 리뷰는 우리를 성장시키기에 부족함이 없었지만, 이 시기의 나는 개인적인 인간 관계 때문에 많이 지쳐있던 시기였고, 완성이라는 키워드에 매몰되어 올바른 성장으로까지 이어지지 못했던 것 같다.
지원서에 적었던 올바른 리액트 코드는 결국 작성하지 못했던 것이다. 그래서 다음 프로젝트를 진행할 때 입버릇처럼 붙였던 말이 있다.

“우리 완성보다 공부에 집중해봅시다. 다 못만들어도 기술적인 공부나 그에 해당하는 이슈를 좀 더 다뤄봐요.”

돌이켜 생각해보면 함께 했던 팀원들이 별로 좋아하지 않았을 수도 있겠다는 생각이 들었다. 적어도 내가 본 다른 팀들의 데모는 격이 달랐었기 때문이다.

다만, 앞서 했던 좌절감은 프로젝트를 거듭할수록 들지 않았다. 왜냐하면, 별 생각없이 관성처럼 썼던 훅함수, 라이브러리, 유틸성 함수를 왜 써야 하는지 원리적으로 파악하고 필요하다면 해당 로직을 직접 구현해볼 수 있었고, 코드 작성에 앞서 상태를 중심으로 이유를 명확히 설명할 수 있게 되었기 때문이다.

해당 프로젝트 직후의 프로젝트에서는 프로젝트의 완성대신 이런 내용을 다뤘다.

  • 보다 나은 컴포넌트 설계, 스타일링 관리 전략
  • 생각없이 사용했던 CRA를 들어내고 웹팩의 속성 하나하나를 분석해보기
  • 타입스크립트의 유틸 타입들에 대한 고찰
  • 전역 상태 관리 라이브러리 원리 구현
  • 메모이제이션 관련 훅 함수 원리 구현

서른의 깨달음

19884068_146661885910428_9135214628513168609_n

어른은 애들과 달라야한다.
정확히는 애였을 때의 나와 지금의 나는 달라야 한다.

앞서 했던 좌절의 경험과 성장의 경험은 지금까지와는 다른 지향점을 설정할 수 있도록 도와주었다. 감사하게도 함께 공부하고 있는 친구들이 있어서 게으를 틈 없이 공부할 수 있게 되었다.

같은 과정에서 큰 성공을 이룬 사람들도 있다. 성공한 사람들은 나름대로의 페이스를 갖게 되었고, 우리는 우리의 페이스를 갖게 되었다는 것에 의미가 있는게 아닐까 싶다.

지금 당장 한두달은 아래의 목표에 집중해볼 생각이다.

  • 리액트없이 SPA 다루기 (정확히는 리액트의 라이프사이클을 이해하는 SPA 개발하기)
  • 마크다운 에디터 라이브러리 리팩토링 후 배포하기
  • FE 개발자의 시선에서 CS 지식 다루기
    • FE의 피부에 와닿는 네트워크
    • 운영체제와 Chromium 프로젝트의 상관관계
    • JS로 알고리즘 문제풀이 말고 자료구조에 가까운 기법 다루기
  • Cypress와 Storybook, Clean Typescript Programming, SSR, Nest.js, Vue.js 등 관련 도메인 지식 늘리기

Comments

comments powered by Disqus