개발자로 성장하기
기술적 성장
처음엔 새로운 기술을 배우는 것에만 집중했다. 강의를 들으면 배운 대로 구현할 수 있고, 그걸 성장이라고 생각했다. 그런데 시간이 지나면서 기술 자체보다 그 기술을 어떤 상황에서 왜 쓰는지가 더 중요하다는 걸 느끼게 됐다.
실무는 책이나 강의랑 달랐다. 폐쇄망에서 개발해야 하는 상황이 닥쳤을 때는 진짜 막막했다. 그런데 이런 제약이 오히려 더 깊이 있게 공부하게 만들었다. 형상관리, 네트워크 격리 환경에서의 배포 전략까지 파고들게 됐다.
프로젝트하면서 배운 것
TPS 프로젝트에서 레거시 시스템을 처음 다뤘다. 처음엔 다 뜯어고치고 싶었는데, 점진적인 개선이 현실적이라는 걸 배웠다. 이상적인 구조로 한 번에 바꾸는 건 레거시 앞에선 통하지 않는다.
기술 서적이나 강의를 볼 때도 이제는 “우리 환경에 어떻게 적용할까”라는 관점으로 보게 됐다. 그냥 따라 치는 게 아니라 맥락을 이해하려고 한다.
앞으로 채워가야 할 것
코드 품질
- 클린 코드를 신경 쓰고, 테스트 코드를 작성하는 습관 만들기
- 리팩토링을 주기적으로 진행하기
기술 범위
- 프론트엔드와 백엔드 양쪽 기본기 다지기
- 배포 자동화, CI/CD 파이프라인 직접 구축해보기
- 클라우드 서비스 실전 경험 쌓기
소프트 스킬
- 기술 문서를 잘 쓰는 능력
- 코드 리뷰에서 건설적인 피드백 주고받기
- 팀 내 지식 공유 문화 만들기
기술 vs 비즈니스
개발자로 성장한다는 건 기술적 역량만 키우는 게 아니다. 이 기술이 비즈니스에서 어떤 의미를 갖는지, 어떤 문제를 해결하는지를 함께 이해해야 한다. 제약이 많은 환경에서 오히려 더 성장하는 경우가 있는 건, 제약이 진짜 문제를 찾아내도록 만들기 때문이 아닐까 싶다.
새로운 기술 트렌드는 따라가되, 무조건 따라가지는 않으려고 한다. 지금 상황에 맞는 선택이 결국 좋은 선택이다.