관심 있는 회사의 채용 정보를 얻기 위해 학회장, SNS에서 채용 담당자와 현직 엔지니어들을 찾아가고, 지인, 지인의 지인과 연락을 취하고 직접 만나서 여러 이야기도 들은 끝에, 9월이 다가오며 마침내 졸업예정자 신분으로서 나의 채용 시즌이 시작되었다. 물론 채용 시기는 회사마다 다른데, 국내의 다수 기업들은 정기적인 공채를 통해 신규 입사자를 모집하므로, 대략 상반기 채용 시즌은 3월부터, 하반기는 9월부터 시작하는 것이 일반적이다. 나의 경우는 상시 채용 모집 공고도 지원할 예정이므로, 이 경우는 회사의 채용 공고 사이트를 주기적으로 들어가서 내가 원하는 직무가 열리는지를 기다리며, 졸업 시기와 맞물려 입사가 가능하도록 "적절한 타이밍"에 지원하면 된다. 나와 같은 2월 졸업자의 경우, 12월에 학사 일정이 대거 끝나고, 채용 절차는 한 달 조금 넘게 진행됨을 감안하면, 보통 여기서의 적절한 타이밍이란 10월 말~11월 초쯤이 된다.
내가 다니는 S대 E학과의 석사 졸업 요건은 SCI급 학술대회 (학계에서 국제적으로 권위를 인정받고 있는 학술지/학술대회)에 주저자로 논문을 한 번 제출하고, 이를 바탕으로 학위 논문을 완성하여 12월 초에 교수님들을 심사위원으로 모셔 발표를 하면 된다. 나는 5월 모 국제학회에 논문을 주저자로 투고함으로써, 큰 요건은 만족한 셈이 됐다. 학회 논문 투고가 끝나면 리뷰어들로부터 리뷰를 받고, 반박 (rebuttal)을 서로 주고받고, 학회에 accept 될지에 대한 최종 심사가 나오는 일정이 이어진다. 석사 학위를 받는 데에는 투고 이후의 상술한 과정을 전혀 하지 않아도 문제가 되지는 않으나, 본인이 수 개월 동안 붙잡고 있었던 연구 결과물인 만큼, 그 이후의 과정에 최선을 다하지 않을 이유는 없었다. 그렇다고 그 시간에 유의미한 취업 준비를 하기도 애매하기 때문이다.
나의 경우 7월에 1차 리뷰에서 4명의 리뷰어로부터 모두 borderline reject을 받았다. 이는 6점 만점으로 3점에 해당하는 점수인데, 최소 borderline accept (6점 만점에 4점)과 같은 긍정 의견이 과반수는 되어야 최종 심사에서 유의미한 논의가 이루어짐을 생각하면, 내가 받은 1차 리뷰는 반박을 아주 뛰어나게 하더라도 현실적으로 리젝 (reject, 논문이 학회에서 거절되어 발표 및 출판 기회가 주어지지 않음)이 될 가능성이 높은 수준이었다. 그래도 나는 뛰어난 반박으로 결과를 뒤집겠다는 생각으로 주어진 1주간의 반박 기간에 최선을 다했다. 그렇지만, 1명의 리뷰어만이 borderline accept로 의견을 바꿔주었고, 나머지 리뷰어들을 설득하는 데에는 실패했다. 그리고 결국 9월 중순, 최종 심사 결과에서 예상했듯이 리젝이라는 결과를 받았다.
아쉬운 결과였고, 석사 과정 동안 인정받을 만한, 유의미한 연구 결과물을 만들어내지 못했다는 것에 미련이 남았다. 이제 내게 졸업까지는 대략 3개월 정도 남은 셈인데, 아주 길지는 않지만 그렇다고 아무것도 안하고 취업 준비만 하기에는 긴 시간이었다. 연구비도 12월까지는 계속 받기로 한 만큼, 보고 있던 연구 주제를 조금 확장하여 이어서 연구를 좀 더 해보기로 했다.
그래도 논문 투고와 반박의 일련의 과정을 모두 겪어본 덕인지, 최신 트렌드 논문을 훑고, 아이디어를 던지고, 아이디어를 초기에 확인할 간단한 실험을 셋업하고, 실험 결과를 얻고 해석하는 과정이 조금은 빨라졌다. 연구에 대한 스스로의 기준도 조금은 높아져서, 별로인 아이디어에 대해서 미련을 버리는 속도도 빨라졌다. 몇 주 정도 이런 과정을 거듭하다가, 내가 생각하기에는 이전 주제보다 괜찮아 보이는 연구 내용을 제안해볼 수 있었다. 지도교수를 찾아가 연구 내용을 이야기했을 때, 처음으로 참신해보이는 면이 있다는 얘기를 들었다. 그래서, 당분간 취업 준비를 중간중간 하면서 연구도 병행을 하기로 했다. 비록 당장 취업 원서에 쓰지는 못하더라도, 졸업 전에 논문을 완성해서 학회에 한 번 더 제출을 해보겠다는 마음이 들었다.
SNS와 학회장을 통해 N사의 현직자들과 이야기를 나누어본 뒤, 나는 N사에 대해 꽤 긍정적인 이미지를 가지고 있었다. 다만, 나와 가장 잘 맞는 직무에 대해서는 신입을 잘 채용하지 않는다는 답변을 받았다. 기술적 핏 (fit)이 아주 잘 맞는다는 전제 하에 학회 네트워킹을 통해 채용 기회를 얻거나, 아니면 인턴을 통해 3개월 간 직접 일을 하며 실력을 증명하는 것이 현재 나의 상황에서 N사에 합류할 수 있는 방법이라고 했다.
"아무래도 N사가 영입을 많이 하기에는 회사 사정이 그렇게 좋지가 않아요. 제 생각에 정말 유능한 경력직인데도, 충분한 대우를 받지 못하며 다니는 회사 분들도 있거든요. 그렇다 보니 저희가 석사 신입까지 적극적으로 영입을 하기에는 무리가 좀 있어요. 아무래도 최대한 인턴 기회를 노려 보시고, 인턴으로 들어오셔서 실력을 보여주시는 게 N사에 합류하실 수 있는 방법일 것 같아요."
지난 여름, 3개월 인턴 공고가 나왔고, 마침 내가 석사 과정 동안 수행한 연구와 유사한 직무의 포지션도 오픈되었다. 하지만 아직 한 학기가 남은 상황이다 보니, 당장 인턴 채용에 지원하기에는 애매했고, 설령 인턴 기회를 얻어 일을 하더라도 정규직 전환 기회가 주어지는지가 내게는 가장 중요한 부분이었다. 그리고, 채용 팀에 문의한 결과 아래와 같은 답변을 받았다.
'해당 인턴 공고는 정규직 채용 전환과는 별개입니다.'
그래도 내가 관심있는 포지션으로 최근에 인턴 공고가 났다는 것은 긍정적인 소식이었다. 조금 기다려보다가 적절한 시기에 비슷한 포지션의 공고가 뜨면, 그때 지원해봐서 어필해볼 수 있겠다는 생각이 들었다. 그리고, 9월 초 경력 공채가 열렸다. 아쉽게도 핏이 아주 잘 맞는 포지션은 열리지 않았지만, 적절히 끼워 맞출 수 있는 포지션 공고가 열렸고, 2년 이상 경력자 대상의 채용이었다. 그리고, 회사 측에 경력 인정 기준에 대해 문의한 결과 아래와 같은 답변을 받았다.
'석사 과정은 경력 인정이 되지 않습니다. 그렇지만, 경험과 직무 적합성을 종합적으로 평가하오니, 업무를 수행하기에 적절하다고 생각하시면 지원해주시기 바랍니다.'
완곡한 거절에 가깝지만, 어차피 N사는 하반기에 신입 공채를 열지 않기 때문에, 경험 삼아 지원해보기로 하였다.
채용 사이트에 들어가 인적 사항을 입력하고, 에세이 형태의 문항 몇 개의 답변을 채워넣었다. 서류를 접수하자, 온라인 코딩 테스트 링크를 보내주었다. 정해진 기한까지 특정 시간을 재고 코딩 문제를 풀면 된다고 했다. 문제는 링크를 클릭한 순간부터 확인 가능하며, 제한된 시간이 종료되면 답안이 자동 제출되어 평가되는 방식이다.
'요즘같이 생성형 AI 채팅 서비스가 뛰어난 시대에 온라인 코딩 테스트라니.. 이거 누군가 마음먹고 부정행위를 할 수도 있는 거 아닌가..?'
경력 채용이다 보니 코딩 테스트에 대한 감시가 허술했다. 요즘은 온라인 코딩 테스트도 많이 이루어진다고 하는데, 보통은 카메라 등을 설치하도록 해 최소한의 부정 행위를 감시한다고 한다. 아무래도 경력 채용이다 보니, 부정 행위를 하더라도 면접을 통해 충분히 검증이 가능하다고 보고, 온라인 코딩 테스트에는 큰 비중을 두지 않는 듯했다.
문제 유형은 자주 보던 것도 있고, 조금 낯설었던 유형도 있었는데, 전반적으로 난이도는 높지 않았다. 큰 어려움 없이 주어진 문제들을 제한 시간 내에 풀 수 있었다.
그리고 코딩 테스트를 제출하고 약 2주 정도 지난 뒤에 서류 및 코딩 테스트에 대한 결과를 받았다.
'불합격입니다.'
학회장에서의 이야기, 회사 측의 Q&A 등을 통해 어느 정도 예상한 결과이기는 했지만, 불합격을 직접 마주한 기분이 유쾌할 수는 없는 법이다. 공교롭게도, 이 날은 학회 리젝 메일을 받은 날짜였다. 하루에 두 번이나 불합격이라니. 물론 둘 다 어느 정도 예측한 불합격이긴 했으나, 2중 불합격은 더더욱 유쾌할 수 없는 법이다.
아직 여러 회사들이 남아 있었고, 연구도 지속하고 있었기 때문에, 다른 여러 할 일들을 하다 보니 N사 불합격의 아쉬움은 만 하루가 안 되어 털어버릴 수 있었다.
S사는 학부생 때 인턴을 했던 회사였다. S사 산하에 있는 연구소에서 인턴을 하게 되었는데, 아직까지 나의 유일한 회사 경험이기도 하고, 1달 반이라는 짧은 기간 동안은 특별히 단점을 느낄 새도 없어, 내게는 전반적으로 좋은 기억으로 남아있는 회사였다.
S사 중에서도 해당 연구소에서 인턴을 하게 된 계기가 조금은 단순한데, 친한 학과 친구 C와 선배 H.J가 모두 이곳에서 인턴을 했었다는 이야기를 전해 들어서이다. C, 그리고 H.J에 대한 나의 내적 친밀감과 신뢰도가 꽤나 높다 보니, 평소에 하는 그들의 말에도 아무래도 조금 더 귀 기울이게 되었던 것이리라. 사실 그 둘도 나와 비슷한 학년에, 비슷하게 짧은 기간만 인턴을 했을 테니, 나에게 깊이 있는 경험을 들려주지는 않았을 것이다. 업무가 나름 흥미롭고, 만난 사람들도 좋았고, 회사의 복지도 좋았더라는 정도의 이야기였을 것인데, 이것이 하나의 끌림으로 작용해 나 역시 이 연구소를 선택했던 것이다.
실제로 내가 느낀 바도 대체로 비슷했다. 깊이가 깊지는 않아도 적당히 흥미로운 일이 주어졌고, 만나는 부서 사람들, 인턴 동기들도 모두 괜찮은 사람들이었으며, 회사 위치, 월급이나 복지 등의 처우도 만족스러웠다. 그래서 인턴 후에도 해당 연구소에 대해서는 꾸준히 좋은 이미지를 가지고 있었고, 그러다 보니 채용 시즌이 되어 이 회사를 지원하게 된 것은 자연스러운 과정이었다.
그래서 9월에 S사 신입 공채가 열렸을 때, 나는 별다른 고민 없이 이 연구소를 지원하기로 했다. 인적 정보 기재 외에 에세이 형태 문항도 꽤나 분량이 많았다. 학부 과정의 학업 내용, 대학원 과정의 연구 내용을 포함하여, 학부 시절 때 했던 밴드 동아리, 수영 동아리, 봉사 활동 등 각종 비교과 활동들까지 적절히 문항에 맞게 소재로 활용하여 스토리텔링을 하는 식으로 에세이를 작성할 수 있었다. 내가 직접 경험한 것들을 적절히 녹여 하나의 스토리로 글을 작성하는 것은 내 나름대로 자신있는 영역이었다.
에세이를 채용 사이트에 제출한 순간, 학부생 인턴을 마치고 나에게 주어졌던 학사 장학생 전형이 기억을 스쳐 지나갔다.
'그때 장학생 전형으로 같은 회사에 지원했다면, 경쟁률이 지금보다 어떠했을까. 조금은 더 수월하지 않았을까..'
수월했을지 여부는 모르는 일이다. 그리고 설령 수월했다고 하더라도, 다 지나간 기회를 이제 와서 돌이켜보는 것은 생산적이지 않은 생각임을 알고 있다. 과거에 대한 후회를 잘 하지 않는 편이지만, 막상 불확실한 상황 앞에 놓이니 이런 생각도 순간 스쳐갔다.
다행히도 나는 이 회사의 서류 전형에 합격하였다. 그리고 1주일 정도의 시간이 주어진 뒤, 주말에 오프라인 코딩 테스트를 보러 오라고 안내가 왔다. 나는 개발자로 일하고 있는 친구 T에게 연락을 해 코딩 테스트에 대한 경험을 전해 들었다.
"아마 S사는 아주 어렵게 나오지는 않을 거야. 특히 너의 직무는 더욱 그럴 거야. 그렇지만 문제의 조건이 좀 복잡하고 까다로운 편이지. ~년도 ~ 기출 문제 같은 난이도라면 풀 수 있는 사람이 그리 많지는 않을 것 같아. 만약 이 정도의 문제가 나오면 다른 문제를 우선 확실하게 푸는 게 더 좋은 전략이 될 거야."
T는 이미 채용 시장을 거치며 코딩 테스트 응시 경험이 많이 있는 만큼, 문제의 난이도나 해결 전략 면에서 아는 것들을 이야기해주었다. 사실 코딩 테스트가 하루 남은 상황에서는 문제풀이와 직접 연관된 능력을 길러줄 수는 없다. 다만 코딩 테스트도 시험의 일종이기에 시험 특성과 관련하여 현장에서 알아두면 좋을 만한 소소한 팁들을 T와 함께 정리하였다.
시험 당일, 아침 일찍 현장으로 향했다. 집에서는 대중교통을 여러 번 갈아타고 약 1시간 반을 넘게 이동해야 하는 거리였다. 시험장 근처 지하철 역에 도착하자, 지원자들이 시험장 건물까지 벌써 줄을 길게 늘어서 있었다. S사의 경우, 지원서는 각 사업부 별로 접수하지만, 코딩테스트는 소프트웨어 관련 직무에 해당하는 모든 지원자들이 동시에 같은 문제를 응시하게 된다. 수많은 S사 지원자들이 이루는 행렬의 일원이 되어 그 흐름에 맞추어 발걸음을 이동하다 보니 왠지 모를 기시감이 일었다. 8년 전 이맘때 수능 시험장에 들어가던 기억이 스쳐 지나가기도 했고, 5년 전 육군 훈련소에 입소하는 것과도 비슷한 기분이 들었다.
시험은 4시간 동안 진행되었고, 나는 문제를 적당히 해결하고 나올 수 있었다. 본인의 결과를 종료 즉시 정확하게 짐작하기란 어렵지만, 테스트 케이스 (내가 푼 문항에 대한 예시 입출력을 몇 개 제공해줌으로써, 코딩 테스트의 응시자가 답안을 자가 검토할 수 있도록 하는 역할을 한다)의 실행 결과로는 꽤 괜찮게 풀고 나온 것 같았다. T에게도 응시 후기를 간단히 전했다.
"그래, 고생했다. S사 코딩 테스트에서 그 정도면 잘 풀고 나온 걸 거야. 어제 얘기한 전략대로 풀었구나."
대중교통을 이용해 집에 가는 길, 취업 준비 스터디 그룹으로 보이는 사람들이 방금 응시한 문제에 대한 후기를 이야기하고 있었다.
"이 문제는 ~~ 유형에 속하는 것 같아. 그래서 ~~한 전략으로 풀어야 하는 거지. 우리 며칠 전 스터디에서 봤던 문제 중 ~~와 비슷하지 않아?"
"오늘 ~~번 문제 ~~ 알고리즘 써서 풀면 되는 건가? 일단 나는 그렇게 풀기는 했는데."
"나는 시험 중에 갑자기 디버거가 잘 동작하지 않는 거야. 평소처럼 사용하려고 했는데, 갑자기 안 되는 것 같아 진행 요원에게 도움을 청했어."
"내일은 또 ~~기업 코딩 테스트 있으니까, 조금만 쉬다가 다시 같이 준비해보자고."
같은 문제를 응시했을 사람들인 만큼, 처음에는 나도 모르게 괜히 귀를 기울이게 되었는데, 이미 지나간 시험에 대해 이런저런 얘기를 듣다가는 의미없는 불안감만 커질 것 같았다. 이어폰으로 흘러나오는 클래식 음악의 볼륨을 높이며, 당분간 결과가 나오기 전까지는 잊어버리자고 다짐했다.
N사: 총 3차 전형 중 1차 서류/코딩 테스트 불합격 (채용 절차 종료..)
S사: 총 3차 전형 중 2차 코딩 테스트 응시 완료