dansoon.log()
어느 개발자의 24년 회고 본문
들어가며
24년은 2년 차 개발자로서 첫 이직을 성공했고, 서비스 회사에서 의미있는 성장과 서비스 기여를 할 수 있던 한 해였다.
아직 부족함이 많은 주니어 개발자였지만,
점차 서비스 개선에 대한 감을 익혀가며 개발자로서의 정체성과 성장에 대해 깊이 고민했던 시간이었다.
새로운 환경에서의 도전과 업무 외 학습을 통해 많은 것을 배웠고, 이제 그 시간들을 돌아보며 내년을 준비하고자 한다.
올해의 업무 :: 새로운 업무 환경과 낯선 코드
처음 마주한 레거시 환경
Vue 3, React 18과 같은 최신 프레임워크를 사용하다가 이직 후 받은 첫 충격은 Node.js 6 버전을 사용한다는 점이었다.
ES6 이후 문법도 지원하지 않는 환경에서 생소한 PHP 코드와 순수 JavaScript로 제품을 개선해야 하는 상황이었다.
서비스 환경도 복잡했는데, PHP와 jQuery를 사용하는 페이지가 있는가 하면 Vue 2를 사용하는 서비스도 있어서 개발 환경이 제각각이었다. 짧은 온보딩 기간이 끝나자마자 바로 투입되어서 낯선 언어들 때문에 당황하면서 개발했던 기억이 아직도 선명하다.
React와 Vue의 편리한 기능들을 전혀 사용할 수 없었지만, 다양한 서비스를 다듬고 버그를 수정하고 고도화하는 과정에서 레거시 코드도 점점 익숙해졌다.
특히 jQuery로 작성된 부분을 vanilla JS로 리팩토링하면서 JavaScript의 기본 개념에 대한 이해도가 크게 향상되었다. 오히려 이런 환경이 내 기본기를 다지는 좋은 계기가 되었다.
리뉴얼에 대한 고민
입사 후 나와 개발팀이 가진 목표는 사실 모든 서비스를 새로운 프레임워크로 전환하는 것이었다.
하지만 서비스 고도화, 장애 대응, 신규 서비스 런칭을 모두 수행해야 하는 상황에서 기존 페이지 리뉴얼은 막대한 리소스가 필요했고,
팀원들이 각자 다른 서비스를 담당하고 있어 의견 조율도 쉽지 않았다.
리뉴얼이 필요한 이유
우리 팀은 "잘 운영되는 서비스를 굳이 리뉴얼해야 하는가?"에 대해 고민했고,
서비스 위주의 업무를 구성하였지만 프론트엔드 팀 내부에서는 다음과 같은 결론에 도달했다.
- 레거시 코드 유지 보수의 높은 진입 장벽
- 신규 입사자들의 PHP 코드 이해 어려움
- 과도하게 분리된 구성 요소로 인한 혼란
- 단일 레포지토리에 혼재된 서비스로 인한 디버깅 난이도 상승
- 개발 생산성 저하
- React 단일 프로젝트 대비 디자인 시스템 유지보수의 어려움
- PHP, Vue 환경에서의 디자인 시스템 적용 제약
- 중복된 컴포넌트 개발 및 관리 필요성
새로운 시작을 위한 접근
개발팀은 실현 가능한 것부터 단계적으로 접근하기로 했다.
우선 서비스 기여 업무를 최우선으로 진행한 후 남는 시간을 최대한 활용하기로 했다.
먼저 팀의 기술적 토대를 다지기 위해 코드 컨벤션을 정립하고, Next.js를 메인 프레임워크로 선정했다.
여기에 FSD 개념을 학습하고 가져오는 과정에서 각 서비스의 독립성을 유지하면서도 일관된 폴더 구조를 확보할 수 있었다.
특히 Next.js 환경에서도 효율적인 폴더 구조를 유지할 수 있도록 팀 내부 컨벤션을 확립한 것이 큰 도움이 됐다. 이런 기반이 잘 갖춰진 상태에서, 마침 내가 일과 병행하며 듣던 부트캠프를 통해 습득한 기술들을 실제 프로젝트에 적용해볼 좋은 기회가 생겼다.
테스트 코드 도입과 테스트 설계는 우리 팀이 꼭 필요로 하던 기술 스펙이었고, 여기에 렌더링 최적화와 깔끔한 구조 설계까지 더해서 프로젝트의 품질을 한 단계 끌어올릴 계획이다. 이렇게 내가 익힌 모든 기술을 활용해서 프로젝트에 실질적인 가치를 더하고 싶다.
시행착오와 성과
여러 시도가 있었다. Lit.js를 활용한 웹 컴포넌트 도입을 시도했으나 호환성 문제로 중단했고, Vue로의 전면 전환도 고려했다.
그러나 PHP Laravel의 서버 사이드 렌더링 이점을 포기하면서까지 클라이언트 사이드 렌더링으로 전환하는 것은 바람직하지 않다고 판단했다. 이러한 우여곡절 끝에 모든 프로젝트의 현대화 전환점을 만들어냈다는 점이 보람차다.
모든 컨벤션과 기술 스택, 프로젝트에 개선사항들과 가이드 문서를 문서화 하면서 팀 내 협업과 서비스를 강화하고,
모든 페이지가 새롭게 작성되어 깔끔하고 체계적인 서비스로 거듭날 수 있다는 기대감으로 가득 찬 요즘이다.
올해의 노력
업무 외 성장을 위한 노력들
2024년은 업무 외적으로도 꾸준한 성장을 위해 노력했던 시간이었다.
첫 회사에서는 업무에만 집중했던 것 같아서, 이번에는 내가 할 수 있는 다른 도전들을 찾아보았다.
그 시작이 바로 자격증 취득이었다.
2023년 3회 차에 정보처리기사 필기에 합격한 후, 2024년 첫 실기 시험에 도전했다.
빠르게 취득하고 싶었지만, 방대한 분량의 시험 범위와 부족한 학습 시간으로 인한 압박감이 상당했다.
그래도 틈틈이 시간을 내어 공부한 덕분에 첫 시도에서 합격할 수 있었고,
마침내 책상 한켠을 차지하고 있던 두꺼운 수험서를 치울 수 있게 되었다.
여기서 그치지 않고 정보처리기사를 준비하면서 학습했던 SQL 지식을 활용해 SQLD 자격증까지 취득할 수 있었다.
자격증이 실무 능력을 완벽히 보장하지는 않지만, 목표를 세우고 이를 달성해가는 과정 자체가 의미 있는 경험이었다.
감각 유지하기
현재 레거시 환경에서 일하고 있지만, React에 대한 전문성을 잃지 않기 위해 매일 새벽 1-2시간씩 학습 시간을 확보했다.
온라인 강의를 통해 기본기를 다지고, 남는 시간에는 기술 서적을 반복해서 읽으며 더 깊이 있는 이해를 추구했다.
비록 실무에서 바로 적용하기는 어렵지만, 현대적인 프론트엔드 기술에 대한 감각을 유지하고 싶었다.
올해 가장 큰 투자를 했던 것은 단연 항해99 부트캠프였다.
10주 동안 매주 새로운 과제를 받아 해결하는 과정은 쉽지 않았지만,
React 생태계에 대한 포괄적인 이해와 특히 테스트 코드 작성 경험을 쌓을 수 있었다.
혼자서는 접하기 어려웠을 다양한 기술들을 체계적으로 학습할 수 있었고, 실제 프로젝트에 적용해볼 수 있는 좋은 기회였다.
이러한 노력들이 당장은 큰 변화를 가져오지 않을 수 있지만, 꾸준히 쌓아온 지식과 경험들이 언젠가는 빛을 발할 거라 믿는다.
2025년에는 이런 열정을 더욱 발전시켜, 기술적 전문성을 한층 더 높이고 싶다.
아쉬움과 성장의 순간들
2024년은 정말 숨 가쁘게 달려온 한 해였다.
운동과 학습, 회사 업무, 그리고 연애까지 모든 것을 놓치지 않으려 애쓰다 보니 마음처럼 잘 되지 않은 부분들이 있었다.
특히 가장 큰 아쉬움은 부모님과의 시간이었다.
자격증 준비와 회사 업무, 항해99 과정을 병행하면서 집에 내려갈 여유를 거의 갖지 못했다.
바쁘다는 핑계로 부모님께 드리는 전화도 점점 뜸해졌고, 이런 모습들이 마음에 걸렸다.
스스로도 부모님을 제대로 챙기지 못하고 있다는 생각에 많이 미안했던 한 해였다.
하지만 이런 아쉬움 속에서도 뜻깊은 성장이 있었다. 특히 개발자 커뮤니티에서의 활동이 큰 즐거움이었다.
단순히 기술적인 교류를 넘어서 인간적인 친분도 쌓을 수 있었고, 이런 관계들이 내 시야를 넓혀주었다.
다양한 경험과 관점을 가진 개발자들과의 교류는 기술적 성장뿐만 아니라 개발자로서의 정체성을 형성하는 데도 큰 도움이 되었다.
블로그 활동도 의미 있는 변화였다. 처음에는 단순히 지식 정리 용도로 시작했지만, 점차 글쓰기 자체가 즐거워지기 시작했다.
특히 회고 글을 쓰면서 그 순간의 생각과 감정을 기록으로 남기는 것의 가치를 깨달았다.
시간이 지나 다시 읽어볼 때마다 그 시기의 고민과 결정들이 생생하게 떠오르고, 이를 통해 나의 성장을 객관적으로 바라볼 수 있게 되었다. 개발 서적을 통한 학습도 꾸준히 이어갔다. 다양한 기술 서적을 구매하고 읽으면서 이론적 기반을 다지려 노력했다.
단순히 읽는 것에 그치지 않고 실제 업무에 적용할 수 있는 인사이트를 얻으려 노력했고, 이는 실제 프로젝트에서 큰 도움이 되었다.
앞으로도 이런 독서 습관을 이어가면서, 좀 더 깊이 있는 이해와 적용을 위해 노력할 생각이다.
이런 경험들을 통해 부족한 부분은 채우고, 좋았던 부분은 더욱 발전시켜 나가고 싶다.
특히 내년에는 부모님과의 관계에 더 많은 관심을 기울이면서도,
지금까지 쌓아온 개발자로서의 성장 모멘텀도 잃지 않도록 균형 잡힌 생활을 만들어가고 싶다.
2025년 목표와 다짐
2024년은 정보처리기사와 SQLD 취득, 항해 수료 등 목표했던 성과들을 이뤄낸 뜻깊은 해였다.
되돌아보니 바쁜 와중에도 꾸준히 노력한 덕분에 값진 결실을 맺을 수 있었다는 생각이 든다.
2025년은 개인적으로 인생의 큰 전환점이 될 것 같다. 지금의 여자친구와 결혼을 준비하게 될 텐데, 설렘과 동시에 책임감도 크게 느낀다.
업무와 결혼 준비를 병행하는 게 쉽지는 않겠지만, 둘 다 소홀히 하지 않도록 잘 계획을 세워 진행하고 싶다.
특히 여자친구와 함께하는 시간도 충분히 가지면서, 양가 부모님과도 좋은 관계를 쌓아가고 싶다.
작년에는 바쁘다는 핑계로 부모님을 자주 뵙지 못했는데, 올해는 더 자주 찾아뵙고 가족들과 함께하는 시간을 더 많이 만들어내고 싶다.
기술적으로는 더 넓은 시야를 갖춘 개발자로 성장하고 싶다. 특히 오픈소스 생태계에 적극적으로 참여하는 것이 큰 목표다.
평소 자주 사용하는 라이브러리들의 코드를 꾸준히 들여다보면서, 실제로 기여할 수 있는 부분을 찾아 참여해보고 싶다.
단순히 코드를 사용하는 것을 넘어서, 오픈소스 커뮤니티의 일원으로서 의미 있는 기여를 하고 싶다.
시니어 개발자로 성장하는 과정에서 기술적 전문성뿐만 아니라 소프트 스킬도 중요하다고 생각한다.
테스트 주도 개발과 성능 최적화, MSW나 Storybook 같은 테스트 도구들에 대한 심화 학습도 계획하고 있다.
특히 현재 팀에서 진행 중인 디자인 시스템 구축 경험을 더 확장시켜, 확장 가능하고 유지보수가 용이한 시스템을 만드는 데 기여하고 싶다.
이런 경험들이 쌓이다 보면 자연스럽게 시니어 개발자로서의 역량도 갖추게 되지 않을까 기대한다. 물론 이 모든 계획들을 완벽하게 실천하기는 쉽지 않겠지만, 매달 진행 상황을 점검하고 필요한 부분은 조정해가면서 꾸준히 노력해볼 생각이다.
개인적인 큰 변화 속에서도 개발자로서의 성장을 멈추지 않고, 더 넓은 시야를 가진 시니어 개발자로 거듭나고 싶다.