요즘 드는 생각과 최근 회고 - 현 회사에서 즐거웠던 시간을 마무리하고 새로운 곳으로 이직하게 된 기념으로 오랜만에 간단하게 회고를 해보려고 합니다.

개발자 마인드

모든 결과물들의 퀄리티는 input과 output의 정의가 얼마나 잘 설계돼있냐에 달려있습니다.

아무리 까다로운 문제더라도 결국 해결할 방법은 있지만, 단순히 해결하는 것만으론 부족한 것 같습니다.

최근 다른 개발자님의 강연을 들었는데, 좋은 엔지니어링은 얼마나 적은 비용으로 더 큰 효과를 지속 가능한 방법으로 가져오는가에 달려있다는 말이 인상깊었습니다.

프론트엔드 개발에서의 비용은 끊임없이 변화하는 요구 사항을 생각했을 때 확장 가능성에 달려있다고 생각합니다. 확장이 쉽고 변경이 용이한 코드를 작성할수록 비용을 줄이고, 나아가 좋은 엔지니어링을 할 수 있게 될 것입니다.

이를 위해선 합리적인 인터페이스를 고민하며 설계하는게 가장 중요한 '개발자의 마인드'가 아닐까 싶습니다. '어떻게 구현할 것인가'를 붙잡고 있으면 하수고, '어떻게 내 의도를 이해시킬 것인가'에 집중하는게 고수라는 생각이 듭니다.

회고

개인 프로젝트는 잠시 뒤로 미루고 TDD 스터디를 열심히 하고 있습니다. 멋사에서 만난 분들과 함께 찐 개발 얘기 하면서 책도 읽고 코드도 나누는데 재밌습니다.

이번 기회에 TDD를 확실히 연습해보고 어느 정도 익숙해지면 실무에서 써보려 합니다. 앞서 얘기한 개발자 마인드를 고민하게 된것도 이번에 TDD를 공부하면서 더 좋은 설계란 무엇일까 생각해본 덕분이였고, 여러모로 한 단계 올라서는 계기가 되고 있습니다.

개발자 커뮤니티도 참여해보고 싶은데 아직 실천하지 못하고 있습니다. 올 해 열리는 FE Conf나 다음번 프론트엔드 다이빙 클럽에는 최대한 참여하려고 합니다. 개발 동아리들 다음 기수 모집 알림도 많이 걸어놨는데 빨리 열렸으면 좋겠네요.

이직

프론트엔드 개발자로서 첫 커리어였던 구름에서의 시간을 마무리하고 삼쩜삼을 개발하는 자비스앤빌런즈로 이직하게 됐습니다.

애정을 가지고 개발한 프로덕트와 저희 팀을 떠나는게 아쉽지만, 평소 금융, 핀테크 도메인을 꼭 해보고 싶었기에 이직하기로 결심했습니다. 새로 가게 된 곳에서 더욱 많은 경험을 할 수 있길 기대하고 있습니다.

구름에서는 주니어임에도 불구하고 정말 많은 기회가 주어졌기에 저도 많이 성장할 수 있었습니다. 입사 후 지금까지 했던 일들을 돌아보면 이런 것들이 있습니다.

  • goormEXP 프로젝트 TS 마이그레이션, 스토리북 도입을 주도하고, 프론트엔드 컨벤션 정립에 기여했습니다.

  • goormEXP 프로젝트 린트 규칙 정리

    • 직접 필요한 ESLint 플러그인을 개발해 적용하기도 했습니다.
  • Goorm Design System(GDS) DX 개선

    • goormstrap의 개발 환경을 구성하는 방법이 복잡하고, GDS와 함께 디자인 시스템을 이룸에도 다른 레포지토리에 위치하고 있어 DX가 떨어지는 문제가 있었습니다.

      이를 개선하기 위해 GDS 모노레포로 goormstrap 개발 환경을 마이그레이션 해왔습니다. 동시에 goormstrap 빌드 과정을 개선하고, 패키지로도 배포해 제품단에서 더 편하게 사용할 수 있도록 만들었습니다.

    • 기존에 JS로 개발됐던 일부 GDS 컴포넌트들을 TS로 마이그레이션 했습니다.

  • 간트 차트 라이브러리 개발

    goormEXP 내에서 간트 차트가 꼭 필요한 부분이 있었는데, 간트는 활용할만한 오픈소스가 마땅찮아 직접 개발했습니다. 복잡한 요구사항을 가진 컴포넌트다보니 개발 자체가 챌린징했어서 기억에 남습니다.

    최대한 외부 의존성을 제거하고 내재화해 구름만의 컴포넌트로서 활용되도록 하고자 하다보니 dayjs 외 다른 외부 의존은 없는 라이브러리가 탄생했습니다.

    • 아주 긴 기간에 대한 대응도 가능하도록 Windowing 기법을 적용해 개발했습니다.
    • 각 태스크의 기간 수정을 위한 드래그 앤 드롭을 구현했습니다.
  • 프론트 백간 협업 프로세스 구축에 기여

    • 구름은 SRE를 제외하면 풀스택 개발자분들이 주축을 이루고, 소수의 프론트엔드 개발자가 있는 조직입니다. 저도 goormEXP 팀의 유일한 프론트엔드 개발자였기에 프론트와 백의 협업 프로세스를 만들어보는 경험을 할 수 있었습니다.

      그 과정에서 Mock Service Worker의 도입 가능성을 확인하고자 개인적으로 여러 테스트를 하고 있었는데, 나오기 전에 팀에 관련 내용을 공유드리려고 합니다.

  • goormEXP 랜딩 페이지 개발, SEO 및 Web Vitals 개선, 다면평가기능 어드민 페이지 개발, 프론트엔드 미들웨어 로직 개선 등 다양한 업무를 수행했습니다.

  • 구름에서 운영하는 부트캠프의 프론트엔드 멘토로 활동했습니다. 수강생분들과 소통하면서 제가 놓치고 있는 것들을 채울 수 있었고, 다양한 관점을 접할 수 있었던 좋은 경험이었습니다.

    앞으로도 꾸준히 멘토링 활동을 하고 싶어서 이직이 마무리되면 멘토로서 활동할 수 있는 다른 채널을 찾아보려고 합니다.

항상 여러 시각에서 열심히 이슈라이징했고, 최대한 많은 소통을 하려고 노력했습니다. 제 부족함이 많았는데 더 논리적인 근거와 설득력있는 의견을 제시할 수 있도록 이끌어주신 구름의 동료 개발자분들께 정말 감사드립니다.

정말 다들 좋은 동료들이셨었어서 이렇게 떠나는게 아쉽고, 다른 곳에서 또 만나뵐 수 있었으면 좋겠습니다. 정기적으로 열리는 구름 커밋 행사에 간간히 놀러가야겠습니다.