고인물 되는 것 피하기

언젠가 한 블로그에서 대충 이런 이야기를 읽은 적이 있다.

지방에 살면서 혼자 매일 클래식 기타를 연습하던 아저씨가 있었다. 지역 아마추어 대회에서 상을 타기도 했고 유튜브로 인기도 끌었다. 그러던 어느 날, 꽤 큰 콩쿨(대회)의 예선을 운 좋게 통과했다. 자신의 연주 순서를 기다리며 젊은 경쟁자들의 연주를 듣다가, 엉엉 울고 돌아서서 나왔다고 한다. 자신이 컨템포러리가 아니라는 걸 깨달은 것 같다고 한다. 열심히 연습하는 자신을 두고 동시대가 확 지나가버렸다는 걸 갑자기 깨달은 것 같다고 한다.

동시대성

엔지니어링에도 ‘동시대성’이라는 게 있다고 생각한다. 개발업계에서는 소위 ‘라떼는’이 꽤 중요하게 먹힌다. 그래서 경력직은 대접 받고, 구하기가 힘든 귀한 존재다. 서비스에서 발생하는 장애는 대부분 경험 많은 시니어들이 나서야 해결된다.

하지만, 시니어만 조직에 있게 되면 사람들은 고일 수 있다. 과거의 기술만 고집하다 트렌드를 놓치게 된다. 그게 1년이 흐르고 10년이 지나면, 어느덧 그 조직은 누구도 들어오고 싶지 않은 기술 스택을 가진 조직으로 전락한다.

기술에도 유행이 있다고 하면 엔지니어 답지 못하다고 한 소리 듣겠지만, 기술에도 분명 유행이 있다. 아직도 jQuery나 PHP를 쓰고 있다면, 개발자를 충원하기는 점점 힘들 것이다. Python Django로 서버를 운영하고 있다면 마찬가지일 것이다.

테스트 코드를 짜지 않는다거나 코드 리뷰가 없다면, 많은 구직자들이 선호하지 않는 직장일 가능성이 높다. 아직도 쿠버네티스는 커녕 도커도 사용하지 않는다거나, 카프카를 왜 쓰는지 모르겠다고 얘기하는 조직이라면 동시대성을 서서히 잃어가고 있는 과정일 가능성이 있다.

어쩌면 나는 지금 위기일지도

나 역시 요즘 들어 컨템포러리를 잃어가는, 동시대성을 잃어가는 기타리스트 아저씨처럼 되고 있다는 생각이 든다. 지금 회사에서는 물리장비에 배포를 하고 있고, 팀원 대다수가 테스트 코드를 짜지 않고 있으며, 코드 리뷰도 제한적이다.

새로운 기술을 상당히 보수적으로 받아들이기에, 배우거나 공부할 기회도 적다.

고인물이 되지 않으려면 어떻게 해야할까?

동시대를 살아가는 개발자로 앞으로도 살아남으려면 어떻게 해야 할까?

사실 정답은 잘 모르겠다.

인프랩(인프런 회사)의 CTO 이동욱님 블로그에 보면 이런 제안이 있다.

  1. 채용 과정에서 과제 테스트를 추가해 회사에 지원하는 다른 외부의 개발자들은 어떤 구조, 어떤 스택을 사용하는지 체감할 수 있게 한다.
  2. 사내 스터디를 진행한다.

결국은 다른 개발자와의 접촉을 많이 만드는 것이 정말 중요하다는 생각이 들었다.

동년배 개발자들 뿐만 아니라 신입 레벨의 개발자들과도 자주 만나고 기술적인 이야기를 나누는 것이 ‘고인물’을 방지하기 위한 가장 확실한 방법이라는 생각이 들었다.

이 과정에서는 ‘라떼는’은 잠깐 비켜 세워둬야 한다. 오히려 상대의 이야기를 귀기울여 들어야 한다. 그럼으로써 겸허한 마음으로 내가 놓쳤던 것들을 배우고, 따라가기 위해 노력해야 한다.

그래, 모임을 만들자!

나는 그래서 모임을 하나 만들고 싶다고 생각하게 되었다.

각자 편하게 기술에 대한 것이면 어떤 것이든 소개하고 싶은 것을 정리해 와 발표하는 모임이다.

chatGPT일 수도 있고, deno 기반의 web framework fresh일 수도 있고, Rust일수도 있다. 주제는 기술적인 것이면 상관없다.

각자가 가진 관심사들을 공유하다 보면 ‘아 이런게 있었군! 세상이 이렇게 바뀌고 있군’ 하는 것을 조금씩 체득할 수 있을 것 같고 동시대성을 잃지 않을 수 있을 것 같다.

처음에는 소마 출신들을 중심으로 운영해 보려고 한다.

나중에는 의지와 열정이 있는 사람이면 누구나 참여해도 좋을 것 같다.

나는 요즘 진심으로 ‘고인물’이 되는 게 두렵고, 나 자신의 개발 역량에 의문이 든다.

나에게는 신선한 자극이 필요하다. 나는 ‘흐르는 물’이 되고 싶다.