Showing Posts From
시니어
- 08 Dec, 2025
관리직인가, 개발직인가 - 파트장이라는 정체성의 혼란
관리직인가, 개발직인가 - 파트장이라는 정체성의 혼란 파트장이라는 애매한 자리 작년에 파트장 달았다. 승진 축하한다고 팀장이 저녁 쏘고. 집에 와서 명함 보는데 기분이 이상했다. 개발 파트장. 이게 관리직인가, 개발직인가. 월요일 아침부터 회의다. 주간계획, 분기목표, 리소스배분. 10시부터 12시까지 회의실에 앉아 있었다. 점심 먹고 오후 2시, 또 회의. 타팀 협업 논의. 코드 짤 시간은 언제 나오나. 퇴근 전에 IDE 켰다. 일주일 전에 만들던 기능. 코드 보는데 뭘 하려던 건지 기억이 안 난다. 주석도 안 써놨다. 6시 반, 후배가 퇴근 인사하고 나간다. 나는 이제 시작인데.코드 리뷰는 언제 후배들이 PR 올린다. 하루에 10개씩 쌓인다. 아침에 출근하면 슬랙 알림 15개. "파트장님 코드리뷰 부탁드립니다" 점심시간에 본다. 급하게 본다. 제대로 못 본다. 어제 승인한 코드에서 버그 났다. 내가 놓친 거다. 후배한테 미안하다. "괜찮습니다"라고 하는데. 괜찮을 리가 없다. 예전엔 코드리뷰가 즐거웠다. 후배 코드 보면서 "이렇게 하면 더 좋아" 알려주고. 같이 고민하고. 지금은 체크리스트 확인하듯 본다. 테스트 있나, 네이밍 괜찮나, 로직 문제 없나. 5분 안에 끝낸다. 이게 리뷰인가 싶다. 팀장한테 말했다. "코드리뷰 시간이 부족합니다" "회의 줄여볼게요" 다음 주에 회의 하나 더 생겼다.1on1은 또 언제 팀원 8명. 한 달에 한 번씩 1on1 한다. "요즘 어때요?" "괜찮습니다" 괜찮을 리 없다는 거 안다. 근데 물어볼 시간이 없다. 1on1 30분 잡는데. 10분은 근황 얘기. 10분은 업무 얘기. 나머지 10분에 진짜 얘기가 나와야 하는데. "다음 미팅 시간이라 이만" 끊기는 거다. 신입 후배 하나가 있다. 작년에 들어왔다. 코드 짜는데 어려워한다. "시간 날 때 같이 짜봅시다" 석 달째 시간이 안 난다. 어제 그 후배가 또 PR 올렸다. 똑같은 실수가 있다. 지난번에도 지적했던 거다. "이 부분 다시 확인해 주세요" 댓글 달고 나서 죄책감 든다. 내가 제대로 안 가르쳐줘서 그런 건데. 예전엔 후배 옆자리에 앉아서. 같이 화면 보면서. "여기 이렇게, 저기 저렇게" 했는데. 지금은 댓글로 끝이다.내 코드는 언제 짜나 이번 분기 목표가 있다. 신규 기능 개발. 내가 맡았다. 설계는 한 달 전에 끝났다. 구현은 아직 시작도 못 했다. 매일 "오늘은 코딩한다" 다짐한다. 출근하면 메일부터 본다. 답장하다 보면 1시간. 슬랙 확인한다. 긴급한 거 처리한다. 또 1시간. 회의 시간이다. 점심 먹고 오후. 후배가 질문한다. "이 부분 어떻게 하면 될까요?" 30분 같이 본다. 다른 후배가 온다. "배포 이슈 있습니다" 로그 확인한다. 원인 찾는다. 1시간 지났다. 6시다. 이제 코딩 시작할까. 팀장이 부른다. "내일 발표 자료 좀 봐줘요" 8시 되어서 퇴근한다. 코드 한 줄 못 짰다. 집에 와서 노트북 켠다. 피곤하다. 잠깐만 누웠다가. 새벽 2시에 깬다. 내일도 회의다. 개발자인가 관리자인가 기술 블로그 본다. 요즘 트렌드가 뭔지. "Rust로 고성능 API 만들기" "Kubernetes 실전 가이드" "AI 시대의 백엔드 아키텍처" 읽다가 만다. 읽을 시간도 없고. 읽어도 써먹을 곳이 없다. 우리 팀은 Java Spring이다. 15년 된 레거시다. 바꿀 수도 없고. 바꿀 이유도 없다. 그래도 읽는다. 뒤처지는 게 무섭다. 기술 면접관 들어간 적 있다. 지원자가 물었다. "요즘 MSA 전환 어떻게 생각하세요?" 대답하다가 막혔다. 이론은 안다. 실무는 모른다. 지원자가 나보다 더 잘 알았다. 합격시켰다. 그 사람 지금 우리 팀에 있다. 기술적인 건 그 후배한테 물어본다. 이게 맞나 싶다. 친구 만났다. 대학 동기다. 걔는 CTO다. "요즘 뭐 해?" "회의하고, 리뷰하고" "코딩은?" "못 한다" 친구가 웃었다. "넌 관리자야" 집에 오는 길에 생각했다. 나는 개발자인가. 관리자인가. 둘 다 아닌 것 같다. 승진은 축복인가 저주인가 작년 이맘때. 팀장이 불렀다. "파트장 제안이 들어왔어요" 고민했다. 파트장 되면 연봉 오른다. 팀원 관리도 해야 한다. 코딩은 줄어든다. "며칠 생각해 보겠습니다" 이틀 고민했다. 아내한테 물었다. "연봉 얼마나 올라?" "1000만원쯤" "해" 승진했다. 첫 달은 괜찮았다. 회의도 신선하고. 팀 관리도 재미있고. 두 번째 달부터 이상했다. 코딩할 시간이 없다. IDE 켜는 횟수가 줄었다. 석 달 지나니까. 내가 개발자가 맞나 싶었다. 동료들이 축하한다. "승진 축하해요" "이제 편하시겠어요" 편할 리가 없다. 더 바쁘다. 더 피곤하다. 더 불안하다. 코드 짜는 시간은 줄었는데. 책임은 늘었다. 팀원이 실수하면 내 책임. 일정 밀리면 내 책임. 장애 나면 내 책임. 예전엔 내 코드만 책임지면 됐다. 지금은 8명 코드를 책임진다. 밤에 잠 안 올 때가 있다. "내가 뭘 하고 있나" 승진이 축복인지. 저주인지. 모르겠다. 팀원들의 눈빛 신입 후배가 물어본다. "파트장님은 어떻게 공부하세요?" 대답이 막힌다. "틈날 때 블로그 보고..." 거짓말이다. 요즘 공부 안 한다. 다른 후배가 말한다. "저도 나중에 파트장 되고 싶어요" 웃으면서 답한다. "열심히 해봐" 속으로 생각한다. "안 되는 게 나을 거야" 팀원들이 나를 본다. 궁금해한다. 저 사람은 코드를 짜나. 저 사람은 개발자가 맞나. 증명하고 싶다. "나도 개발자야" 근데 증명할 방법이 없다. 예전엔 실력으로 인정받았다. 코드 잘 짜고. 문제 잘 해결하고. 기술 리드하고. 지금은 직급으로 인정받는다. 파트장이니까. 경력 20년이니까. 실력은 모른다. 나도 모른다. 무서운 거다. 어디로 가야 하나 임원 제안 들어왔다. 내년쯤. 승진하면 연봉 1억 넘는다. 개발은 영영 못 한다. 고민 중이다. 임원 되면 완전히 관리자다. 전략 짜고. 예산 관리하고. 경영진 미팅하고. 코드는 못 본다. 기술은 몰라도 된다. 이게 내가 원하던 길인가. 20년 전에 개발 시작했다. 처음 코드 짤 때. "Hello World" 찍을 때. 그때가 좋았다. 밤새 코딩하고. 새벽에 배포하고. 에러 잡고. 힘들었지만 재미있었다. 지금은 재미가 없다. 회의록 쓰고. 일정 관리하고. 보고서 만들고. 이게 내가 하고 싶던 일인가. 퇴사하고 싶을 때가 있다. 작은 회사 가서. 다시 개발자로. 근데 현실이다. 나이 45에. 연봉 9500에. 다시 개발자로 취직되나. 아니, 개발자로 일할 수 있나. 체력도 문제다. 밤샘 코딩은 이제 못 한다. 그냥 이 길로 가는 거다. 파트장에서 임원으로. 관리자로. 개발자는 아닌 사람으로. 그래도 어제 신입 후배가 PR 올렸다. 내가 조언했던 거 반영했다. 코드가 깔끔했다. 칭찬 댓글 달았다. "잘했어요" 후배가 답했다. "파트장님 덕분입니다" 기분이 좋았다. 조금. 오늘 회의에서. 내가 제안한 아키텍처. 팀장이 채택했다. "역시 박 파트장" 기분이 좋았다. 조금. 퇴근 전에 코드 짰다. 30분. 겨우 30분. 그래도 짰다. IDE 켜고. 함수 하나 만들고. 테스트 돌리고. 손에 익은 동작들. 이게 좋다. 아직은. 파트장이 뭔지 모르겠다. 개발자인지 관리자인지 모르겠다. 그냥 하는 거다. 오늘도. 내일도. 회의하고. 리뷰하고. 가끔 코딩하고. 이게 내 일이다. 지금은.파트장 1년 차. 아직도 모르겠다. 내가 뭔지.
- 07 Dec, 2025
슬랙 100개 알림, 진짜 중요한 건 뭐지?
슬랙 100개 알림, 진짜 중요한 건 뭐지? 오전 9시 10분. 자리에 앉았다. 노트북을 켰다. 슬랙이 뜬다. 빨간 숫자가 보인다. 127개. "어제 퇴근할 때 다 읽었는데."127개의 정체 스크롤을 내렸다.전사 공지 8개 다른 팀 채널 잡담 40개 내 팀 채널 업무 15개 DM 12개 멘션 6개 리액션 알림 46개리액션이 거의 반이다. "누가 내 메시지에 👍 눌렀습니다" 알아서 뭐하나. 멘션 6개부터 읽었다. 진짜 중요한 건 2개였다. 나머지는 "파트장님 의견 궁금합니다" 류. 의견 안 내도 진행되는 것들. DM 12개. 급한 건 1개. "통화 가능하세요?" 30분 전 메시지다. 이미 해결됐을 거다. 읽는 데 1시간 9시 10분에 시작했다. 10시 5분에 끝났다. 55분 걸렸다. 읽기만 한 게 아니다.답장 8개 리액션 20개 "확인했습니다" 5개확인했다는 답장을 안 하면 불안하다. "파트장님 못 보신 건가" 생각할까봐.10시 5분. 이제 일을 시작한다. 아, 10시 30분에 회의가 있다. 25분 남았다. 코드를 짤까? 25분이면 뭘 하나. 환경 세팅만 10분이다. 메일이나 볼까. 메일 47개. 됐다. 2시간 뒤 회의 끝났다. 12시 20분. 점심 먹고 왔다. 1시 30분. 슬랙을 켰다. 42개. 1시간 30분 만에 42개. 계산해봤다. 하루 8시간이면 약 224개. 실제로는 퇴근 후에도 온다. 자기 전까지 치면 300개는 된다. 예전엔 이메일이었다. 하루 한두 번 확인하면 됐다. 지금은 실시간이다. 5분마다 확인 안 하면 불안하다. "나만 그런가?" 팀원들 보면 다들 슬랙 켜놓고 산다. 알림 소리 나면 바로 본다. 나도 봐야 하나?코딩하려고 하면 2시. 드디어 코딩 시간이다. 레거시 리팩토링 작업. 집중이 필요하다. IntelliJ를 켰다. 코드를 읽기 시작했다. "이 로직은..." 띵. 슬랙이다. "파트장님 잠깐 봐주세요" 링크가 있다. 클릭했다. 코드 리뷰 요청이다. 리뷰했다. 10분 걸렸다. 다시 내 코드로 돌아왔다. "아, 뭐 보고 있었지?" 처음부터 다시 읽는다. 띵. 또 왔다. "프로덕션 에러 확인 부탁드립니다" 로그를 봤다. NullPointerException. 원인을 찾았다. 15분. "수정해서 배포하세요" 답장. 다시 내 코드. "이 메서드가..." 띵띵. 두 개가 동시에 왔다. 포기했다. 진짜 중요한 건 저녁 6시. 팀원들이 하나둘 퇴근한다. "먼저 가겠습니다" "들어가세요" 6시 30분. 사무실이 조용해졌다. 슬랙도 조용하다. 이제 코딩한다. 집중한다. 드디어 된다. 7시부터 9시까지. 2시간 동안 끊김 없이 짰다. 오늘 하루 중 가장 생산적인 시간. 9시 10분. 퇴근 준비. 슬랙을 봤다. 저녁 6시 이후 메시지 3개. 3개. 낮 8시간 동안 200개. 저녁 3시간 동안 3개. "진짜 중요한 메시지는 하루에 몇 개나 될까?" 계산해봤다. 오늘 받은 슬랙 300개 중내가 직접 답해야 하는 것: 15개 시급한 것: 3개 나만 할 수 있는 것: 5개진짜 중요한 건 5개였다. 나머지 295개는 뭐였나. 30대 후배의 말 어제 후배랑 술 마셨다. 35살 시니어 개발자. 잘한다. 실력 있다. "형, 슬랙 알림 다 꺼놨어요" "네?" "DM하고 멘션만 켜놨어요" 충격이었다. "그럼 팀 채널은?" "점심 먹고 한 번, 퇴근 전에 한 번만 봐요" "급한 건 어떡하는데?" "진짜 급하면 전화 와요" "..." "형도 그렇게 하세요" "내가 파트장인데 그래도 되나?" "더 그래야죠. 형이 계속 답장하니까 애들도 물어보는 거예요" "..." 맞는 말이다. 내가 5분 안에 답장하니까 팀원들도 5분 안에 답 기대한다. 악순환이다. 실험 오늘 실험했다. 알림을 껐다. 멘션만 남겼다. 불안했다. 10분마다 슬랙을 켰다. 습관이다. 참았다. 30분에 한 번만 봤다. 급한 건 없었다. 점심 먹고 한 번 봤다. 밀린 메시지 47개. 중요한 건 2개. 10분 만에 처리했다. 오후 3시에 한 번 봤다. 32개. 중요한 건 1개. 놀라운 건 세상은 잘 돌아갔다. 내가 즉답하지 않아도 팀원들은 알아서 했다. 오히려 좋았다. "파트장님 의견 듣고 결정할게요" 대신 "이렇게 결정했습니다" 가 늘었다. 코딩 시간 알림을 끈 첫날. 오전에 2시간 코딩했다. 끊김 없이. 20년 개발했다. 코딩은 몰입이 중요하다. 15분 집중하면 로직이 보인다. 1시간 집중하면 구조가 보인다. 5분마다 끊기면 영원히 15분을 못 채운다. 겉핥기만 하다 끝난다. 요즘 퇴근 후에 집에서 코딩한 이유가 이거였다. 낮엔 집중을 못 하니까. 근데 이제 낮에도 된다. 알림만 껐을 뿐인데. 파트장의 역할 고민했다. "파트장이 메시지 늦게 확인하면 안 되는 거 아냐?" 아니다. 파트장의 역할은 즉답이 아니다.방향 잡아주기 막힌 거 뚫어주기 의사결정하기 성장 도와주기이걸 하려면 생각할 시간이 필요하다. 슬랙 100개 읽을 시간 말고. 즉답은 주니어도 한다. "스펙 확인했고, 코드 짰고, PR 올렸습니다" 빠르다. 정확하다. 파트장은 다른 걸 해야 한다. "이 방향이 맞나?" "3개월 뒤를 보면?" "기술 부채가 쌓이진 않나?" 이런 생각은 슬랙 알림 띵띵 울릴 때 안 된다. 규칙을 만들었다 팀 회의에서 얘기했다. "슬랙 사용 규칙 만들자"긴급: 전화 또는 멘션 중요: DM 참고: 채널 메시지 잡담: 따로 채널 만들기"슬랙은 실시간 답장 기대하지 않기" "1시간 내 답장 없어도 재촉 안 하기" "급하면 전화하기" 팀원들 반응이 좋았다. "사실 저도 슬랙 스트레스였어요" "알림 때문에 집중이 안 돼요" 다들 불편했던 거다. 말을 안 했을 뿐. 2주 후 규칙 만든 지 2주 됐다. 슬랙 메시지가 줄었다. 하루 평균 300개에서 150개로. 반으로 줄었다. 중요한 건 늘었다. "이거 어떻게 생각하세요?" 질문의 질이 올랐다. "급한데 봐주세요" 가 사라졌다. 코딩 시간이 늘었다. 낮에 3시간은 집중한다. 예전엔 불가능했다. 팀원들 표정도 좋아졌다. "요즘 일하기 편해요" "집중이 잘 돼요" 전화는 늘었나? 아니다. 오히려 줄었다. 진짜 급한 일이 별로 없었던 거다. 다른 팀 파트장 옆팀 파트장이 물어봤다. "요즘 슬랙 적게 쓰네?" "알림 껐어요" "그게 되냐?" "되던데요" "나도 해볼까..." "해보세요. 팀도 편해져요" 2주 뒤에 다시 만났다. "진짜 되네" "그죠?" "근데 처음엔 불안했어" "저도요. 일주일 적응 기간 필요해요" "애들이 자기들끼리 해결하더라" "원래 할 수 있었던 거죠" 우리가 너무 빨리 답해줘서 팀원들이 생각할 기회를 못 가진 거다. 임원의 슬랙 우리 임원은 슬랙을 안 한다. 메일만 한다. 하루 두 번 확인한다. 예전엔 답답했다. "왜 슬랙 안 보세요?" 이제 안다. 저래야 맞다. 임원은 더 큰 그림을 봐야 한다. 슬랙 100개 읽을 시간에 전략을 짜야 한다. 파트장도 마찬가지다. 코드 짜고 방향 잡을 시간이 필요하다. 슬랙 읽느라 하루 가면 안 된다. 20대의 슬랙 팀 막내가 말했다. "저는 슬랙이 편한데요" "응?" "이메일보다 빠르고 가볍잖아요" 맞다. 그건 맞다. 하지만. "너 하루에 슬랙 몇 개 와?" "음... 한 200개?" "다 읽어?" "대충요. 중요한 것만" "중요한 거 몇 개?" "10개요?" "나머지 190개는?" "그냥... 스쳐 지나가요" 그렇다. 20대는 스쳐 지나간다. 45세는 다 읽는다. 이게 차이다. 세대 차이 30대 중반부터는 슬랙에 피로하다. 40대는 슬랙이 고역이다. 20대는 즉각 반응한다. 40대는 숙고하고 답한다. 20대는 동시에 10개 처리한다. 40대는 하나씩 깊게 판다. 틀린 게 아니다. 다른 거다. 근데 회사는 20대 방식을 요구한다. "빠른 소통" "실시간 협업" 40대는 적응해야 한다. 아니면 방법을 찾아야 한다. 나는 후자를 택했다. 결론 슬랙 100개. 진짜 중요한 건 5개다. 나머지 95개는정보 공유 단순 확인 리액션 잡담다 필요하다. 하지만 즉각 반응할 필요는 없다. 파트장의 일은 모든 슬랙에 답하는 게 아니다. 중요한 5개에 집중하는 거다. 알림을 껐다. 하루 3번 확인한다. 급하면 전화 온다. 코딩 시간이 늘었다. 생각할 시간이 생겼다. 팀원들도 만족한다. 20년 개발했다. 이제 안다. 빠른 답장보다 깊은 생각이 중요하다.슬랙은 껐다. 근데 이메일이 늘었다. 이것도 줄여야 하나.
- 03 Dec, 2025
Java와 Spring의 20년, 이게 족쇄인가 무기인가
Java와 Spring의 20년, 이게 족쇄인가 무기인가 아침 스탠드업 미팅 "파트장님, 이번 프로젝트는 Kotlin으로 해도 될까요?" 신입 김대리가 물었다. 25살. 눈이 반짝였다. 나는 커피를 한 모금 마셨다. 3초 정도 침묵했다. "일단 기존 시스템이 Java라서..." 변명처럼 들렸다. 나한테도. 회의실을 나왔다. 복도를 걷는데 발걸음이 무거웠다.20년이다. Java 1.4부터 썼다. 당시엔 최신이었다. EJB가 복잡해서 Spring 나왔을 때 신세계였다. 지금 그 Spring이 "레거시 기술"로 불린다는 게 믿기지 않는다. 아니, 믿고 싶지 않다. 점심시간, 구내식당 후배 세 명이 테이블에 앉았다. 나는 한 칸 떨어진 곳에 앉았다. "요즘 Rust 공부하는데 재밌어요." "저는 Next.js 강의 듣는 중이에요." "TypeScript 5.0 나왔는데 개쩔어요." 들리는 단어가 하나도 안 반갑다. 나는 제육볶음을 먹었다. 입맛이 없었다. 핸드폰을 켰다. 개발 커뮤니티를 봤다. "Java는 이제 끝났다" "Spring은 너무 무겁다" "요즘 누가 XML 설정을 하냐" 댓글이 200개였다. 다 읽었다. 밥이 목에 안 넘어갔다. 오후 3시, 코드리뷰 김대리가 PR을 올렸다. Kotlin으로 작성한 유틸리티 클래스였다. data class UserRequest( val name: String, val email: String )5줄이었다. 내가 Java로 짰으면 20줄이다. Getter, Setter, Constructor, toString, equals, hashCode. "깔끔하네요." 내가 말했다. 진심이었다. 그런데 왜 기분이 이상하지? 김대리가 웃었다. "Kotlin 편하죠?" "응, 좋아 보여." 말은 그렇게 했다. 속으로는 달랐다. '나도 배워야 하나? 지금?'그날 저녁 집에 가는 지하철에서 'Kotlin 입문' 강의를 결제했다. 19,900원이었다. 일주일 뒤 진도는 15%였다. 그것도 출퇴근 시간에만 봤다. 회사에서 Java 코드를 하루 8시간 짜는데, 퇴근 후에 Kotlin을 배울 기력이 없었다. 밤 11시, 혼자 남은 사무실 다들 퇴근했다. 나만 남았다. 레거시 시스템 리팩토링 작업이었다. 10년 된 코드를 고치는 중이었다. 이상했다. 10년 전 코드가 내 코드였다. 주석을 읽었다. "// 2014.03.15 박시니어 작성" 당시엔 최선이었다. 지금 보니 개선할 게 보인다. 20분 만에 300줄을 100줄로 줄였다. Spring의 최신 기능을 썼다. 빌드했다. 테스트 통과. 배포 완료. 이 순간만큼은 기분이 좋았다. '나 아직 되네.' 그런데 문득 생각했다. '10년 뒤 이 코드도 레거시겠지?' 창밖을 봤다. 빌딩 불빛이 깜빡였다. 주말 오전, 카페 노트북을 펼쳤다. 기술 블로그를 읽었다. "Why We Migrated from Java to Kotlin" "Spring Boot vs Micronaut: Performance Comparison" "Is Java Still Relevant in 2024?" 제목만 봐도 불안했다. 클릭했다. 읽었다. 이해했다. 공감도 했다. 그런데 실천은 못 하겠더라. 월요일 출근하면 또 Java다. 또 Spring이다. 레거시 시스템 10개. 전부 Java 8. 하나는 아직 Java 7이다.마이그레이션? 팀장님이 웃으며 말했다. "일단 돌아가잖아요. 급한 거 먼저 하죠." 급한 건 언제나 있다. 신규 프로젝트, 장애 대응, 성능 개선. 레거시는 언제나 '나중에'. 그 '나중에'는 안 온다. 20년 경험으로 안다. 월요일 아침, 1on1 미팅 신입 이사원이 물었다. "파트장님, 저 Java 말고 다른 것도 배워야 할까요?" 22살이었다. 입사 3개월. 나는 대답을 못 했다. 5초 정도. "음... 일단 Java를 깊게 배워." "그런데 요즘 추세는..." "추세 따라가려고 하면 끝이 없어." 말하면서도 확신이 없었다. 이사원은 고개를 끄덕였다. 표정이 애매했다. 복잡했다. 내가 후배 커리어를 막는 건가? 그런데 또 생각해보면 Java 모르고 어떻게 개발을 하나? JVM 구조, GC 동작 원리, 멀티스레딩, 동시성 제어. 이런 거 모르고 Kotlin만 쓰면 그게 진짜 실력인가? 혼란스러웠다. 목요일 저녁, 기술 세미나 사내 세미나였다. 주제는 "Kotlin 도입 사례". 발표자는 타 부서 파트장이었다. 나랑 동갑. "마이그레이션 결과, 코드량 30% 감소, 빌드 시간 20% 단축." 박수가 나왔다. 질문 시간이었다. 손을 들었다. "기존 Java 개발자들 적응은 어땠나요?" 파트장이 웃었다. "처음엔 힘들었죠. 근데 2주면 익숙해집니다." 2주. 나는 한 달째 15% 진도다. 세미나가 끝났다. 복도에서 그 파트장을 만났다. "형, 진짜 2주면 돼요?" "솔직히 말하면 3개월은 걸려요. 근데 발표 자리에서 그렇게 말하면..." 웃었다. 둘이. 조금 위안이 됐다. 금요일 오후, 연봉 협상 팀장님이 불렀다. 연봉 리뷰 시즌이었다. "올해 평가 A입니다. 7% 인상." 9500만원에서 10165만원이 됐다. "감사합니다." "내년엔 임원 후보 검토 들어갑니다." 임원. 개발자의 꿈이라고 하던데 나는 아니다. 임원 되면 관리만 한다. 코드는 진짜 못 짠다. "고민해보겠습니다." 팀장님이 의아한 표정이었다. "고민할 게 뭐가 있어요?" 설명할 수 없었다. '저는 코딩이 좋아서요' 라고 하면 유치해 보인다. 45살이 무슨 코딩이냐는 표정을 볼 게 뻔했다. 그냥 웃었다. 토요일 오전, 개인 프로젝트 집에서 혼자 코딩했다. 토이 프로젝트였다. 간단한 블로그 시스템. 그런데 이번엔 Kotlin으로 시작했다. IDE를 켰다. IntelliJ가 Kotlin을 추천했다. 첫 줄을 썼다. fun main() { println("Hello, Kotlin") }신기했다. Java보다 타이핑이 적었다. 3시간 코딩했다. REST API 3개 만들었다. Java였으면 5시간 걸렸을 거다. '어? 생각보다 괜찮은데?' 저녁을 먹고 다시 앉았다. 자정까지 코딩했다. 오랜만에 재밌었다. 월요일 출근길에 문득 깨달았다. '회사 코드는 왜 이렇게 안 하지?' 답은 간단했다. 레거시. 100만 줄. 10년. 고객. 안정성. 한숨이 나왔다. 월요일 점심, 대학 동기와의 전화 동기가 전화했다. 대학 때 같이 C 언어 과제 했던 친구. "야, 나 이번에 스타트업 CTO 됐어." "오, 축하해." "근데 기술 스택 고민인데, Java 쓸까 Kotlin 쓸까?" 나는 3초 멈췄다. "...둘 다 장단점이 있지." "야, 너 Java 20년 했잖아. 솔직히 말해봐." 솔직히. "Java는 안정적이야. 레퍼런스 많고, 사람 구하기 쉽고." "근데?" "근데 요즘 애들은 Kotlin 배우고 싶어 해. 코드도 깔끔하고." "그럼 뭐 하라는 거야?" "...모르겠어. 나도 고민 중이야." 친구가 웃었다. "너도 그런 고민 하는구나. 위안된다." 전화를 끊었다. 위안은 안 됐다. 화요일 저녁, 후배와의 맥주 신입 김대리가 술을 제안했다. 둘이 나갔다. 두 잔 마시고 김대리가 물었다. "파트장님, 진짜 궁금한 게 있어요." "뭔데?" "Java 20년 하셨잖아요. 후회 안 해요?" 직구였다. 나는 맥주를 마셨다. 생각했다. "후회... 는 아닌데, 불안하긴 해." "뭐가요?" "내가 시대에 뒤처지는 건 아닌가. 10년 뒤에도 Java 할 건가." 김대리가 고개를 끄덕였다. "저도 그래요. 지금 Java 배우는데, 이게 맞나 싶어요." "그래서 Kotlin 하고 싶은 거고?" "네. 근데 파트장님이 Java가 더 중요하다고 하셔서..." 미안했다. 내 불안을 후배한테 떠넘긴 것 같았다. "이렇게 하자. 회사에선 Java 하고, 개인 시간엔 네가 하고 싶은 거 해." "그럼 파트장님은요?" "나도... 그렇게 하려고." 둘이 웃었다. 쓸쓸한 웃음이었다. 수요일 오전, 기술 부채 회의 분기별 기술 부채 리뷰였다. 리스트를 펼쳤다.Java 7 → 8 마이그레이션 (3년째 미뤄짐) Spring 4 → 5 업그레이드 (2년째 미뤄짐) XML 설정 → Java Config 전환 (4년째 미뤄짐)팀장님이 말했다. "우선순위를 정합시다." 다들 침묵했다. 나는 손을 들었다. "다 중요한데, 리소스가 없습니다." "그럼 어떻게 하죠?" "...모르겠습니다." 회의가 끝났다. 결론은 '다음 분기에 재논의'. 복도를 걷는데 막막했다. 이게 Java의 문제인가, 회사의 문제인가, 내 문제인가. 모르겠다. 목요일 새벽, 잠 못 이루고 새벽 3시에 깼다. 다시 못 잤다. 생각이 꼬리를 물었다. Java 20년. 이게 족쇄인가, 무기인가. 족쇄처럼 느껴질 때가 있다. 새로운 걸 못 배우게 막는 것 같다. 그런데 또 무기이기도 하다. 문제 생기면 나는 안다. 20년 경험으로. 후배들이 3일 걸릴 버그를 나는 30분에 찾는다. 이게 실력 아닌가? 아니다. 이건 경험이다. 실력은 새로운 걸 배우는 능력이다. 그럼 나는 실력이 없는 건가? 아침이 왔다. 4시간 잤다. 금요일 오후, 깨달음 같은 것 퇴근 30분 전이었다. 코드를 짜고 있었다. Java로 복잡한 동시성 로직을 구현했다. ExecutorService, CountDownLatch, AtomicInteger. 40분 걸렸다. 옆자리 김대리가 봤다. "와... 이런 거 어떻게 아세요?" "20년 하다 보니까." "저는 언제쯤..." "너도 10년 하면 알아." 그 순간 깨달았다. Kotlin이든 Rust든 Go든, 10년 하면 전문가가 된다. 나는 Java 전문가다. 이게 족쇄가 아니라 정체성이다. 문제는 Java가 아니었다. '변화에 대한 두려움'이었다. 새로운 언어를 배우는 게 겁났던 거다. 초보가 되는 게 싫었던 거다. 45살에 '모른다'고 말하는 게 부끄러웠던 거다. 주말, 결심 토요일 아침. 다시 Kotlin 프로젝트를 열었다. 이번엔 마음가짐이 달랐다. 'Java를 버리는 게 아니라 확장하는 거다.' 20년 Java 경험이 Kotlin 배울 때 도움이 된다. JVM은 같으니까. 오히려 신입보다 유리하다. 기초가 탄탄하니까. 8시간 코딩했다. 점심도 안 먹었다. 저녁에 아내가 물었다. "요즘 왜 이래?" "공부 중이야." "무슨?" "새로운 거." 아내가 웃었다. "그래, 그렇게 사는 게 너답지." 일요일에는 블로그 글을 썼다. 제목: "45살 개발자의 Kotlin 입문기" 조회수 3개 나왔다. 다 내가 새로고침한 거다. 상관없다. 나를 위한 기록이다. 월요일, 새로운 시작 출근했다. 스탠드업 미팅이었다. 김대리가 물었다. "파트장님, Kotlin 괜찮다고 하셨잖아요." "응." "그럼 다음 프로젝트 Kotlin으로 해도 될까요?" 예전 같았으면 망설였을 거다. 이번엔 바로 대답했다. "해보자. 나도 같이 배울게." 김대리 눈이 커졌다. "진짜요?" "응. 너가 가르쳐줘." 회의실이 조용해졌다. 후배가 선배를 가르친다는 게 어색했나 보다. 나는 웃었다. "이상해? 나도 배워야지. 20년 했다고 다 아는 거 아니야." 분위기가 풀렸다. 김대리가 말했다. "파트장님, 멋있으시다." 멋있다기보단 무서웠다. 근데 더 무서운 건 안 배우는 거다.Java 20년은 족쇄가 아니다. 토대다. 그 위에 새로운 걸 쌓으면 된다. 늦은 게 아니라 깊은 거다. 오늘도 배운다.
- 02 Dec, 2025
아침 6시 30분, 메일 50개의 공포
아침 6시 30분, 메일 50개의 공포 알람이 울리기 전에 이미 시작된 하루 아침 6시 30분. 여전히 어두운 침실에서 눈을 뜬다. 침대에서 스마트폰을 집어 드는 것이 이제는 본능이다. 아내는 여전히 자고 있고, 시계는 6시 31분을 가리킨다. 첫 번째로 하는 일은 메일함을 여는 것이다. 어제 오후 6시부터 밤 11시까지 쌓인 메일이 이미 24개. 밤 11시부터 새벽 6시까지 쌓인 메일이 26개. 총 50개. 출근도 하기 전에 이미 50개의 메일이 나를 기다리고 있다. "어제는 퇴근 직전에 좋은 결과 나왔다고 했는데... 이게 뭐지?" 메일의 발신자를 슥 훑어본다. 해외 팀(인도, 싱가포르), 국내 다른 부서, 경영진 메일링리스트, 그리고 내가 참여한 12개 프로젝트의 각종 notification 메일들. 메일함을 정리하려고 몇 번 시도했지만, 결국 그 많은 룰을 유지하기가 힘들어서 포기했다.이제 슬랙을 본다. 밤새 쌓인 메시지가 대략 93개. 물론 @mention은 아니지만, 내가 참여한 채널들(@박시니어 파트장)에 쓰인 메시지들이다. 인도 팀의 야간 작업 결과 공유: 15개 메시지 싱가포르 팀 아침 회의 결과: 22개 메시지 국내 다른 파트 대기 중인 질문: 8개 메시지 내 팀원들의 저녁 작업 결과 공유: 27개 메시지 CEO 메시지방 공지: 5개 메시지 무작위 팀원 한 명의 '파트장님 이거 어떻게 생각하세요?': 16개 메시지 스레드집에서는 이렇게 알림이 울린다. 울림음도 켜두지 않은데, 화면은 계속 깜빡인다. 결국 아내가 깬다. "또 일 생각해? 일어나야지." 아내의 목소리는 걱정과 체념이 섞여 있다. 이런 아침이 5일이 반복되니까 당연하다. 화장실에서 시작되는 메일 읽기 마라톤 6시 45분. 화장실에 가면서도 폰을 들었다. 한 손으로 세수하고, 한 손으로 메일을 읽는다. 이미 7년 전부터 이렇게 하고 있다. 처음엔 손에 물이 튀기도 했는데, 지금은 일종의 기술이 되었다. 우선순위를 판단해야 한다. 빨간 느낌표가 붙은 메일부터 본다. 긴급 메일 1호: "시스템 장애 보고" 어제 배포한 기능에서 성능 이슈가 발견되었다고 한다. 지표는 6시간 뒤에야 모아진다고. 즉, 이 메일은 5시간 전부터 내 것이 되기로 예정된 것이다. 긴급 메일 2호: "내일 임원진 보고 자료 필요" 내일이 아니라 '오늘 오후 2시까지' 필요하다. 메일 쓴 시간이 어제 8시 27분이다. 즉, 이 사람은 금요일 밤 8시에 일을 하고 있었고, 나는 지금 화장실에서 이를 알아야 하는 것이다. 일반 메일 1호: "프로젝트 진행 상황 공유" 이건 FYI다. 읽지 않아도 되는데, 나는 항상 읽는다. 언제 누군가가 "파트장님은 이거 알고 계셨어요?" 라고 물어볼지 모르니까. 일반 메일 2호: "회의 일정 변경 알림" 원래 오전 10시였던 회의가 오전 11시로 변경되었다. 오후 회의는 또 3개가 추가되었다. 즉, 오전 10시부터 12시, 오후 2시부터 5시까지는 이미 다른 일이 할당된 상태로 아침이 시작된다. 화장실에서 나오면서 머릿속으로 계산한다. 실제 코딩할 수 있는 시간은?오전 9시 출근 오전 10시~12시: 회의 오전 9시~10시: 메일 and 슬랙 검토 점심 12시~1시 오후 1시~2시: 간신히 1시간 오후 2시~5시: 회의 오후 5시~6시: 메일 응답 오후 6시~6시 30분: 1대1 미팅 오후 6시 30분 이후: 코딩?실제로는 이 계획도 1~2번은 깨진다. 누군가는 "파트장님 5분만 시간 돼요?" 라고 슬랙을 친다. 모레 회의를 오늘로 당기자는 메일이 온다. 후배가 코드 리뷰 결과를 물어본다. 결국 오후 1시간? 그것도 낙관적인 추정이다. 출근하면서 마음 먹는 다짐 지하철에 탄다. 여전히 폰으로 메일을 읽는다. "오늘은 달라야지. 오늘은 의도적으로 시간을 만들어야지. 코딩을 할 시간을..." 이 다짐은 일주일에 5번 한다. 대략 일 년에 240번 정도 한다. 지난 10년을 돌아보면, 이 다짐이 실현된 적은 몇 번이나 될까? 충분한 시간을 확보하고 실제로 의미 있는 코드를 짜본 적이 있을까? 있다. 있기는 한데... 그건 대부분 저녁 8시 이후다. 퇴근 후가 아니라, 퇴근하고도 사무실에 남아서 하는 코딩이다. 혹은 일요일 밤 10시. 아이들이 자고 아내도 잔 후에 혼자 노트북을 켜는 그때다. 그때의 코딩이 정말 재미있다. 흐름(flow)이라는 게 있다는 걸 그때서야 느낀다. 25년 전 대학교 2학년 때처럼 코드를 짠다. 시간이 안 간다. 하지만 이제는 그렇게까지 버티기 힘들다. 새벽 2시 코딩은 다음 날 하루 종일 좀비가 되게 만든다. 그다음 날 회의에서 눈을 감는다. 상사가 내 의견을 물어봐도 답을 못 한다. "파트장님 뭐라고 생각하세요?" 이런 질문을 받으면 대충 "한번 생각해볼게요" 라고 말한다. 속은 비어있다. 사무실 도착, 그리고 현실 9시 05분. 사무실 도착. 의자에 앉기가 무섭게 슬랙이 온다. "파트장님 아침 회의 자료 확인하셨어요?" 안 했다. 확인한 건 없다. 슬랙을 다시 켜본다. 지난 30분 동안 또 11개의 메시지가 쌓였다. 메일함도 다시 켠다. 또 8개가 왔다. 이제 정말 코딩 IDE를 켜려고 마음먹는다. 오늘은 정말. 노트북을 켜서 IntelliJ IDEA를 실행한다. 로딩된다. 0.5초 안에 슬랙이 또 울린다. "파트장님 통화 가능해요?" 손가락이 자동으로 움직여서 "네 괜찮아요" 라고 타이핑한다. 이건 마술인가? 내가 언제 이 반응을 학습했을까? 20년 전, 데이터베이스 설계에 한 달을 투자하던 나는 이런 삶을 상상했을까? 당시 나는 "관리자가 되면 높은 곳에서 결정한다"고 생각했다. 결과적으로 나는 결정을 한다. 하지만 그건 "누가 어떤 일을 할 것인가" 에 대한 결정이지, "어떤 기술로 무엇을 할 것인가" 에 대한 결정이 아니다. 정책은 다른 사람이 정하고, 일정은 다른 사람이 정하고, 기술 스택도 이제는 다른 사람들(그 중에는 나보다 똑똑한 후배들)이 고민한다. 내가 하는 일은... 뭐지? "파트장님 이거 어떻게 생각해요?"에 "좋네요" 라고 답하는 일? 회의를 소집하는 일? 문제가 터지면 "왜 이렇게 됐어?" 라고 물어보는 일? 메일 50개를 읽는 데 걸리는 현실의 1시간 결국 9시 10분부터 10시 10분까지 1시간을 메일과 슬랙 메시지 정리에 투자한다. 이제 이게 얼마나 비효율적인지는 알지만, 막을 수 없다. 왜냐하면:읽지 않은 메일이 50개 이상 있으면 일종의 불안감이 생긴다. "혹시 중요한 걸 놓친 건 아닐까" 하는 생각이 든다. 실제로 놓친 중요한 메일이 가끔 있다. 따라서 모든 메일을 다 읽어야 한다. 메일을 다 읽고 나면 또 새로운 메일이 와 있다. 특히 해외 팀이 일할 때 추가되는 메일들은 피할 수 없다.결국 이 1시간은 내가 할 수 있는 실제 업무의 20%를 빼앗는다. 근데 여기서 끝이 아니다. 메일을 다 읽고 나면 이제 답장을 해야 한다. "알겠습니다. 확인하겠습니다. 검토 후 연락드리겠습니다." 이런 메일들을 30~40개 쓴다. 보통은 "좋은 의견입니다" 정도인데, 때론 정말 생각을 해야 하는 메일도 있다. "이 기술 방향 맞나요?" "이 일정 현실적인가요?" "이 결정 올바른가요?" 이런 메일에는 10분씩 생각해서 답한다. 그럼 또 1시간이 간다.결국 10시가 되는 순간, 아직 회의도 없었는데 벌써 2시간이 간다. 그리고 10시에는 첫 회의가 시작된다. 하루를 돌아보며 드는 생각 오늘도 퇴근했다. 6시 45분. 다시 정리해본다:실제 코딩한 시간: 35분 회의에 쓴 시간: 4시간 20분 메일과 슬랙 읽고 답한 시간: 2시간 30분 후배들 1대1 미팅: 50분 기타 (복도 대화, 누군가의 데스크 방문, 화장실 가는 길에 붙잡힘): 1시간35분. 30대 때는 이게 이해가 안 갔다. 선배 개발자가 "요즘엔 코딩 시간이 별로 없어" 라고 말하면, 나는 속으로 생각했다. "그럼 뭐 하는 건데?" 이제 안다. 나는 지금 "코딩 35분짜리 관리자" 다. 그리고 가장 이상한 점은, 내 급여는 순전히 코딩 경력으로 책정되었다는 것이다. 코딩을 못 하면 급여를 깎아야 하는데, 그러지 않는다. 왜냐하면 나는 "파트장" 이기도 하니까. 그런데 임원이 되면? 그럼 코딩은 정말로 못 한다. 그때는 순수하게 관리자가 된다. 하지만 나는 아직도 코딩이 하고 싶다. 아이 아들이 요즘 코딩을 배우고 싶다고 했는데, 나는 "좋지. 아빠가 가르쳐줄게" 라고 했다. 그런데 최근에 나온 기술이나 패러다임은 나도 모른다. Rust? Next.js? 서버리스? 이런 건 후배들이 한다. 그래서 아들에게 "흠... 이건 좀 복잡하네. 아빠가 공부하고 나중에" 라고 말한다. 아들의 눈빛이 약간 흐려진다. 그 순간, 정말 슬프다. 정말로 슬프다. 내 가치가 뭐가 되어가는 건지, 정말로 모르겠다. 기술 면접을 볼 때도 마찬가지다. 후보자가 나한테 "현재 프로젝트에서는 어떤 기술을 주로 사용하세요?" 라고 물으면, 나는 "음... 주로 우리 후배들이 하는데, Spring이랑 이런저런 게 있어" 라고 뭉뚱그려서 말한다. 면접관인데 질문에 명확하게 못 답한다. 얼마나 불편한가. 얼마나 초라한가. 그런데 이 상황을 벗어날 방법이 뭐가 있을까? 이직? 45세 개발자를 누가 뽑을까? 임원 승진? 그럼 코딩은 진짜 끝난다. 현 상태 유지? 계속 이렇게 조용히 사라져 갈 것인가? 그래도 내일은 또 6시 30분에 눈을 뜬다 내일 아침 6시 30분이면 또 이 모든 게 반복된다. 메일 50개. 슬랙 93개. 그리고 나는 또 "오늘은 좀 다르게 해야지" 라고 다짐할 것이다. 그리고 오전 10시에는 또 회의실에 앉아 있을 것이다. 하지만 정말 작은 변화들도 있다. 어제 후배가 쓴 코드를 리뷰했는데, 정말 좋았다. 나보다 더 깔끔하고, 더 창의로웠다. "이 접근 좋네. 이렇게 한 이유가 뭐야?" 라고 물었다. 그 후배가 설명해줄 때, 나는 기술적 흥분을 느꼈다. "아, 내가 이런 마음으로 코딩을 했었지." 그리고 나는 "좋은 선택이야. 계속 이런 식으로 가면 훌륭한 아키텍트가 될 거야" 라고 말해줬다. 그 후배의 얼굴이 환해졌다. 혹시... 내 역할이 이게 아닐까? 코드를 짜는 게 아니라, 좋은 개발자를 만드는 것? 코딩 35분이 아니라, 사람 4시간 20분? 그건 나쁜 일일까? 근데 그렇다면, 왜 이 마음이 자꾸만 IDE로 향할까? 왜 밤 10시의 코딩이 그렇게 행복할까? 아직도 모르겠다. 하지만 내일 아침 6시 30분에는 또 폰을 들 것이다. 그리고 또 메일 50개와 마주할 것이다.아침 6시 30분은 여전히, 하루의 시작이자 동시에 절망의 시작이다.
- 02 Dec, 2025
임원 승진과 개발의 갈림길에서
1억 원의 무게 알람이 울린다. 6시 30분. 일어나지 않는다. 침대에서 천장을 본다. 어제 회의 메모가 자꾸만 떠오른다. HR 담당자가 던진 한마디. "박 이사, 임원 승진 검토 대상입니다. 축하합니다." 축하한다는 게 아니라 선고처럼 들렸다. 1억 2천만 원. 연봉표를 본 건 며칠 전이다. 임원 수준 연봉 레인지. 손가락으로 꾹 눌렀던 숫자다. 그냥 숫자다.돈이 필요하긴 하다. 아들 대학 등록금, 아내가 언급한 부모님 간병 비용, 이 집 대출금. 계산을 하면 손가락이 모자란다. 1억 원대면 뭐라도 숨 쉴 수 있다. 그런데. 그런데 왜 이렇게 싫지. 컴퓨터는 나를 아직도 필요로 할까 회사 온다. 9시 정각. 메일 함을 본다. 62개. 밤샘 정산이다. 슬랙을 본다. 알림이 33개. "박 파트장님 코드리뷰 좀요?" 2년 전이면 20분이면 끝냈을 코드다. 지금은 30분이 걸린다. 신입이 쓴 코드는 맞는데, 뭔가 최신 패턴이 아닌 것 같은데, 확신이 없다. 검색을 한다. 답을 찾는다. 댓글을 단다. "좋습니다. 진행하세요." 이게 내가 할 수 있는 전부인가. 개발 팀장 되고서는 진짜 코드를 못 짰다. 그 전에는 매일 손가락이 움직였다. 새벽 1시, 2시까지 IDE에 박혀서 로직을 짰다. 버그를 찾았다. 리팩토링 했다. 그게 재미였다. 요즘은 뭐하나. 회의 5개. 11시부터 17시까지 끊이지 않는 화상 회의. 팀 상황 보고, 프로젝트 진행 상황, 리스크 관리, 상위 부서 회의, 인사 평가 회의. 코드는 6시 이후에 만진다. 저녁 6시다. 근데 그때 되면 이미 피곤하다. 6시간 회의를 하고 나면 뇌가 상한다. IDE를 켜도 손가락이 안 움직인다. "아, 이 버그 이렇게 고치면 되겠네." 그 생각까지만 한다. 그리고 피곤하니까 내일 하지 뭐 하고 닫는다. 내일은 또 회의다.그러다가 30대 후배 개발자를 본다. 하하하고 웃는다. 재미있는 기술 얘기하면서 눈이 반짝인다. 최신 JavaScript 프레임워크 얘기한다. AI로 코드 어시스턴트 쓴다고 한다. 그놈들은 뭔가 굴렀다. 진짜 개발하는 거다. 내가 임원이 되면 더 멀어질 거다. 정말 임원이 되면. 선택은 아무도 안 했는데 내 것이 됐다 커피를 마신다. 이미 3잔째다. 옆 자리 40대 임원 들을 본다. 김 이사, 이 이사. 저들 다 개발자에서 올라온 놈들이다. "김 이사, 코딩 요즘도 하세요?" "뭐, 가끔 스트레스 받을 때. 근데 시간이..." 그게 다다. 다들 "시간이..." 하고 끝낸다. 저들이 실제 개발하는 건 한 달에 며칠. 그나마도 메인 프로젝트가 아니라 취미처럼 개인 프로젝트다. 회사 시간에는 100% 관리다. 예산, 리스크, 인사, 정치. 정치. 그래. 그 단어가 싫다. 임원이 되면 팀장처럼 "저한테 결정권 없어요" 할 수 없다. 결정을 내려야 한다. 기술 선택, 팀 구성, 인사 평가, 보너스 책정. 그리고 그 결정을 위에 정당화해야 한다. 옆 팀과의 정치도 생긴다. 요즘 후배들 보면 칼 퇴근한다. 18시면 뚝 끝낸다. 노트북 덮고 간다. 그들 보면 한편으로는 부럽다. 다른 한편으로는 '저 정도 실력으로 뭘...'이라는 생각이 스친다. 근데 바로 생각을 지운다. 그런 거 하면 꼰대가 되니까. 대신 속으로만 생각한다. '저들도 내 나이 되면 알겠지.' 그리고 자책한다. '그래, 너는 저 친구들 앞으로 나간 거고, 그래서 대가를 치르는 거겠지.' 임원 위치는 원하지 않았는데 왔다. 성과를 내니까. 팀 성과가 좋으니까. 후배들을 잘 관리했으니까. 그 모든 게 복이 돼서 나를 이곳까지 몰았다.아들의 질문이 자꾸 떠오른다 집에 가는 버스에서 핸드폰을 본다. 아들이 카톡을 했다. "아빠 집 와. 코딩 좀 배워줘." 중1이다. 학교 동아리에서 Python을 배운다고 했다. 아빠를 찾았다. 집에 가서 노트북을 켠다. 아들이 화면을 본다. "와, 이게 뭐에요?" "Java죠. 아빠가 20년을 이 언어로 먹고 살았어." "요즘은 이걸 안 쓰나요?" "쓰지. 하지만..." 말을 흐린다. 요즘은 Python도 있고, JavaScript도 있고, Go도 있고, Rust도 있다. Java는 '구식'이 아니지만 '새롭지는' 않다. 아들이 물어본다. "아빠는 지금도 코딩을 해요?" "그럼. 매일." 거짓이다. 거짓이 아니기도 하다. 코드리뷰는 한다. 하지만 그건 코딩이 아니다. 아들은 그 차이를 모른다. 그건 좋다. 아직은. 내가 임원이 되면, 아들이 대학 때쯤 되면, 진짜로 코딩을 못 한다고 해도 된다. "아빠는 관리를 해" 하면서. 5년, 10년 지나면 기술이 얼마나 바뀔까. 그땐 정말 못 할 거다. 프로그래밍 언어도, 패러다임도, 생각하는 방식도 다를 거다. 그리고 나는? 그냥 '예전에 개발자였어'라고 했던 사람이 될 거다. 이사라는 직함의 무게 HR과의 면담이 있었다. 정식 승진 제안. "축하합니다. 경의를 표합니다." 뭔가 장례식 인사처럼 들렸다. 조건은 명확했다. 임원이 되면 개발 팀에서는 나온다. 전략팀이나 사업팀으로 간다. 관리직의 관리 경력을 쌓아야 한다고 했다. "개발은?" "여유가 생기면 하실 수 있죠. 하지만 경영진은 경영에 집중해야 합니다." 경영에 집중. 정확한 표현이다. 그게 일이니까. 코드는 취미가 되고, 경영이 직업이 되는 거다. 반대로 남을 수도 있다. 파트장 자리에 남는 거다. 이미 반 임원처럼 일하고 있으니까, 정식으로 파트장 심화 과정을 듣는 거다. 기술 리더십이라고 부르는. 근데 그것도 결국 관리다. 코딩 시간은 더 줄어든다. 10% 코딩, 90% 관리. 둘 다 싫다. 남는 것도 싫다. 임원이 되는 것도 싫다. 이상한 심정이다. 둘 다 싫은데, 둘 중 뭘 해야 한다고 해. 회의실에 앉아 있다. 아무 말도 안 한다. 녹음 버튼은 꺼져 있다. 비공식 면담이라고 했다. HR 담당자가 본다. 대기 중인 표정. 나는 그냥 본다. 창밖을. "시간을 드리겠습니다. 2주 정도 생각해 보세요." 2주. 14일. 14일 안에 내 직업정체성을 다시 정의해야 한다. 밤 11시, 혼자 있을 때 집에 와도 자지를 못 한다. 아내는 잤고, 아이들도 잤다. 혼자 거실 소파에 앉아 있다. 노트북을 켠다. 20년 전 코드를 본다. GitHub에 저장되어 있던 초대 레포지토리. Java로 쓴 게시판이다. MVC 패턴도 없고, 보안도 엉망이고, 함수명도 엉망이다. 그런데 재미있었다. 진짜 재미있었다. 밤새 버그를 찾고, 스택오버플로우를 뒤지고, 친구한테 문제를 물어보고, 새벽에 드디어 작동할 때의 그 쾌감. 30대 때는? 복잡한 로직을 다루면서도 즐거웠다. 성능 최적화에서 0.3초를 단축하는 데 하루를 썼다. 그게 일이 아니라 게임 같았다. 요즘은? 임원이 돼도 게임은 끝난다. 개발자 자리에 남아도 게임은 끝나가고 있다. 나이 때문일까. 아니면 그냥 시간이 없어서일까. 시간이 있으면 다시 즐거울까. 그럼 시간을 만들어야 하나. 이직을 해야 하나. 45세에 다른 회사로? 나를 받을 회사가 있을까. 45세 아저씨. 기술은 좀 지났고. 체력도 떨어지고. 게다가 결혼하고 애 둘 있고. 급여는 최소 9000만 원 이상을 받아야 하고. 그런 게 어딜 가나. 그래. 그래서 임원인가. 임원은 나이를 먹을수록 값이 올라간다. 45세 임원은 매장이다. 20년 경력, 뭘 좀 안다는 확신 있는 얼굴, 신뢰감. 임원 시장에선 그게 상품이다. 개발자 시장에선 뭔가. 옛날 실력으로 사는 사람? 미안하지만 요즘 기술은 아래 세대가 더 잘 한다. 그래서 올라오는 건가. 올라와야 사는 건가. 한숨을 쉰다. 너무 크게 나와서 재수가 없다. 대학 동기한테 들은 말 대학 동기와 술을 마셨다. 2주 전이다. 그놈도 임원이다. 다른 회사 임원. "박 형, 이사 합격 확정 들었어." "어어, 내가?" "응. 말 안 했어?" 나는 몰랐다. HR과의 면담이 확정이 아니라 제안이라고만 알았다. 근데 이미 그놈은 알고 있었다. "축하한다." "고마워." "후회 안 돼?" "뭐?" "개발을 못 하니까." 그놈은 웃었다. "아 형, 이제 와서. 개발은 이미 10년 전에 못 했지. 개발은 젊은 놈들 거야." "그럼 뭐가 남아?" "남는 게... 뭔지 알아? 돈이지. 권력도 있고." 나는 그 말에 뭐라고 대답을 못 했다. "형이 개발자 자존심 이따위다. 나 10년 전에 버렸어. 임원 돼서 깨달았어. 자존심도 죽고, 기술도 죽고, 남는 건 회사 내에서 먹이사슬 올라간 거고, 밖에선 그냥 또 다른 아저씨 경영진일 뿐이더라고. 그런데 돈은 진짜 많아." "후회는?" "밤에 자다가 가끔 깬다. 꿈꿨었거든. 개발자가 되고 싶었어. 그런데 잊어. 보너스 생각하면 깬다." 술잔을 기울였다. 그리고 나는 그날 밤 집에 와서 계속 생각했다. 그놈이 맞나. 아니면 내가 맞나. 결국 선택의 시간 2주가 거의 다 왔다. 명일 모레면 HR에 답을 줘야 한다. "승진하겠습니다" 또는 "남겠습니다" 둘 다 후회할 거라는 건 안다. 임원이 되면 개발로 돌아올 수 없다. 5년 임원을 하면 기술은 너무 뒤처져서, 다시 돌아와도 주니어급이 돼야 한다. 자존심은 벗겨진다. 남으면 어떻게 되나. 파트장 자리는 이미 포화된 자리다. 위로 올라갈 유리한 위치는 아니다. 후배들이 점점 올라오고, 나는 20년 경력 파트장으로 계속 있다. 기술이 나아진다고 해서 뭐 좋아질 건 없다. 밥값만 한다. 결국. 결국 뭘 택해도 끝이다. 개발자로서의 끝, 또는 인생으로서의 끝. 아니다. 그게 아니라... 개발자로서의 끝, 또는 임원으로서의 시작. 그 중 뭘 택할 건가. 아들 대학 등록금 생각하면 임원. 밤 11시에 IDE 켰을 때 느껴지는 그 쾌감 생각하면 개발자. 결국 어느 쪽이든 뭔가 죽인다. 생각해 보니 이미 결정은 된 거 같다. 한 달 전에. 임원 제안이 나올 때쯤. 아니, 정확히는 파트장이 된 순간. 그때부터 이미 개발자 박시니어는 점점 사라지고 있었다. 이제 이 사라짐을 인정하고 싶을 뿐이다. 아니면 그 사라짐에 저항할 뿐이다. 둘 다 같은 거 아닐까.내일 아침, 답을 정할 거다. 아직은 뭐라고 할지 모른다.