프론트엔드 5년차, 2024년 회고
2025. 01. 02
벌써 5년
2019년 12월 23일에 노리코리아에 입사했고 2021년 10월 8일에 퇴사를 했습니다. 2021년 10월 25일에 테크타카에 입사했고, 2023년 2월 13일에 퇴사를 했습니다. 2023년 3월 13일에 카카오모빌리티에 입사했고, 일한지 1년 9개월을 넘겼습니다.
어느덧 개발자로 일한지 5년이 되었습니다. 5년이란 시간이 큰 의미를 가질지는 모르겠으나, 개발을 처음 시작했을 때 5년차 개발자라면 뭐든지 다 만들어 낼 수 있는 사람이라 생각했는데, 지금의 저는 간단한 것은 어찌 저찌 만들 수 있다고 생각합니다..ㅎㅎ (with Chat GPT)
이제는 주니어 개발자라고 부르기에도 조금 애매한 중니어 개발자가 되었는데요, 앞으로는 더 많은 문제를 해결 할 수 있고 다양한 범위에서 고민하여 문제를 효과적으로 해결 할 수 있는 개발자가 되었으면 좋겠습니다.
제품 개발자
작년에 레저/티켓 버티컬을 런칭하고 이제 1년의 시간이 지났습니다. 실 사용자 수가 많지는 않지만(ㅠㅠ) 제품을 고도화 하면서 많은 것들을 경험했습니다.
리팩토링
초기 런칭을 위해 어찌 저찌 코드를 짰던 것들이, 버그도 있고 신규 피쳐를 위해 이것 저것 넣다보니 복잡해진 코드들이 점점 눈에 보이기 시작했습니다. 켄트 백의 Tidy first
를 읽고 코드를 정리하고, 함수의 범위를 낮추고 변수를 선언하면서 조금씩 개선하고는 있지만, 전반적으로 해체해야 할 코드들도 눈에 보이는데요, 이 부분은 테스트 코드를 더 적극 도입해서 문제를 해결해 보려고 합니다.
코드의 추상화
팀내에서 사용하는 코드와, 팀내 라이브러리에서 사용하는 코드, 그리고 라이브러리에서 사용하는 코드 등 코드의 추상화와 유연성은 사용하는 목적에 따라 많이 달라집니다. 최근에 팀내 라이브러리 코드를 개선해야 하는 일이 있었는데요, 나름 잘 짜여졌다고 생각한 shadcn
스타일로 코드를 개선했는데 코드리뷰에서 우리는 수많은 개발자를 위한 UI 라이브러리를 만드는게 아니라 조직내 특정 역할과 모습을 지닌 라이브러리를 만들고 있으니 너무 유연한 것은 피했으면 좋겠다
는 피드백을 받았습니다. 전혀 생각지 못한 부분이었는데 많은 울림이 되었습니다.
제 수준을 이야기 하자면 이제는 어찌저찌 문제를 해결할 수 있는 개발자라고 생각합니다. 개발의 과정은 일련의 문제 해결의 과정이고, 문제를 해결하는 방법은 다양합니다. 조직내의 개발자로써 문제 해결 방법을 제시할 때, 그저 머리에 든 생각을 있는 그대로 풀어내는게 아닌, 팀내 조직원들에게 이해 가능하고, 용납 가능한 수준의 해결책을 내어야 한다는 걸 다시금 느끼게 되었습니다.
이를 위해서, 문제를 제대로 바라볼 줄 알아야 하고, 해결책에 대한 명확한 근거를 가지고 코드를 작성해야겠더라구요.
이론과 실전을 기반으로 더 나은 문제를 해결할 수 있는 다음 한 해가 되었으면 좋겠습니다.
비동기 커뮤니케이션
이전에는 대면 커뮤니케이션이 편하고, 비동기 커뮤니케이션이 너무 어렵고 힘들다 ㅠㅠ 라고 이야기 했었는데요, 시간이 지나고 이와 관련된 경험이 쌓이고 쌓이다 보니 이제서야 비동기 커뮤니케이션이 익숙해졌습니다. 특정 도구와 메신저를 활용하여 정돈된 글을 작성하고, 이를 공유하면서 서로 같은 문제를 해결하는 경험이 정말 소중하구나 라는 것을 다시금 느낍니다.
요즘 저에게 비동기 커뮤니케이션의 챌린징은 다른 사람들이 쓴 메신저의 글과 위키를 비판적으로 읽고 대답하는 것 입니다.
우리가 가진 자원은 한정적이고 변경을 일으키면 되돌리는 것은 쉽지 않습니다. 소프트웨어 개발에서 제품은 늘 변화하고, 유저와 제품 사이에서 우리는 어떤 방식으로 문제를 해결할 지 이야기 합니다. 그러나 때로는 우리가 변화해야 하는 것들이 의미가 있는지 확인을 할 필요가 있다는 것을 느낍니다.
그래서 종종 특정 질문에 대해 답변하기 전에 스스로 질문을 하는데요
- 변하고자 하는 기획과 디자인이 현재 코드베이스 위에서 더 간편하고 효율적으로 변화게 할 수는 없을까?
- 기획/디자인 된 내용들이 정말 우리에게 필요할까?
- 더나은 해결책은 없을까?
- 기존 히스토리나 정책과 충돌하는 부분은 없을까?
위와 같은 질문을 하면서 제품에 대한 이해를 더 높이고, 제품 개발 참여자로써 더 나은 기여를 하려고 노력하는데요, 시야가 더 트여서 더 나은 제품을 만들기 위한 인사이트가 많이 길러졌으면 좋겠습니다.
접근성 대응
웹 접근성은 프론트엔드 개발자로써 준수해야 하는 사항입니다. 그런데 접근성 대응을 위해 우리는 어떤 부분들을 준수해야 하며, 코드 수준에서는 어디까지 대응해야 하는지에 대해서 알기란 쉽지 않습니다.
올 한해는 제가 담당하는 레저/티켓 버티컬의 모바일 접근성을 개선하는 작업들이 포함되어 있었고, 접근성과 관련된 학습과 QA, 그리고 코드 작업등을 통해 접근성에 대해 배울 수 있는 한해여서 아주 뜻 깊었습니다.
튼튼한 웹앱 만들기
올 한해에는 아주 긴급하게 수정을 해야할 버그는 다행히도 없었습니다. 다만 UI적으로 깨지는 부분 들이 빈번히 보였고, 이를 다른 분들께서 찾아주셔서 수정하는 건들이 꽤 있었습니다.
접근성 및 공통 컴포넌트 도입등으로 수정사항이 많았지만, 이를 테스트를 통해 미리 잡았어야 했는데 잡지 못해 아쉬움과 함께 이 부분이 부족했구나… 라고 느끼며, 제품 개발자로써 내가 만드는 제품을 더 많이 다양하게 사용해야겠다는 생각이 들었습니다.
내년에는 UI깨짐 없이 더 튼튼한 웹앱을 만들어보겠습니다.
앞으로 어떻게 살 것인가
개발자
퇴근 후 학습 및 코딩을 거의 하지 않았습니다. 책을 읽거나, 운동을 하거나, 유튜브를 보는 등 개인적인 시간을 보내면서 한 해를 보냈는데요, 그러다보니 기술적인 성장이 많이 늦어졌다… 는 생각이 많이 들었습니다.
2025년에는 몇몇 키워드를 기반으로 학습하고, 정리하고, 코드를 작성하면서 더 나은 역량을 쌓아가는 걸 목표로…!
멘토링
2024년에도 꾸준히 멘토링을 진행했습니다. 이제는 프로젝트 진행에 대한 QA 및 리뷰를 진행하고 있는데요, 제가 잘 알지 못하는 기술적인 내용들도 많이 질문하고 있기에 멘토링을 기반으로 조금씩 학습을 진행하고 있습니다. 다만 아쉬운점은 멘토링을 진행하면서 기록을 많이 남기지 않다보니 올 한해 얼마나 멘토링을 진행했고, 이를 기반으로 레슨런 하는 부분을 만들지 못했다는 것 입니다.
내년에는 더 기록을 잘하고, 중간 중간 회고를 통해 그저 흘러가는 멘토링이 아니라 더 효율적인 멘토링을 진행 해 보고 싶습니다.
마무리
2024년도 잘 보냈으니, 2025년도 화이팅!
기록과 피드백을 기반으로 더 나은 한해를 보내기를.