대규모 프로젝트나 새로운 직장에 깊이 몰입하다가 어느 순간 고개를 들어 주변을 살펴보면, 길을 잃은 듯한 느낌이 들 때가 있습니다. 마치 기술 세계가 나를 지나쳐 간 것처럼요. 새로운 것을 배우지 못한 시간이 결국 빚으로 돌아온 걸까요? 그리고 그 격차는 어떻게 메울 수 있을까요?
집에서 공부할까, 아니면 회사에서 배울까?
학습 시간을 따로 내지 않았다면, 그 시간은 어디선가 만들어야 합니다.
하지만 그 시간은 대체 어디서 올까요? 개인 시간에 공부해야 할까요, 아니면 업무 중에 배워야 할까요?
사실 이건 함정 질문입니다. 정답은 '둘 다'입니다.
업무 외 시간을 확보하는 일은 결코 쉽지 않습니다. 아이가 없던 때부터 한 명, 두 명으로 늘어나는 동안 저에게도 확실히 그랬습니다. 하지만 개인 시간에 배운 지식은 더욱 '내 것'이라는 느낌이 듭니다. 더 흥미롭게 다가오고, 실용성보다 호기심을 자극하는 주제를 자유롭게 탐구할 수도 있습니다.
'시간이 도저히 안 나온다'고 느껴진다면 미리 계획하세요. 하루 중 특정 시간을 정해두거나 행동 트리거를 만드는 겁니다. 예를 들어 "일어나자마자 몇 페이지 읽는다"거나 "저녁 5시 반부터 6시까지 읽는다"처럼요. 책을 눈에 잘 보이는 곳에 두면 그 자체가 가장 확실한 알림이 됩니다.
저도 가족들이 모두 잠든 뒤 프로그래밍 서적을 읽으며 보낸 좋은 시간들이 있었습니다. 분명 효과가 있지만, 본인의 수면을 과하게 희생하지 않도록 주의해야 합니다.
그럼 회사에서는 어떻게 할까?
업무의 일부로 학습하는 것도 마찬가지입니다. 스스로 학습 시간을 계획하세요. 저는 실제로 회사 캘린더에 학습 시간을 블록으로 잡아두기까지 합니다.
대부분의 직장에서 그런 시간을 따로 배정해주는 사람은 없습니다. 혹시 있다면 운이 좋은 겁니다! (제 현재 직장인 Aha!는 바로 그 드문 경우에 속합니다).
그렇지 못한 환경이라면 첫걸음은 신뢰를 쌓는 것입니다. "이것을 배우는 데 시간을 투자하겠습니다. 그러면 매일 하는 업무를 더 효율적으로 해낼 수 있습니다"라는 대화를 시작할 수 있나요? 가능하다면 올바른 방향으로 가고 있는 겁니다.
물론 업무와 직접 관련된 내용으로 학습 범위가 좁혀질 수 있습니다. 예를 들어 앞으로 프론트엔드 JavaScript 작업이 많아질 거라면 React를 공부하는 식이죠.
하지만 생각보다 제한적이지 않습니다.
업무 시간은 『리팩토링(Refactoring)』, 『레거시 코드 활용 리팩터링(Working Effectively with Legacy Code)』, 『도메인 주도 설계(Domain Driven Design)』 같은 기본기를 다루는 책을 읽기에 딱 좋은 시간입니다. 저도 여러 직장에서 읽었던 책들이고, 제 커리어에서 가장 가치 있었던 책들이기도 합니다.
만약 거절당한다면요? 그때는 선택을 해야 합니다. 학습은 그만큼 중요하기 때문에 저라면 어차피 시간을 내겠습니다. 학습 자료만 손에 준비되어 있다면, 대개 업무 중 여유 시간을 어딘가에 끼워 넣을 수 있습니다. 그리고 노력하며 올바른 대상에 집중하면 점점 더 효율적으로 일하게 되고, 시간은 저절로 만들어집니다.
마지막 경고 하나
뒤처졌다는 느낌이 들면 한꺼번에 너무 많은 것을 벌이고 싶은 유혹에 빠지기 쉽습니다. 그건 실수입니다.
1년에 새 언어 하나와 메이저 프레임워크 한두 개를 배우는 것이 적당한 최소 기준이자, 아마 적당한 최대 기준이기도 합니다. 조금 더 무리할 수는 있겠지만, 그 이상을 목표하면 정작 필요할 때 기억나지 않을 겁니다.
낮아 보이지만 시간이 지나면 분명히 쌓입니다. 완벽하게 따라잡지 못했더라도, 원하는 개발자로 성장해 가는 실질적인 진전을 이루고 있다는 확신을 느낄 수 있을 겁니다.