2024년 회고
일년간의 정리들
2024-12-30
2024년은 저에게 유독 나에게 있어 중요한 해이다. 처음으로 인턴 생활을 해보았고, 개발자라는 직업을 처음 가져보았으니깐.!!.. 올해 어떤 일이 있었는지 조잘조잘 살펴보려고 한다.
정말 크게 올해 무슨 이벤트가 있었지? 를 살펴보면 다음과 같다. 사실 인턴을 하면서부터 회사 생활이 하반기의 전부인 것 같다..
- 8월부터 B2B스타트업으로 프론트엔드 인턴으로 일한 것
- 대학원 김선배 서비스 합류와 개발
- 테오콘에 참여해 다양한 인사이트를 얻어 간 점
- 상반기엔 멋쟁이사자처럼에서 프론트엔드 강의를 만들고 강의 진행
8월부터 B2B 스타트업에서 프론트엔드 인턴으로 근무를 시작했다. 첫 커리어이고, 회사에 정말 많은 것을 기여하고 말것이다! 라는 포부를 갖고 입사를 했다.
8월에는 회사에서 하나의 서비스 개발에 대해 불완전한 지점들(코드나 개선점들)을 찾아서 개선하는 작업들을 주로 진행하였던 것 같다.
가장 기억에 많이 남아있던 것은 매일매일 적는 일지 부분이 생각보다 복잡한 규모로 되어있었다. 관리하는 상태도 내부적으로 많았고, 동적으로 추가되는 입력에 대해 선언적으로 접근하고 있지 않아서, react-hook-form을 도입하자고 주변 동료들을 설득하기 시작했다. useFieldArray훅으로 동적으로 추가되는 부분들을 제어했고, 정말 많은 useState의 상태들을 하나하나 제거해나갔다.
개선된 전과 후를 비교해서 많은 양의 코드도 줄었고, 진짜 리팩토링을 했다!라는 뿌듯함도 동시에 들었다.
그러나 무지개만 있을 순 ... 없는 것 같다. 정말 조그만 회사여서 그런지 몰라도 기획자분이 없었다. 기획에 참여하긴 하지만 주로 경영업무를 하시는 분이 있었고, 건축회사를 위한 서비스가 필요하다는 이야기를 들었다.
기획이 있어야 개발을 할 수 있었기 때문에, 개발자들 + 디자이너끼리 기획을 하고, 피드백을 받는 수순으로 기획을 하였다.
거의 2주가 넘는 시간을 기획, 회의에 쏟았고, 그 과정에서 나는 도메인에서 오는 어려움을 스스로 해결해 나가고 있지 못하다는 느낌을 많이 받았다.
나에게 있어서, 건축이라는 도메인은 생각보다 높은 장벽이었고, 아무리 인터넷이나 여러 자료를 봐도, 이해하기 어려웠다. (이 부분은 다른 개발자분들도 비슷했다.)
어찌저찌 기획을 다 끝내내 상황에서 9월로 접어들었다. 완벽한 기획은 없겠지만, 나를 제일 괴롭혔던 점은 내가 기획한 것들이 실제 사용자에게 먹힐만한 것인가?였다. 내가 개발한 것들이 실제 사용자에게 가치를 줄 수 있는건지?에 대한 확신이 서지 않았고, 그 상태에서 개발을 했다. 당연히 번아웃이 심하게 왔고, 그 기간동안은 많이 힘들었던 것 같다.
9월 한달 동안은, 건축 회사를 위한 프로젝트를 개발했다. 개발해야 할 범위가 너무 많아서, 협업이 아닌 분업을 했던 것 같다. 그리고 그 당시에 느꼈던 문제는, 한 사람 한사람 마다 테스크를 너무 큰 단위로 가져가다보니, 맥락을 읽기 힘들다는 것이었다.
9월이 끝날 무렵, 회고를 하기로 했다. 지금 겪고 있는 문제들이 무엇이고, 어떻게 해 나가야 할지 의견을 나누는 시간이 있었는데, 내가 생각한 문제는 총 2개였다.
- 새로 개발한 프로젝트, 이미 개발한 프로젝트에 걸쳐서 공통되는 UI가 많다.
- 한 사람 한 사람마다의 기능 단위가 크고, 기능에 대해 문서화가 잘 안되있다보니, 문서화가 필요하다.
다른 분들도 비슷한 문제를 고민하고 있었고, 나는 첫번째 문제를 디자인 시스템을 개발 + 적용으로 풀고자 했고, 두번째 문제는 테크스펙을 통한 문서화를 팀에 도입하는 방향이 어떨지..?조심스럽게 제안을 했다.
디자인 시스템 개발은 너무 재밌었다. 개발을 하면서 번들링, vite, 트리쉐이킹에 대해 좀 더 배웠고, 여러 우여곡절이 있었다. 해당 경험을 사내 블로그에 포스팅해보기도 하였다.
디자인 시스템의 희망과 절망(사내 블로그 글)디자인 시스템을 열심히 개발하고 라이브러리의 버전 관리하는 방법들, 새로운 디자인 시스템을 기존 서비스에 붙이는 과정을 2개월 동안 진행했다. 그 과정에서 여러 방면으로 리팩토링도 진행했다.
- knip으로 프로젝트에서 안쓰는 의존성, exports 구문 제거
- 다국어 번역과정 google spread sheet로 개선하기
- 새로 입사할 분들을 위한 여러 문서화 정리
내가 가장 뿌듯했던 경험은 테크스펙을 도입한 것인데 , 지금까지 개발을 해오면서, 내가 개발하는 기능에 대한 명세나 문서화는 단 한번도 해본적이 없었다. 그것이 문제라고 생각하지 않는다. 그 때 당시에는 문서화가 없었어도 다른 사람의 맥락과 흐름을 따라가는 것에 무리가 없었으니깐.
그러나, 한 사람마다 맡고 있는 기능이 너무 커지거나, 옆 동료가 무엇을 개발하는 지 모를 정도에 이른다면, 문제가 생긴다. 9월 회고에서, 나는 테크 스펙을 적어보는 것을 제안했다.
뱅크샐러드의 테크스펙 블로그를 보고 , 정확히 우리 팀이 갖고 있는 문제와 비슷하다고 생각했고, 처음엔 번거롭고, 힘들겠지만, 차근차근 해보는 것이 어떨까..? 싶어서 제안을 했다
다행스럽게도, 앞으로 새로 개발하는 기능에 대해 모두가 테크 스펙을 적는 것에 합의를 했다. 어떻게 보면 무모한 짓일 수 있다. 나는 인턴이고, 다른 팀원들보다는 책임이 덜 하니깐..
그래도, 좋은 팀을 만들고 싶었다. 내가 거친 팀, 내가 개발하는 모든 시간이 헛되지 않고, 효율적인 방향으로 가고 싶었다.! 그래서 테크스펙을 도입한 이후, 다시 기쁜 마음으로 개발을 했던 것 같다. (회사 근처에 고양이가 있었는데 퇴근길의 낙이었다..)
아직까지, 인턴생활을 했던 회사분들과 연락을 주고받을 정도로, 나는 인턴 생활에 진심이었던 것 같다. 내가 최종적으로 느낀 점은 아래와 같다.
- 내가 진심으로 애정이가고 사랑하는 서비스를 만들고 싶다. 어떤 기술 스택이여도 상관 없다. 기술은 도구일 뿐이다.!(하다못해 JQuery여도..!!..)
- 따듯한 팀원이고 싶다. 친절한 사람이고, 모두에게 편안한 사람이 되고 싶다..
- 생각보다 도메인의 벽은 꽤 높은 것 같다.. 어떻게 하면 낯선 도메인에 가도 적응을 잘 할 수 있을까..최근 계속하는 고민이다.!
- 어제의 나보다 조금이라도 나아지자.! 관성에 의해 사는 사람이 되지 말자.
대학원김선배
나에게 가장 소중한 선물같은 프로젝트였다. 우연찮게 테오의 스프린트 방에서, 프로젝트를 모집하는 글이 하나 올라왔다.
8월부터 인턴을 시작하면서 바뻤지만, 정말 재밌어 보이는 프로젝트이었기에, 합류를 했다. 대학원을 지망하는 후배와 대학원생을 매칭시켜주는 서비스였다. 무엇보다 이미 어느정도 개발이 된 상태의 프로젝트였기에, 개발적으로 이것저것 가져와서 적용해보는 나의 성향에도 딱 들어맞을 것 같아서, 지원을 했다.
결과적으로 대학원김선배에서 했던 것들에 대해 너무 소중하고 값진 경험이었다.
내가 생각하기에도 뛰어난 분들이었고, 특히 같은 프론트엔드 팀원분은 정말 많이 본받고 싶은 분이셨다. 나중에 프로젝트나 리드를 해야하는 자리에 있을 때, 프론트엔드 팀원분처럼 하면 되겠다.,라고 느낄정도로 , 팀을 어떻게 이끌어야 하고, 잘 이끌지에 대해 진심으로 고민하고 실천하는 분이셨다.
김선배에서 여러가지 기능도 넣어보고, 리팩토링도 진행했던 것 같다. 크게 아래와 같은 것들을 진행했다.
- useEffect에서의 네트워크 호출 -> tanstack/query로 마이그레이션
- 모달을 선언적으로 관리해볼까? -> overlaykit로 모달 관리하기
- 순차적인 UI를 위한 useFunnel도입, 튜토리얼 UI의 구현을 위한 reacttour라이브러리 사용
나는 개발적으로 여러 가지를 가져와서 팀원들에게 공유하고, 직접 사용해보면서 개선점을 찾는 것을 좋아한다. 그러다보니, 김선배에서도 팀원들에게 인사이트를 받은 글은 무조건 공유했던 것 같다.(어떻게 보면 부담스러울 정도로...)
팀적으로도 또 좋은 일도 있었다. 사이드 임팩트라는 지원사업에 지원해서 1,200만원의 상금을 탄 것인데 이렇게 많은 상금을 타본적은 없었고, 이게 될까? 진짜 되는걸까? 라는 생각을 갖고 있었던 터라,, 정말 많이 기뻤었던 것 같다.
2025년을 앞두고, 그러나 팀에 큰 변동이 생겼다. 더 이상 대학원 김선배를 개발하지 않기로 결정했다. (요 부분은 다루지 않겠다..!). 그동안 내가 외면했던 문제인 것 같고, 부족한 팀원이 아닐까..? 라는 생각을 많이 했다. 나는 좋은 팀원일까..?너무 소극적인 자세로 일하는 것일까..?를 올해 유독 많이 고민하게 되는 것 같다.
올해 유독 책임이라는 단어의 무게를 많이 알아가는 것 같다. 여태껏 팀원으로서 프로젝트에 참여했던 적이 많았고, 팀이 잘 굴러가는 것, 올바른 팀의 방향성을 위해서는 팀장만 고민하면 되는 거 아니야?라는 마인드가 무의식중에 담겨있었다.
좋은 팀을 위해서는, 팀원도 불편한 점, 팀의 개선점을 적극적으로 이야기 해야 한다. 그러기 위해서는 편안하고 따듯한 분위기가 있어야만 가능하다. 혼자 끙끙 앓고 있는 팀원이 생기지 않기 위해서는, 나 자신이 스스로 노력하고 , 적극적으로 이야기해야 하는 것 또한 배웠다.
내년은 4학년이면서 26살이다. 올 한해 값진 경험도 했고, 여러 감사한 분들을 만났다. 무너지지 말고, 항상 행복하자..!
(최근에 면접을 본 스타트업인데, 결과적으로 떨어졌다. 근데 이 손으로 된 쪽지를 받고, 면접장을 나가서 조금 많이 울었다., 앞으로 정말 잘 살아보자...!!! 후회하지 않도록!)