brunch

You can make anything
by writing

C.S.Lewis

by 서일환 Oct 09. 2020

신입 개발자의 취업준비

채용의 맥락을 파악하고 전략적으로 지원하라

작년에 우리나라의 취업준비생 인구가 70만 명을 넘었다고 한다. 해마다 취업준비생의 숫자가 늘어가고 있다는 소식을 들을 때마다 안타까움을 금할 길이 없다. 다음 단계로 가야 할 시기에 본인만 머물러 있다는 느낌은 깨지기 쉬운 인간의 멘털을 점진적으로 무너지게 만든다. 나도 취업 준비를 하던 시기가 있었다. 이제는 십 년도 넘었기 때문에 그때의 그 간절함은 잊어버렸다. 하지만, 간절함이란 것은 때가 되면 또 다른 모습으로 나를 찾아오기 마련이다. 간절함은 늘 나에게 속삭인다. '어서 네가 원하는 것을 이루어서 나를 보내줘'라고 말이다. 현재의 나도 여전히 내 다음 행보에 대한 간절함이 있다. 지금의 취준생들이 원하는 것처럼 이 글을 쓰고 있는 나 자신도 다음 단계로 가기 위해 고군분투하고 있다.


지난 십 년 동안 우연한 기회들로 신입 개발자가 되기 위해 취업을 준비하는 후배들을 만난 적이 있다. 그들을 만나보면 항상 지난 시절 내가 느꼈던 것과 같은 간절함이 느껴진다. 그 간절함 때문인지 현직에 있는 나의 의견은 필사적으로 놓치지 않고 귀담아들으려고 하는 모습으로 기억하고 있다. 나는 그들의 합격 당락을 결정하는 면접관이나 인사담당자도 아닌데도 말이다. 그 친구들이 나에게 궁금해하던 것은 대부분 비슷했다. 여러 가지 다른 형태로 질문을 하기는 했지만, 아마도 그들이 가장 궁금해하던 마음속의 질문은 "어떻게 하면 합격할 수 있어요?"였을 것이다. 하지만, 안타깝게도 나는 합격을 하는 방법을 알려줄 수는 없다. 나도 답을 모르기 때문이다. 질문을 조금 바꿔서 "선배라면 어떻게 준비했을 것 같아요?"라고 물어본다면 몇 가지 해줄 수 있는 조언이 있을지도 모르겠다. 지금부터 그 조언 몇 가지에 대해 이야기해보고자 한다.


가장 중요한 것은 기업의 채용공고와 인재상에 부합하게 준비해야 한다는 것이다. 나는 대부분의 평범한 사람들은 자기 자랑하는 것을 그리 즐기지는 않는다고 믿고 있다. 하지만 취업전선에서는 본의 아니게 본인에 대한 자랑을 해야만 하는 순간들이 있다. 필기시험이나 코딩 테스트 같은 것들은 자기 자신의 차별점을 호소할 수 있는 승부처는 아니다. 평가하고자 하는 대상이 사람 그 자체가 아니라 문제 풀이를 통한 그 사람의 지식적 완성도와 활용력이기 때문이다. 하지만 지원서를 작성할 때와 면접 과정은 다르다. 지원서는 글을 통해 면접은 말을 통해 자신을 충분히 어필을 해야 한다. 나는 많은 신입 지원자들이 자신을 어필하는 방법이 다소 나이브(naive) 하다고 느낄 때가 있다.

Naive는"경험, 지식 부족 등으로 인해 미숙한" 정도로 이해하면 되겠다.


자기 자랑을 하더라도 전략적으로 할 필요가 있다. 전략과 맥락 없이 막연히 자신이 잘 낫다는 것을 자랑하는 것은 아무런 경쟁력을 가지지 못한다. 전략적으로 자랑을 하려면 지피지기(知彼知己) 해야 한다. 정보가 없이는 전략을 짤 수 없다. 기업의 인재상을 읽어보면 그 기업 전체 혹은 인사부서와 채용 부서를 아우르는 채용 철학을 엿볼 수 있다. 또한, 채용 직무에 대한 상세 설명을 보면 해당 직무의 인력을 충원하는 부서에서 찾고 있는 사람에 대해 이해할 수 있다. 두 가지 정보는 기업 밖으로 공개된 정보 중 가장 신뢰할 수 있고 전략의 초석으로 삼을만한 양질의 정보이다. 


