프론트에드 엔지니어로 업무를 시작한지 벌써 만 3년이 되었네요. 올해도 나름 많은 일이 있었는데, 한 해를 마무리하며 가볍게 돌아보려 합니다.
메스프레소에서의 1년은 참 특별했습니다. 메스프레소는 콴다라는 글로벌 교육 서비스를 운영하는 스타트업인데요. 글로벌 환경은 국내와는 많이 다르기에, 비즈니스적으로도 개발적으로도 새로운 경험을 많이 할 수 있었습니다.
우선, 불안정한 환경에서 안정적인 서비스를 운영하기 위해 다양한 고민과 시도들을 해볼 수 있었습니다. 성능 개선, 최적화라는 단어는 개발자에게 참 매력적인 단어이지만 지금까지는 필요성을 인지할 기회가 많지 않았습니다.
글로벌의 네트워크 환경은 대개 매우 열악하고, 디바이스 사양 또한 좋지 않은 경우가 대부분입니다. 이런 환경에서 접속하는 유저가 다수인 상황에서는 국내 서비스를 할때는 겪지 않았던 다양한 문제들이 생기게 되고, 성능 개선에 대해 생각해 볼 계기가 됩니다. 한숨이 절로 나오는 인도 유저의 웹 바이탈 지표를 보면 인지 안 하기가 어렵기도 합니다. 팀 내에서 목표 수치를 정하고 개선해 나가는 과정에서 고통과 뿌듯함을 동시에 느낄 수 있었습니다.
제품적으로도 많은 고민을 해볼 수 있었는데요. 동일한 피쳐여도 국가간의 지표가 크게 차이나는 것을 보며, 글로벌 니즈에 부합하는 서비스를 만들기는 쉽지 않다는 것을 많이 느꼈습니다. 국가마다 소득 수준에 차이가 있기 때문에 월 구독 비용 산정이나, 구독 비용을 고려한 쿼터 산정 등 비즈니스적으로도 고민해야할 부분이 많구요. 여러가지 가설을 세우고, 실험하고, 결론을 내리는 과정에 직간접적으로 참여하며 제품과 비즈니스적인 사고에 대해 많이 배울 수 있었습니다.
사실 콴다에 가장 큰 장점은 뛰어난 동료들이었다고 생각합니다. 똑똑한 동료들이 문제를 정의하고 필요한 부분은 적절히 도움을 요청하여 문제를 해결해 나가는 모습을 보면서 일 하는 방식에 대해서도 많이 고민하고 배워 나갈 수 있었습니다.
동료들이 고민해 온 흔적들을 쫒아가는 것만으로도 많은 배움을 얻을 수 있었습니다. 테스트 코드나, 클린 코드에 대한 고민, 모노레포 활용 방식, 인프라 구성, 실험 플랫폼, 광고 어드민등 내부 도구들이 잘 갖춰져 있어 기존의 코드와 생각의 흐름들을 보고 따라가는 것만으로도 많은 깨달음이 있었습니다.
조직 개편으로 팀 규모가 축소되며 소수의 팀원이 많은 프로젝트를 관리해야 하는 환경이었는데요. 비즈니스 요구사항에 기민하기 대응하기 위해 팀 차원의 생산성을 높이기 위해 많은 액션을 한 해였습니다.
특히 모노레포에서 팀 차원의 개발 생산성을 올리기 위해 시도를 했습니다. 기존의 모노레포는 사실상 멀티 레포지터리처럼 운영 되고 있었는데요. 모노레포로 마이그레이션은 진행했지만, 이후 조직 개편 과정에서 담당하는 팀들이 크게 변경되면서 그 이후 액션 플랜들이 진행되지 못했습니다.
API 콜, Util 함수, 로깅, 실험, 디자인 시스템 컴포넌트 등 대부분의 프로젝트에서 사용되는 요소들을 공통화하여 재사용 할 수 있도록 구조를 개선했습니다. 이 외에도 개발 경험을 개선하기 위해 수동으로 진행하던 여러 작업들을 자동화했습니다. 태그 방식의 배포를 만들어주거나, 피그마로부터 아이콘을 땡겨오는 작업들 같이 수고스럽지는 않지만 귀찮은 작업들이요. 나름 이것 저것 많이 진행 했는데, 아직도 백로그에 쌓인 작업이 산더미처럼 남아있는게 좀 신기한 부분이네요 ^ㅁ^
올해는 정말 다양한 AI 제품들이 나왔습니다. GPT외에 Claude, Cursor, Windsurf등 새로운 게 나올때마다 점점 더 좋아진 성능에 감탄하면서도 좀 무섭기도 했습니다. "이 정도면 나보다 잘하는데?"라는 생각이 꽤 자주 들었거든요.
그래서인지 요즘은 ‘대체 불가능한 개발자’라는 주제에 대한 고민을 종종 하고 있습니다. AI의 발전과 함께 크게 변화하고 있다고 느끼거든요. 개발자의 다양한 경험이 개발자가 가질 수 있는 큰 재산이라고 느꼈는데, AI를 통해 어느정도 쉽게 접근할 수 있는 정보가 되면서 더 이상 차별화 요소가 아니게 된 것 같습니다.
오히려 프론트엔드부터 인프라까지 애플리케이션의 전체적인 구조와 동작 원리를 폭 넓게 이해하는게 더 중요한 역량이 되었다고 느낍니다. 전체적인 큰 그림을 그리고 그것들을 세세하게 이어주는건 아직 AI가 잘 못하는 영역인 것 같거든요. 이 생각도 언제 바뀔지는 모르겠습니다만, 지금까지는 그렇습니다.
어느덧 3년째 운영중인 Hola는 올해도 나름 변화가 많았는데요.
상반기에는 IT 관련 행사를 모아 볼 수 있는 Hola-It를 출시했고, 회원가입 플로우, 그리고 모바일 뷰를 일부 개선했습니다. 아, 알림과 글 등록 플로우도 좀 개선했네요.
하반기에는 기술 부채를 상환하는 시간을 보냈습니다. Hola는 제가 React를 공부하며 만든 사이드 프로젝트인데요. 그러다보니 라이브러리 리액트나 사용하던 라이브러리 버전들이 점점 관리가 안되는 것들이 많았고, 코드베이스도 불필요하게 서로 의존적인 부분이 많아 점점 더 작업하기가 힘들어지고 있었습니다.
올해는 어드민도 만들고, dev 환경도 만들고, 타입스크립트도 적용하고, 패키지 버전도 올리고, 코드도 뜯어고치고, 테스트 코드도 넣고, CI/CD 환경을 개선하고..달리는 수레의 바퀴를 고치는 업무를 주로 했습니다.
사실 생각보다 시간이 너무 오래 걸려서 중간에 한번(여러번) 포기할 뻔 했지만, 나름 책임감과 애정을 가지고 있는 서비스다보니 어찌저찌 잘 끝낼 수 있었습니다.
내년에도 준비중인 많은 기능들이 있는데요. 스포하고 싶어 입이 근질근질 하지만, 아무도 관심을 가지실 것 같지 않아 참도록 하겠습니다. 아무튼 내년에도 많이 사용해주시고 주변에 홍보도 많이 해주시면 감사하겠습니다ㅎㅎ
지금까지 웹 전반에 대해 많이 공부를 해왔습니다. 작은 여러개의 조각들로 파편화되어 머리속에 존재 했었는데, 올해는 그 개념들이 연결되고 합쳐지는 느낌을 종종 받았습니다. 개발자로 일한 기간 중 기술적으로 가장 많이 성장한 한 해 였다고 느낍니다.
내년에는 조금 더 다양한 관점에서 사고해볼 수 있는 시야를 갖는것이 목표입니다.
두 가지를 시도해보고 싶은데요. 리액트를 주로 개발하다보니, 외부의 세계에 대해 많이 무지하단것을 느낍니다. 다른 관점에서 디자인된 프레임워크를 써보고 시야를 넓힐 수 있지 않을까 생각합니다. remix나 astro 같은 친구들에 좀 흥미가 있고, 요즘 좀 주춤하는 것 같지만 svelte도 한번 써봐야겠다 싶구요. 기회가 된다면 모바일이나 서버쪽도 다뤄보고 싶습니다.
비슷한 맥락에서 오픈소스를 많이 읽어보는 것도 목표입니다. 사실 잘 만들어지고 오래 사용되는 오픈 소스만큼 공부하기 좋은 것들도 없다고 생각합니다(근데 왜 안했어?). 라이브러리 설계 방식이나, 운영 중 마주친 주요 이슈들, 그리고 이를 해결하며 내렸던 주요 결정들을 살펴보고 싶습니다.
이상하게도 항상 회고를 할때 돌아보면 많이 성장한 것 같지만, 동시에 부족함 또한 많이 느낍니다. 내년에도 항상 겸손한 자세로 맡은 일에 임하고자 합니다.
별거 아닌 회고인데 여기까지 읽어주신 모든 분들 감사합니다. 내년에도 행복한 일만 가득한 한해가 되시길 기원합니다.