수년 전, 처음 웹 개발자로 취업에 도전하던 때, 그러니까 신입 포지션으로 한창 지원서를 넣을 적에 주변에서 자주 들었던 말이 있다.
"신입 때는 이렇다 할 경력이 없다 보니 어려울 수 있겠지만, 나중에 경력이 좀 쌓이고 나서 지원할 때는 그래도 훨씬 나을 거다."
아마 일종의 격려 차원에서, 너무 걱정하는 말라는 의미에서 한 말이었을 것이고 스스로도 당연히 그렇게 되는 것이 아닐까 생각했다. 개발 직군은 아무래도 경력에서 오는 경험과 기술의 깊이가 중요하게 작용할 테니, 착실히 성장해 나가다 보면 훗날엔 적어도 구직 문제에 한해서는 고생을 조금 덜 할 수 있지 않을까 하는 기대가 있었다.
그런데 웬걸, 막상 시간이 흘러 이직을 고려할 만한 시기가 되어 보니 여전히 녹록지 않은 것은 마찬가지였다. 적어도 개인적인 경험에 한정해서 보면, 신입 때보다 훨씬 더 어려워졌다고 느껴질 정도였다.
물론 과거엔 시기적으로 지금보다 나았고 여러모로 운도 따라주었기 때문이었겠지만, 여하튼 그 때는 기대했던 것 이상으로 여러 좋은 회사들로부터 인터뷰 기회를 몇 번이고 얻을 수 있었다. 다른 걸출한 지원자들에 비하면 내세울 만한 것이 마땅찮은 상황이었음에도 그랬다.
게다가 그렇게 진행했던 인터뷰들 역시 하나같이 긍정적이고 값진 경험들이었는데, 통상 정해진 시간을 훌쩍 넘기면서까지 면접관 분들과 소위 '테크톡' 같은 것을 나누고 오는 일이 많았다. 잠재성이나 재능을 굉장히 높게 평가하고 인정해 주시는 분들도 계셨고, 인터뷰어-인터뷰이의 관계가 아닌, '업계의 선배'로서 이런저런 값진 조언들을 해 주시는 분들도 많았다.
그래서 그다지 조바심을 내지 않고 어떤 회사에서 커리어를 시작해나가야 할 지 신중하게 고민을 거듭하다가, 어떻게 기회가 닿게 되어 평소 자주 이용했고 또 개인적으로도 관심이 많았던 도메인을 다루는 서비스 회사를 선택하게 되었다. 구직자들 사이에서 그렇게 잘 알려졌다거나 선망되는 회사까지는 아니었고 환경이나 처우 또한 객관적으로 좋은 수준은 아니었지만, 개인적으로 그런 것은 크게 문제될 부분이 아니라고 보았고 어떤 환경이건 내가 좋아하는 것을 개발하며 경험을 쌓는 것이 무엇보다도 중요하다고 생각했다.
이후로는 다행히 그럭저럭 잘 적응해, 여러 업무들을 수행하면서 경험의 지평을 넓혀나갔지만, 어느 정도 시간이 흘러감에 따라 아쉬움이나 갈증이 생겨나게 되었다.
여느 개발자들이 그렇듯, 개인적인 성장의 측면에서 더 이상 미래를 장담하기는 어렵겠다는 생각에 이르게 된 것이다. '몇 년 뒤의 나는 지금에 비하면 얼마나 큰 차이가 있을까?' 하는 자문에 대해 긍정적인 답변을 할 수 없었다는 점이 결정적이었다. 특히 그동안 주어진 환경과 상황을 타파하기 위해 시도했던 노력들에 대해 응당한 반향이 있었느냐 되짚어 보아도 역시 의미있는 답이 돌아오지 않았기 때문에, 이제는 이직을 진중하게 고려하고 준비해야 할 시기가 되었다는 생각이 들었다.
허나 마주한 상황은 예상했던 것보다 좋지 않았다. 당장 서류를 통과하는 일부터가 만만찮았다. 처음 몇 번 탈락했을 때는 그러려니 했으나, 그게 반복되자 뭔가 잘못되었다는 느낌이 들었다. 지원한 회사에 온전히 집중하기 위해 한 번에 여러 곳을 지원하지 않는 편이어서 시간도 많이 소모된 상황이었다.
그동안의 경험들을 차근차근 다시 정리해 보고, 다른 개발자들이 공개한 이력서들을 참고하며 있는 힘껏 퇴고하기를 신입 때보다 몇 배는 더 했으나, 마땅찮았다. 평소 꽤나 무던한 성격이라고 자부하는 편이었지만, 생각보다 대미지가 커서 한동안 위의 '슬픈 고양이' 같은 표정이 되어버렸을 정도였다.
대체로 경력직의 서류는 신입과는 달리 서류가 아니면 판단 기준이 될 만한 근거나 자료를 찾기가 어려운 상황도 아니거니와, 어차피 이후의 전형을 진행하면서 스크리닝이 되기 때문에 상대적으로 난이도가 조금 낮을 수 있다.
하지만 사실 그것도 일단 어느 정도 시장에서 특별히 문제가 되지 않는다고 판단될 만한 깊이의 경험이나 배경을 보유했을 경우의 이야기였다. 다른 여러 요인들도 있겠지만, 대개는 경력이 그다지 매력적이지 않다고 판단되었던 것이 가장 크게 작용했다고 보는 편이 맞았을 것이다.
개인적으로는 이러한 상황이 억울하기도 했지만, 스스로 그것을 받아들일 수 있건 없건 간에 현실은 냉혹했다.
소위 말하는 '허들', 또는 '하이어링 바'라고 일컫는 수 차례의 전형들이 필터의 역할을 한다고는 하나, 회사 입장에서는 그러한 프로세스 하나하나를 진행하는 데 소모되는 리소스가 적지 않다. 안 그래도 바쁜 실무자들이 겨우 짬을 내서 진행해야 하는 상황이니, 당연히 아무나 다 통과시키고 볼 수는 없는 노릇이다. 지원자(경쟁자)라도 적으면 모르겠지만 보통 수십 명 꼴이니 더욱 그렇다. 따라서 서류에서 탈락했다는 것은, 이후의 전형을 이어서 진행할 만큼의 기준치를 충족하지는 못했다고 볼 수밖에 없는 것이다.
그러다 보니, 비슷한 시기에 입사했던 동료들이 일찌감치 다른 곳에서 새롭게 커리어패스를 쌓아가고 있을 동안 나는 무얼 했었나 하는 괜한 후회감이 들기도 했다. 마치 초등학생 시절, 이미 다른 친구들은 단소 시험을 통과하고 집으로 돌아갔지만, 나는 소리를 내는 것도 못 해서 혼자 교실에 덩그러니 남아 훅훅 숨을 불고 있는 그런 상황과 같이 느껴졌다.
돌이켜 생각해보면 아쉬움으로 남는 점 중 하나가 바로 너무 회사 일만 열심히 했다는 것이다. 그러면 혹자는 이렇게 반문할 수 있다.
"그럼 회사 일을 열심히 하지 뭘 열심히 하나?"
"회사 일이라고 성장할 수 없는 게 아니지 않은가? (애초에 회사 일을 통해 성장해야 하는 것 아닌가?)"
맞는 말이다. 그러나 회사 일은 당연히 열심히 하는 것이고, 그 외에도 나름대로 성장에 도움이 될 만한 경험을 내부에서건 외부에서건 더 쌓을 수 있도록 모색했어야 했다. 예컨대 스터디라거나, 토이/사이드 프로젝트, 오픈 소스 컨트리뷰팅 같은 것들 말이다.
당장 회사에서도 주어진 업무는 일단 빠르게 처리하고, 남는 여유 시간에는 챌린지한 업무를 추진해 본다던가 하는 식으로 돌파구를 마련하려 했다면 도움이 되었을 것이다. 특히나 현재 환경의 개발 문화나 기술적 깊이, 주어지는 과제의 난도 등이 성장을 견인할 정도의 수준이 되지 못한다면 더더욱 그랬어야만 했다.
물론 그동안 이런 점을 생각하지 못했던 것은 아니었어서, 나름대로 현재 환경에서 할 수 있는 것을 찾으려 발버둥을 치기는 했었고 자평할 만한 성과도 없지는 않았다. 하지만 결과적으론 부족했고, 그러다 보니 회사에서는 일을 잘 한다는 긍정적인 평가를 받기는 했지만 딱 그뿐이었다.
게다가, 이런 개인의 노력과는 별개로 인간은 환경에 의해 결정되는 부분이 크다는 점도 고려해야 한다고 보았다. 사람은 아는 만큼 이상은 절대로 보거나 생각할 수 없으며, 그렇기에 혼자서는 일정한 수준을 초월할 수 없는 것이 이치이기 때문이다.
이것을 가장 절절하게 체감하는 순간은 보통 면접이었다. 평소 나름대로 면접 준비며 개발 공부를 한다고 하면서도, 막상 꼬리물기로 질문이 깊게 들어오면 제대로 답변을 하지 못했다. 그도 그럴 것이 애초에 경험을 해본 적이 없으니 당연히 그것에 대해 고민도 해볼 수 없었던 것이고, 내가 지금 무엇을 모르고 있는지 알지를 못하니 공부를 해도 공식 문서에 나열되어 있는 개괄적인 내용 정도만 이해하는 수준에서 더 나아가지 못하고 겉도는 것이다.
왜 그렇게 개발자들이 '성장 가능한 환경'에 목을 매고, 전체를 놓고 보면 소수에 불과할 선망받는 테크 기업에 입사하기 위해 경쟁할까? 회사들은 왜 서로 앞다투어 자사의 개발 문화와 기술을 홍보하고 블로그를 개설해 브랜딩할까?
이는 환경의 질적 수준에 따라, 같은 단위 시간 동안의 경험이어도 밀도의 차이가 벌어지기 때문이다. 요컨대 몇 년 동안 개발을 했다는 것이 중요한 것이 아니라, 어떤 환경에서 개발을 했다는 것이 중요하다는 것이다. 극단적으로, 또는 지엽적으로 말하면 당장 내가 상호작용하는 환경이나 평소 교류하는 동료들이 어떠하느냐에 따라서 내 수준도 결정될 수 있다.
개발자들의 회고를 보면, 주니어 ~ 미드 레벨에서 영원히 멈추어 버리는 개발자들이 있다는 얘기가 종종 보인다. 개발자들이 대부분 성장하기 싫어한다거나 나태하기 때문에 정체되어서 그럴까? 그보다는 특정 레벨, 지점을 돌파하기 위해서는 현재 어떠한 환경에 속해 있고, 그로부터 밀도 있는 경험들을 얼마나 해볼 수 있었느냐가 결정적으로 작용하기 때문이라고 보는 것이 더 타당해 보인다.
다만 그렇다고 '환경 탓'만 하는 데서 멈추어선 안 되고, 수시로 자신이 처한 환경을 가치판단하고, 거기서 문제를 진단해내어 그 환경을 타파하던지 아니면 보다 다양한 환경에 스스로를 던져넣으려는 식의 시도를 하는 편이 바람직했을 것이다. 하지만 그렇게 하지 못했다는 점에서 현명하게 행동하지 못한 것이고, 냉정히 말하면 커리어 관리가 미숙했다고도 할 수 있다. 이는 아마 소위 말하는 '컴포트 존'에 안주하고 있었기 때문일 것이다.
어쨌든, 계속 이력서를 퇴고하고 인터뷰 내용을 정리, 회고하는 식으로 다듬어나가다 보면 간혹 그 이후의 전형까지 진행할 수 있는 기회가 주어지기도 했다. 다만 그럼에도 고배를 마시는 경험은 여전했는데, 그도 그럴 것이 무엇 하나 쉬운 것 없이 까다로운 난관들이었기 때문이다.
코딩 테스트(알고리즘 테스트) 같은 경우는 난이도가 과도하게 높고 난해한 경우에는 변별력이나 효용성에 대한 회의가 제기되기도 한다지만, 대개 경력 포지션의 경우에는 '최소한의 허들'이라는 목적 정도로만 활용하려는 것인지 신입 포지션에 비하면 상대적으로 문제의 난이도가 아주 높지는 않은 편이었고, 일정 점수만 충족하면 더 따지지 않겠다는 듯 소위 'P/NP' 식으로 진행하는 경우가 많았다. 다만 그렇다곤 해도 알고리즘 문제인지라, 평소 준비를 하지 않았다면 영 막막하고 제대로 풀어내기 어려운 정도는 되기 때문에 절대 만만한 것은 아니기는 했다. 한 번은 정말 어려운 난이도로 문제가 나와 제대로 풀지도 못하고 즉시 탈락한 곳도 있었는데, 이런 케이스는 확실히 소수인 듯했다.
한편 테스트 결과를 서류와 함께 검토하거나, 테스트 결과를 먼저 확인한 다음 기준을 충족한 경우에만 서류의 스크리닝을 시작하는 등, 회사마다 약간씩 프로세스가 다르기도 했다.
기술 과제의 경우에는 변별력 및 검증의 측면에서 알고리즘 테스트보다 낫다는 것이 중론이지만, 회사는 물론 구직자에게도 너무 많은 리소스가 소모된다는 문제가 있기 때문인지 주변의 경우를 보면 의외로 기피하는 경우를 볼 수 있었다. 개인적으로도 꽤 부담이 되었던 것은 사실이어서, JD에 과제 전형이 명시되어 있는 경우에는 지원 자체를 재고하는 편이었다. '배가 불렀다'고 하면 할 말은 없지만, 리소스가 부족한 상황에서 섣불리 많은 코스트가 소모되는 행동을 한다는 건 그다지 좋은 전략이 아니라고 보았다.
또한 대부분의 경우 피드백을 받기 어렵고, 기본 요구사항을 구현하는 정도로는 기준치를 충족하지 못한다는 점 등 여러모로 부담으로 작용할 여지가 있다.
그러나 어쨌든 많은 경우 과제를 중요한 평가 수단으로 활용하고 있는 것이 현실이므로, 어떻게든 준비하여 제대로 해내지 못하면 사실상 구직에 있어 어려움이 클 것이라고 생각되었다.
인터뷰(기술/인성)은 정신력 소모가 대단하긴 하지만 대부분의 경우 합불의 여부와 무관하게 다방면에서 좋은 경험이 되었다. 거듭될수록 그동안 생각하지 못했던 것을 되짚어 볼 수 있게 되는 등, 확실히 점진적으로 나아질 수 있었다.
물론 지금까지의 인터뷰들을 복기해보면 굉장히 민망하고, 때로는 스스로도 납득이 안 갈 만큼 바보같은 모습을 보여줬다는 생각에 자괴감이 들기도 한다. 다만 오히려 그렇게 강렬한 경험이어서인지, 그 때 답변하지 못했던 것은 다음 번에는 할 수 있게 될 가능성이 높아지고, 깊이가 얕았다면 꼬리물기 질문 한 두번은 더 받아칠 수 있을 정도의 지식을 더 쌓는 계기가 될 수 있었다.
흔히 개발자들이 구직을 목적으로 하지 않더라도 기회가 있으면 인터뷰는 한 번이라도 더 많이 경험해보라는 조언을 하는 경우가 있는데, 정말 그렇다. 시장에서 자신의 가치와 위치, 가능성을 판단해보는 목적으로도 적절한 수단이 된다.
인터뷰는 대부분 무겁지 않고 편안한 분위기에서 화기애애하게 진행되었지만 간혹 아쉬운 경험도 있었는데, 흔히 '합격시키기 위해' 채용을 진행한다고 말하지만, 현실은 마치 '탈락시키기 위해' 인터뷰를 진행하는 것처럼 불필요하게 공격적인 태도가 드러나는 경우가 있었다. 마치 구직자가 말하지 못한 강점을 하나라도 더 발굴하려는 것이 아니라, 혹시라도 숨기고 있을지 모를 흠결을 찾아내서 조금이라도 부족한 사람을 뽑지 않으려는 강박이 있는 듯했다. 그런 것이 인터뷰이의 눈에 보이는 이상 크게 위축되기 마련이고, 그러면 좋은 답변이 나올 수 있을리도 만무하다.
몇 명의 좋은 동료를 놓치더라도, 단 한 사람의 나쁜 동료를 채용하지 않는 것이 더 중요한 문제라고는 하지만, 개인적으로는 이것이 얼마나 실효가 있을까 하는 의문은 있었다. 시장의 수요/공급 문제로 평형이 깨진 상황에서 비롯된 현상이라고 생각은 하지만 아쉬움이 남는 부분이었다.
기술 인터뷰는 이력서에 기술된 경력 내용을 중심으로 진행되긴 하지만, 그럼에도 불구하고 막상 준비를 하려고 하면 '무엇을 물어볼지, 그래서 무엇을 준비하고 공부해야 할지를 모르겠'는 난감함이 느껴지기도 한다. 머릿속으로는 당연히 했던 일들을 정연하게 설명할 수 있도록 준비해야 한다는 것을 알고 있지만, 막상 깊게 파고들어가다 보면 너무 막연해지기 때문에 쉽지가 않다. 그래서 평소 루틴하게 예상 질답을 문서로 정리하고는 있지만, 이걸 실제 인터뷰에서 그대로 물어볼 것이라 기대하지는 않고 그냥 학습 목적으로 활용하고 있다.
계속 적어내려가다 보면 내용이 한도 끝도 없이 길어져서 점점 복기하기에도 어려워지고, 단순 지식만 나열하는 '치트 시트' 같은 형태가 되어버린다는 생각도 드는데, 개인적으로는 이런 문제 때문에 그동안 Notion
을 쓰다가 Obsidian
을 활용하여 연결 관계로(마치 위키 문서 같이) 다시 정리해보기도 했었다.
한편 인성/컬처핏 인터뷰는 또 다른 결에서 부담이 되는 과정이었는데, 아무리 그동안의 과정에서 얻은 것이 있었다고는 해도 여기서 탈락하면 대미지가 굉장히 크기 때문이다. 대부분 이 시점에 이르러서는 이미 꽤 많은 시간이 흘렀고 막대한 리소스를 소모한 시기임에도, 까딱하면 '그냥 없던 일'이 되는 것이다. 결국 여전히 다니던 회사에서 일은 계속 하던대로 해야 하는, 어떤 영화의 평론을 인용하자면 - '선택받지 못한 우리들은 불행히도 계속 살아가야만 하는' - 상황이 주는 허무함이 만만찮다.
게다가 말 그대로 '핏'의 문제이기 때문에, 항상 합리적인 기준이 존재하지 않고 그럴 수도 없다는 것이 구직자 입장에서는 더 아쉬움을 느끼게 한다. 기술 인터뷰는 확실히 탈락하더라도 '내가 부족했구나' 하고 금방 수긍할 수 있지만, 인성 인터뷰는 아무래도 받아들이기 어려운 상황이 존재한다. 물론 회사 내부적으로는 이런저런 가치 판단에 의해 의사결정이 이루어진 것이겠지만, 그것을 구직자가 알 방법이 없고 피드백조차 기대할 수 없는 경우가 대부분인 이상 넘겨짚을 수밖에 없는 노릇이다.
어쨌든 그래도 개발 직군인 만큼, 인성 검증이라고는 하나 사실상 기술 인터뷰의 연장선인 경우가 많았다. 그래서 여전히 기술적인 질문에 대한 대비가 필요하긴 한데, 대체로 이전 기술 인터뷰와는 또 성격이 조금 달라지기도 해서 난해한 측면이 있기 때문에 이 시점에 이르러서는 그냥 그동안의 생각들을 잘 정리하는 것이 더 중요하다는 생각이 든다.
아직 인터뷰를 많이 경험해 본 것이 아님에도, 질문의 범위나 성격, 깊이가 예외 없이 매번 판이하게 달랐던 것을 보면 면접은 들어오는 질문을 받아치는(방어하는) 것이 아니라, 먼저 주도적으로 내가 잘 답변할 수 있을 만한 질문을 유도하는(공격하는) 것이 맞는 전략이라는 생각이 든다. 물론 그게 쉽지는 않겠지만 말이다.
위에서 이런저런 얘기들을 했지만, 아직 이렇다 할 성과가 있지는 않은 상황이다. 일부 빠르게 채용 과정을 진행하는 회사들이 있다고는 하지만, 여전히 많은 회사들은 각 전형 당 1주일 정도의 시간이 소요되는 편이고 상황에 따라 더 길어지는 경우도 있어서 '어어' 하다 보면 한두 달이 훌쩍 지나가기도 한다.
시기가 늦어지면 늦어질 수록 더 힘들어진다는 것이 공통적인 경험자들의 조언이지만, 그렇다고 마음대로 되는 일은 아니기 때문에 결국 스스로의 마음 관리가 중요하다는 것을 느낀다. 불안해하고 조바심을 내면 현 회사의 업무라거나 일상에까지 악영향을 미칠 수 있다.
또한 연속성이 굉장히 중요하다는 생각이 들었는데, 최종 인터뷰까지 진행했던 두 회사로부터 거절의 소식을 접한 뒤로 잠시 재정비의 시간을 가질 겸 한동안 지원을 하지 않고 상황만 관망하는 시기를 보내고 있기 때문이다. 그동안 경험하고 공부했던 것들이 금새 휘발되며 옅어졌기 때문에, 다시 뛰어들기 위해서는 그동안 준비했던 것들을 다시 반복해야 할 판이 되어서 까마득하게 느껴진다. 사실 말이 좋아 '재정비'라고는 했지만 그냥 쉬는 것이었는데, 그러거나 말거나 계속 했었어야 한다는 생각이 든다.
그나마 조금 희망이 되는 사실은, 그동안의 경험을 통해 판단해본 바 지금 이러한 시도들이 객관적으로 깜냥이 안 되는 일을 붙잡고 늘어지고 있는 것은 아니라는 점이다. 적어도 어떤 점에서 부족했는지는 조금씩 알아가고 있는 중이고, 문제를 인지했다는 것은 이제 문제를 해결할 수 있다는 것이기도 하다. 아마 그렇기 때문에 그동안 수많은 사람들이 '그냥 하는' 것이 중요하다고 한 것이었으리라.
글 정말 잘 쓰시네요. 재밌게 잘 읽었습니다 😄