자기소개서와 면접 구술의 근본적인 전략은 채용공고와 인재상에 기초해서 수립해야 한다. 채용과정에는 지원자와 채용담당자라는 두 가지 주체를 중심으로 돌아간다. 채용공고와 인재상은 채용과정의 맥락이라고 볼 수 있다. 나는 채용 과정이 서로를 모르는 두 주체가 인재상과 공고를 기준 맥락으로 하여 서로가 통하는지 알아보는 과정이라고 생각한다. 지원서에 맥락이 없다면 무슨 수를 쓰더라도 서로 통할 수가 없다. 채용을 담당하는 실무자들은 지원자를 평가하는 기준을 수립해야 한다. 그 평가기준도 역시 그 맥락을 기준으로 만들어진다. 


여러 회사를 동시에 지원하기 위해 동일한 자기소개서를 재활용하는 것은 위험한 일이다. 지원서를 쓰는 과정이 괴로운 것은 누구나 공감할 것이다. 하지만 괴롭다고 해서 본인의 자기소개서를 여러 기업에 두루 통용될 수 있는 수준까지 일반화해버린다면 기업의 입장에서는 매력이 없는 평범한 사람으로 보이게 될 것이다. 프로그래밍을 할 때에는 추상화(abstraction)와 일반화(generalization)가 매우 중요하지만, 이력서를 작성할 때는 해당 기업에 대해 본인 스스로를 과적합(overfitting) 하도록 신경 쓸 필요가 있다. 코드나 문서를 재활용할 수 있도록 만드는 것은 현업에 오게 되면 싫어도 해야 할 일이다. 취업 과정 중에는 각 목표 별로 독립적인 자기 이야기를 구성해 나가길 바란다.


자기소개서를 작성할 때는 빵조각(breadcrumb)을 잘 활용해야 한다. 빵조각의 의미는 헨젤과 그레텔 동화를 알고 있다면 대략적으로 감이 올 것이다. 사실은 빵조각보다는 미끼(bait)라는 단어를 쓰고 싶었지만 채용 담당자들에게는 너무한 표현 같아서 순화하였다. 빵조각을 뿌려두는 것은 자기소개서를 읽는 채용 담당자들이 맥락과 부합하는 인재인지를 파악하기 용이하도록 하기 위함이다. 담담하게 자신을 소개하지만 중간중간 스며 나오는 단어나 문구가 자신이 지원하는 기업의 인재상과 채용공고에 부합한다는 것을 교묘하게 담아내야 한다.


진행했던 프로젝트나 과제를 설명할 때는 제목보다는 구성이 중요하다. 제목이 그럴싸한 문제를 풀었다거나 유명한 간판 아래 소속되어 프로젝트 활동을 했다는 것 자체만으로 합격의 당락을 결정할 수는 없다. 진행했던 프로젝트에 대해 이야기할 때는 어떤 문제의식을 가지고 그 프로젝트를 시작했는지, 그 속에서 자신의 역할은 뭐였는지, 어떤 기여를 했는지, 결과는 어땠는지, 실패를 했다면 반성 포인트가 뭐였는지, 성공을 했다면 핵심 요인이 무엇이었는지 등을 설명할 수 있어야 한다. 또한, 그 경험을 통해 지원하고 있는 기업에 자신이 어떤 기여를 할 수 있는지 직접 언급하거나 간접적으로 추측할 수 있도록 해줘야 한다.


코딩 테스트나 필기시험 그리고 CS 기초지식을 묻는 면접 등에 대해서는 별도로 조언해 줄 말이 없다. 이러한 시험은 꾸준히 준비해온 사람을 배신하지 않을 것이기 때문이다. 꾸준함으로 승부해야지 전략적으로 접근해야 할 대상은 아니라고 본다. 다만, 코딩 테스트 관련해서는 첨언할 말이 있다. 최근 유행처럼 실시하는 온라인 상에서 진행되는 프로그래밍 테스트 방식에 대해서는 예전보다 변별력을 많이 잃지 않았나 생각한다. 여럿이 모여서 함께 시험을 본다거나 누군가의 답안을 활용하는 사례가 종종 있다는 이야기를 많이 들었기 때문이다. 내가 직접 확인을 한 것은 아니기 때문에 사실인지는 모르지만 충분히 그럴 가능성은 있다고 생각한다. 그럴 가능성이 있는 것 자체만으로도 지원자의 도덕성에게만 기댈 수는 없는 것이다. 반칙이 가능한 게임판은 결국 모두가 반칙을 해야만 지원자들 간에 공평한 상태를 이룰 수 있고 결국 그 상태는 본연의 역할인 변별력을 잃는 상태로 만들어 버릴 것이다. 형평성에 문제가 있는 진행 방식이라면 아무리 변별력이 좋다 해도 쓰지 않는 것이 맞다고 본다. 변별력 측면에서도 주어진 문제를 풀 때 이 사람의 문제풀이 사고 과정을 볼 수 없기 때문에 개인적으로는 아쉬운 점이 많다고 생각한다. 다시 예전처럼 면접 중에 손코딩을 하거나 언택트 시대에 맞게 온라인으로 대화를 나누며 라이브 코딩을 하는 시절이 도래하지 않을까 추측해본다.


면접 과정 중에서도 면접관이 내 페이스대로 질문을 하도록 만드는 전략이 필요하다. 결국 면접은 자기소개서를 기준으로 이루어지기 때문에 자기소개서를 작성할 때부터 부지런히 전략적인 준비를 해왔다면 실제 면접 자리에서도 내가 받고 싶은 질문을 하도록 유도할 수 있을 것이다. 채용공고의 자격요건과 우대사항에 나와 있는 기술적 키워드들도 잘 활용해야 한다. 기술 면접관이라면 아무래도 본인이 최근까지 사용하던 기술에 대해 기억이 생생한 상태이므로 미리 공부를 해두고 간다면 심도 있는 대화를 나누고 좋은 인상을 심어주게 될 가능성이 높다.


부가적으로 아무래도 비전공자들은 채용 과정 중 면접에 대한 부담이 가장 클 것이다. 하지만, 비전공자들이 면접 자리까지 왔다는 의미는 면접관들도 비전공자임을 감안하겠다는 뜻이다. 현재 알고 있는 컴퓨터 과학 기초지식보다는 잠재력을 보려고 할 것이다. 잠재력을 평가하는 수단으로는 다양한 방법이 있겠지만 아마도 본래의 전공에서 어느 정도 학과 생활에 충실했고 자신의 학업에서 어떤 성과를 이루었는지 확인하는 것이 가장 정공법일 것이다. 비전공자를 면접 자리까지 불러다 놓고 CS 기초지식에 대해 깊게 파고들려는 면접관에게는 너무 많은 것을 바라는 것이 아닌지 조심스럽게 반문해본다. 개발 조직에는 다양한 사람이 필요하다. 이미 세상은 융합의 시대이고 다양한 도메인의 전문가와 함께 협업해야만 가치를 창출할 수 있는 시대가 되었다. 자신이 비전공자라고 해서 커리어 생애 전반이 불행할 것이라고 미리 겁먹을 필요 없다. 어떤 상황에서도 전략적으로 사고할 수 있다면 위기를 극복하고 다음 단계로 전진할 수 있을 것이다.


여기까지 그동안 내가 받아왔던 질문들을 기반으로 몇 가지 궁금증에 대한 내 나름의 해석을 내놓아 보았다. 혹시 명확한 합격 비법을 기대했다면 실망했을지도 모르겠다. 서두에도 말했지만 나는 그런 것은 없다고 생각한다. 길게 조언을 하긴 했지만 어쩌면 이 글의 모든 것이 아무래도 좋은 운칠기삼(運七技三) 일지도 모른다. 하지만, 운칠기삼이라는 사자성어에는 늘 함께 다니는 우공이산(愚公移山)이라는 말이 있다.

우공이산이란 한 가지 일을 끝까지 밀고 나가면 언젠가는 이룰 수 있다는 뜻


운이냐? 노력이냐? 우리는 쉽게 이해하기 위해 세상을 둘로 나누어서 보지만 사실 세상에 정확히 두 가지의 속성으로 구분할 수 있는 것은 거의 없다. 모든 것은 어떤 상태의 변화량에 따라 속성이 바뀌는 지점들이 존재할 뿐이다. 그 지점들이 너무나도 많기 때문에 편의상 특이점이 발견되는 몇 가지로 구분하는 것이다. 결과론적으로 본다면 우리는 자신이 무엇을 이룬 후에 그 원인이 '운' 때문이었는지 아니면 '노력' 때문이었는지 판단하기 쉽지 않다. (물론 남의 성과는 운으로 보겠지만...) 이 글이 취업을 준비하는 사람들의 준비 과정에 조그만 변화량을 얹어 줄 수 있다면 충분히 목적을 다했다고 생각한다.


가장 중요한 것은 불합격했다고 해서 본인이 능력이 없다거나 가치가 없는 사람이라고 생각하지 않는 것이다. 세상에 그 어떤 채용과정도 평가시스템도 그 사람의 진가를 알아낼 수 있는 방법은 없다. 우리 모두는 이미 뛰어난 사람이다. 다만, 무한한 우주의 변화량 속에서 자신의 속성이 바뀌는 지점을 아직 찾지 못한 것뿐이다.

매거진의 이전글 명확한 주어 사용의 중요성
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari