2023-2024 취준 후기

서론

인터넷을 보면 PS만 한 사람은 취업을 못 한다는 이야기가 많이 보입니다. 이 글은 지난 8년 동안 PS만 했던 한 사람의 취준 후기입니다.

목차

  • 2023년 인턴 지원
    • Google SWE Intern, Summer 2023 - Seoul
    • NAVER Corp. Yorkie TF Intern, Winter 2024
    • Jane Street SWE Intern, Summer 2024 - Hong Kong
  • 2024년 인턴 지원
    • Google SWE Intern, Summer 2024 - Seoul
    • Moloco SWE Intern, Summer 2024 - Seoul
    • Dynamic Technology Lab C++ Developer Intern - Remote
  • 2024년 정규직 지원
    • 2024 팀네이버 신입 공채
    • Flipster(Presto Labs) Junior SWE (Backend)
    • Quora SWE - Korea(Remote)
    • 기타
  • 마무리

2023년 인턴 지원

대학교 2학년 때부터였나, PS만 한 사람은 취업을 못 한다는 글을 볼 때마다 조금씩 불안한 마음이 들어서, 슬슬 PS와 거리를 두고 먹고 살길을 찾아야 한다고 생각하고 있었습니다.

저는 초등학교 5학년 때부터 지금까지 11년 동안 코드를 짰으며 특성화고 소프트웨어과를 졸업하고 대학교에서도 컴퓨터를 전공하고 있지만, 부끄럽게도 무언가를 만들어내는 “개발”이라는 것을 거의 해본 적이 없고 내세울 만한 프로젝트도 없습니다. 이런 고민 탓에 재작년부터 주변 친구들과 선배들에게 조언을 여러 번 구했었습니다.

  • 연합 동아리, 부트캠프, 소프트웨어 마에스트로 같은 것보다는 인턴 하면서 배우는 게 낫다.
  • 너는 프로젝트가 없어도 실력을 보여줄 수 있는 것이 많으니 괜찮다.
  • 기본적인 것들만 잘 갖춰져 있으면 상관없다.

와 같은 조언을 들었고, 마침 2022년 말에 ICPC에서도 큰 성과를 거두었던 터라 자신감을 갖고 인턴에 지원했습니다. 사실 자신감이라기보다는 그냥 ICPC 하나만 믿고 도박을 한 것에 가깝습니다. 마치 KOI와 블로그만 믿고 카이스트부터 숭실대, 국민대까지 다양한 대학에 수시 원서 8개 넣은 고등학교 3학년 때처럼…

Google SWE Intern, Summer 2023 - Seoul

2022년에 친구가 올린 글(링크)을 보고 저도 구글 가고 싶어서 지원했습니다. 원래도 구글은 프로세스가 천천히 진행된다는 것은 알고 있었지만, 제가 직접 겪는 것은 또 다른 문제였습니다. “까먹을 때쯤 연락이 온다”는 표현이 가장 적절한 것 같습니다. 이 글을 쓰는 시점으로부터 약 2년 전에 지원했던 터라 자세한 내용은 잘 기억나지 않습니다. 혹시 다음에 지원하시는 분들을 위해 예전에 기록해 둔 날짜 위주로 적습니다.

1월 12~13일에 채용 공고가 올라왔습니다. 한 가지 문제라면 공고가 올라온 다음 날 구글 12000명 layoff 발표가 나와서… 1월 20일에 공고가 내려갔다가 2월 7일에 다시 공개되는 등 굉장히 정신없었던 것으로 기억합니다.

채용 공고가 다시 올라오자마자 하루 만에 resume와 cover letter등을 완성해서 제출했고, 2월 28일에 코딩 테스트를 보라는 연락을 받았습니다. 코딩 테스트는 2문제가 나왔고, 두 문제를 모두 해결하는 데 10분 정도 걸렸습니다. 이후 1달 정도 기다리니 3월 27일에 선호하는 언어와 프로그래밍 언어, 그리고 면접 가능한 시간을 알려달라는 연락이 왔습니다. 서류는 어떻게 합격했으니 이제 면접 준비를 열심히 하면 되겠다고 생각했지만…

5월 18일에 이후 프로세스를 진행하지 않겠다는 연락을 받았습니다. 2023년 여름에 인턴을 한 사람이 있다는 이야기가 있는 것을 보면 인턴을 아예 모집하지 않은 건 아닌 것 같고, 그냥 제가 우선순위가 낮았던 모양입니다. 서류 합격했다고 말해야 할지 떨어졌다고 말해야 할지 잘 모르겠습니다. 아무튼 구글 인턴은 탈락했지만, 제 resume에 적혀 있는 경력(?)이 아주 매력이 없진 않다는 것을 깨닫고 자신감을 얻었습니다.

지원 과정과 프로젝트 소개, 업무 내용 모두 (링크 - 네이버 Yorkie TF 인턴 생존기)에서 볼 수 있습니다.

Jane Street SWE Intern, Summer 2024 - Hong Kong

작년 10월에 man_of_learning님의 소개로 Jane Street ETC에 참가했었는데, 대회가 종료된 후에 여름 인턴십을 모집한다는 메일을 받아서 11월 말에 지원했습니다. 트레이더로 지원하는 건 어림도 없어 보여서, 그나마 가능성이 있을 것 같은 SWE로 지원했습니다. resume는 구글에 냈던 것에 2023년 수상 실적 몇 개를 추가해서 냈고, 3일 뒤에 zoom으로 간단하게 10분 정도 통화하자는 연락을 받았습니다.

영어로 대화하기도 어렵고 낯선 사람과 대화하기도 어려운데 낯선 사람과 영어로 대화하는 것은 얼마나 어려울까요? 일단 저는 많이 어려웠습니다. 학교와 졸업 예정 시기, 그리고 지원 계기와 알게 된 경로 등 간단한 정보를 물어보고 이후 프로세스 일정을 알려주는 간단한 통화였음에도 불구하고, 낯선 사람과 영어로 대화하는 것은 처음이었기에 많이 어려웠습니다. 영어 공부의 필요성을 22년 만에 처음으로 느꼈습니다.

전화가 끝나자마자 첫 번째 인터뷰 일정을 잡자는 메일을 받았고, 바로 1주 뒤에 첫 번째 인터뷰를 진행했습니다. 인터뷰는 1시간 동안 면접관과 1:1로 진행되었습니다. 모든 인터뷰는 한 문제를 여러 단계에 걸쳐 점점 발전시켜 나가는 방식으로 진행됐습니다. 1차 인터뷰는 2개의 단계가 있었는데, 첫 번째 단계는 완벽하게 풀었고 두 번째 단계는 정답에 근접한 답을 냈지만 면접관이 원하는 답과 정확히 일치하지는 않았습니다. 초반에 영어로 대화하는 것이 서툴러서 시간이 지연된 것이 많이 아쉬웠습니다. 붙을 확률보다 떨어질 확률이 조금 더 높다고 생각하고 zoom 회의실에서 나왔습니다.

1주 뒤에 연락이 왔는데, 제 예상과 다르게 긍정적인 평가를 받아서 파이널 인터뷰 기회를 얻게 되었습니다. 파이널 인터뷰는 하루 동안 1시간 정도의 인터뷰를 2~3번 진행하며, 각 라운드를 면접관 2명과 함께 진행합니다. 문제 형식은 동일합니다.

첫 번째 라운드는 오전 11시부터 12시 5분까지 진행됐습니다. 3단계로 구성되어 있었고, 3단계 모두 뇌 비우고 열심히 구현하는 문제라서 어렵지 않게 했습니다. 그게 인터뷰어 마음에 들었을지는 모르겠지만… 마지막에 시간이 조금 남아서 면접관과 잡담할 시간이 있었는데, 하고 싶은 말도 영어로 내뱉지 못하고, 어떻게 잘 영작해서 말하더라도 돌아오는 답변을 다시 해석하는 것이 어려웠습니다. 그래도 영어 공부를 하지 않은 중고등학생 시절의 제가 원망스럽지는 않습니다. 그때 영어 공부를 했다면 지금 인터뷰를 못 하고 있었을 것이기에…

두 번째 라운드는 12시 10분부터 13시 10분까지 진행됐습니다. 3단계로 구성되어 있었고, 2번째 단계까지는 열심히 구현하는 문제, 마지막 단계는 머리를 조금 써야 하는 문제였습니다. 구현은 잘했고 마지막 단계에서 올바른 아이디어도 냈는데, 인터뷰어의 도움 없이 한 번에 정답에 도달하지 못한 것이 조금 마음에 걸렸습니다. 두 번째 라운드도 잡담할 시간이 조금 있었고, 1시간 만에 영어 실력이 늘진 않기 때문에 이때도 그냥 슬퍼하고 있었습니다.

40분 정도의 점심시간을 가진 후에 13시 50분에 세 번째 라운드를 진행하려고 다시 zoom에 들어갔는데, 인터뷰어가 아닌 리크루터가 들어와서 논의 결과 세 번째 라운드를 진행하지 않는 것으로 결정했다고 이야기했습니다. 그리고 파이널 인터뷰도 이렇게 끝이 났습니다.

두 라운드 모두 첫 번째 인터뷰보다는 괜찮았다고 생각하는데, 세 번째 라운드가 취소된 것이 어떤 의미인지 모르기에 어떻게 될지 감이 잡히지 않았습니다. 문제를 못 풀어서 떨어지진 않을 것 같고, 만약 떨어진다면 영어 때문일 것이라 생각했습니다. 붙으면 반년 뒤에 출국해야 하므로 영어 공부를 해야 하고, 떨어지면 영어 때문에 떨어진 것이니 영어 공부를 해야 하므로, 이제는 정말 영어 공부를 해야 한다는 것을 크게 느꼈습니다. 1차 인터뷰와는 평가 기준이 다를 것 같기 때문에 떨어질 확률이 붙을 확률의 2배 정도 된다고 생각하고 있습니다.

그리고 4일 뒤에 불합격 메일이 왔습니다. 살면서 처음으로 영어 공부의 필요성을 느꼈다는 점에서 얻어가는 게 많은 면접이었다고 생각합니다. 여담으로, 집이 아닌 곳에서 노트북으로 문제 풀 때 배터리를 아끼기 위해서 IDE 대신 메모장(notepad.exe)에서 코드를 작성하는데, 자동 완성 안 되는 색깔 있는 메모장에서 코드 실행 없이 눈으로만 검사하는 인터뷰에서 이 경험이 아주 큰 도움이 되었습니다.

2024년 인턴 지원

운 좋게 네이버에서 인턴십을 수행할 기회를 얻은 덕분에 조금 더 매력적인 이력서를 갖게 되었습니다. 좋은 회사에서 성공적으로(!!) 인턴 생활을 마친 것은 앞으로 저에게 큰 무기가 되어줄 것이라 믿었기 때문에, 2023년과 다르게 회사에 가지 못할 것 같다는 불안감은 들지 않았습니다.

Google SWE Intern, Summer 2024 - Seoul

한 번 더 지원했습니다. 2월 14일에 채용 공고가 올라왔고, 올라오자마자 작년에 작성한 resume와 cover letter를 조금 수정한 뒤 2월 15일에 바로 제출했습니다. 2월 26일에 정보(졸업 시기, 인턴 근무 가능 기간 등)를 조금 더 제공해 달라는 메일이 와서 이번에는 작년과 조금 다르다고 생각했고, 이틀 뒤인 28일에 면접 일정을 잡자는 연락을 받게 되었습니다.

면접은 3월 8일에 한국어 면접 1번 + 영어 면접 1번으로 진행되었습니다. 면접 문제는 어렵지 않아서 잘 풀었고, 3월 12일에 면접을 통과했다는 연락을 받았습니다. first batch of candidates 라면서 다음 프로세스(팀 매칭)가 시작되기 전까지 잠시 기다리라는 연락을 받았지만, 결국 5월 13일에 팀 매칭이 안 되었다는 통보를 받아 인턴은 하지 못하게 되었습니다.

Moloco SWE Intern, Summer 2024 - Seoul

2월 말에 ICPC Asia Pacific Championship 참가하러 베트남에 갔을 때, 몰로코에 다니고 있는 지인이 인턴 모집 열렸다고 알려줘서 지원했습니다. 몰로코는 구글과 다르게 팀 매칭 이후에 면접을 보기 때문에 채용 과정은 서류 전형 > 팀 매칭 > 면접 > 합격 순으로 이루어집니다. 저는 팀 매칭에 탈락해서 면접을 1번 보는지 2번 보는지는 모릅니다. “n달 뒤에 지원했으면 붙었을 확률이 높다” 같은 이야기가 아직까지 들려오는 것을 보면 타이밍이 안 좋지 않았나… 싶습니다.

Dynamic Technology Lab C++ Developer Intern - Remote

링크드인을 통해 리크루터에게 연락을 받아서 지원하게 되었습니다. 처음 보는 이름이라서 조금 검색해 봤는데, 베트남, 싱가포르, 중국 등에 오피스가 있고 리모트 근무도 가능한 퀀트 회사라고 합니다. Codeforces에도 홍보 글(링크)을 올리는 것을 보면, 역시 퀀트 회사답게 PS에 관심이 많은 것 같습니다. 채용 과정은 서류 전형 > 코딩 테스트 > HR Call > 1차 면접 > 2차 면접 > 인턴십 수행 > 정규직 전환 이고, 프로세스가 굉장히 빨랐던 것이 기억에 남습니다.

코딩 테스트는 SQL을 빈칸으로 제출한 것(…)만 제외하면 쉬웠습니다. HR Call은 그래도 몇 달 전에 Jane Street에서 영어로 면접도 봤다고 꽤 괜찮게(?) 했던 것 같습니다.

1차 면접은 C, C++ 문법, Modern C++에서 추가된 것, 운영체제, C/C++의 컴파일 과정 등 학교에서 C/C++ 관련해서 배우는 전반적인 지식에 대한 질문과 알고리즘 문제로 구성되어 있었습니다. 알고리즘 문제로는 solved.ac 기준 D4인 문제가 그대로 나왔었는데, 그것보다는 덜 효율적인 풀이를 의도했을 것이라 믿고 쉬운 풀이로 풀었습니다.

결과는 이틀 만에 나왔고, 2차 면접도 보게 되었습니다. 2차 면접도 비슷하게 Modern C++ 문법과 운영체제 위주로 물어봤고, 컴퓨터 구조나 객체지향 이론에 대한 질문도 있었습니다. 그리고 알고리즘 문제 대신 구현 위주의 문제가 나와서 꽤 많은 양의 구현을 했던 것이 기억에 남습니다.

2차 면접 결과도 짧은 시일 내에 나올 줄 알았지만, 인턴십 기간으로 예정되어 있던 10월까지도 연락이 없었던 걸 보면 탈락이거나 저를 잊은 게 아닌가 싶습니다.

2024년 정규직 지원

2024 팀네이버 신입 공채

지원 과정과 공채 프로세스는 (링크 - 2024 팀네이버 신입 공채 Tech 직군 합격 후기)에서 볼 수 있습니다.

최종 결과는 6월 14일에 나왔으며, 2025년 2월 졸업 예정이라서 2024년 7월 초 입사와 2025년 1월 초 입사 중 하나를 선택할 수 있었습니다. 1학기를 끝으로 “8학기 재학”이라는 조건을 제외하면 모든 졸업 요건을 채워둔 상황이라 7월에 입사해도 문제는 없었지만, 반년 정도 놀다가 회사에 가고 싶어서 2025년 1월 입사를 선택했습니다.

2025년 1월 초에 입사하기로 하고 반년 동안 아무 생각 없이 놀려고 했지만, 8월쯤부터 다른 회사도 지원해 보고 싶다는 생각이 들기 시작했습니다. 8년 동안 문제만 풀던 사람이라 그런지 면접에서 문제 푸는 것이 굉장히 즐거웠고, 지금 다른 회사에 지원해 보지 않으면 미래에 후회할 것이라 생각했으며, 일단 선택지를 늘려두면 손해 볼 것은 없다고 생각했기에 바로 실천으로 옮겼습니다. 고등학교 3학년 때 대학 입시에서 숭실대학교에 합격하고 나서 다른 학교 면접에 모두 불참했던 것 때문에 후배들이 입시 준비할 때 많이 도움을 주지 못했는데, 이번에는 최대한 많은 경험을 해서 후배들에게 많은 도움을 주고 싶다는 마음도 컸습니다.

Flipster(Presto Labs) Junior SWE (Backend)

Presto Labs는 여러 알고리즘 대회에 후원하고 얻은 홍보 세션에서 “신입 트레이더 초봉 (아주 큰 수)원!”을 외치는 것으로 유명한 HFT 회사입니다. 저는 아는 분의 추천을 받아 Presto Labs에서 운영하는 가상화폐 거래소인 Flipster의 Junior Software Engineer (Backend) 포지션에 지원했습니다. 재택근무도 되고 오피스도 집에서 매우 가깝다는 점이 가장 매력적이었습니다.

채용 절차는 서류 전형 > 코딩테스트 > 1차 면접 * 2 > 2차 면접 * 2 > 합격 순으로 진행되었습니다. 1차 면접 2번은 모두 자료구조/알고리즘 질문만 나와서 예정된 시간보다 일찍 끝냈습니다. 2차 면접은 (난이도가 너프된) 시스템 디자인 면접 같은 것 한 번과 네이버 공채의 1처 면접(기술 역량 인터뷰)과 비슷한 것 한 번으로 구성되어 있었습니다. 작년 말에 네이버 인턴 면접 준비하면서 이 책을 읽었던 것이 큰 도움이 되어 다행히 합격할 수 있었습니다.

Quora SWE - Korea(Remote)

Quora는 IOI/ICPC 출신이 여러 명 있고, 2021년과 2022년에 프로그래밍 대회도 대최했어서 예전부터 알고 있었던 회사입니다. 알고리즘 대회를 함께 운영하면서 알게 된 분을 통해 Core Infrastructure 팀의 Software Engineer 포지션으로 지원했습니다. 채용 절차는 리크루터 콜 > 1차 면접 > 최종 면접 > 합격 순으로 진행되었습니다. 미국에 본사를 두고 있는 회사인 만큼, 대부분의 일정이 새벽에 진행되어서 힘들었습니다.

1차 면접은 Coding/Algo interview 였습니다. 알고리즘 문제를 풀고 설명하는 것은 제가 가장 자신있어하는 일이지만, 반대로 외국인과 영어로 대화하는 것은 제가 매우 어려워하는 일 중 하나입니다. 이번 면접은 이 두 가지를 동시에 해야 하는 면접으로, 당연히 잘해야 한다는 마음과 어떻게 해야 잘할 수 있을지 모르겠다는 마음이 교차하고 있었습니다. 실제 문제는 쉽게 나와서 풀이를 찾는 것과 구현하는 것 모두 막히는 부분 없이 잘했습니다.

최종 면접은 Coding/Algo interview, Language practical interview, Hiring manager interview로 구성되어 있습니다. Language practical interview는 처음 보는 형식의 면접이었습니다. C++, Java, Python 중 하나를 선택하면 해당 언어로 작성된 천 줄 단위의 프로젝트가 주어지고, 기능을 추가하거나 버그를 고치는 형식으로 진행됩니다. 문제를 풀 때 C++을 주로 사용했었지만 모던 C++ 문법에 익숙하지 않기 때문에, 이미 회사에 다니고 있는 분들의 조언을 받아 Python을 선택했습니다. 주어진 시간 동안 태스크 1개 빼고 전부 구현했고, 이 정도면 괜찮을 것 같다는 느낌을 받았습니다.

Hiring manager interview는 네이버의 2차 면접(종합 역량 인터뷰)과 비슷한 느낌으로, 회사의 인재상(Eng Value, 링크)에 대해 심도 있게 물어보는 질문이 많았습니다. 인터뷰어가 한국인이라서 한국어로 진행될 줄 알았는데, Zoom 들어오자마자 Hello~ 라고 하셔서 많이 당황했던 기억이 납니다. 앞에서 Coding/Algo나 Practical은 기술 관련 주제로만 이야기하면 돼서 나름 편하게 말할 수 있었는데, 이 면접은 제 가치관과 일상생활 속에서의 사례를 영어로 말해야 돼서 많이 힘들었습니다. 영어 단어를 몰라서 인터뷰어의 양해를 구하고 영어 사전을 찾아가면서 면접을 이어나갔습니다.

만약 떨어진다면 영어를 못해서 떨어질 것이라고 예상했지만, 면접을 본 지 일주일도 안 돼서 오퍼를 받았습니다. 네이버, 플립스터, 그리고 Quora 사이에서 많은 고민 끝에 Quora에 입사하는 것으로 결정했습니다.

여담으로, 6일 동안 플립스터 1차 면접(15:00 - 17:00), Quora 최종 면접(01:00 - 04:30), 플립스터 2차 면접(16:00 - 18:00)를 연달아서 보느라 굉장히 힘들었습니다. 그냥 학교 다니면서 수면 시간을 자유분방하게 가져가는 것은 쉬웠지만, 강제로 자유분방한 수면 패턴을 만드는 것은 굉장히 어려운 일이라는 것을 깨달았습니다.

기타

ICPC Asia Pacific Championship와 SCPC에서 수상한 덕분에 각각 화웨이와 삼성전자에서 지원 권유를 받기도 했습니다. 하지만 화웨이는 홍콩 월세가 너무 비싸서, 그리고 삼성전자는 Quora에 합격한 이후에 연락을 받아서 지원하진 않았습니다.

마무리

2023년부터 조금씩 쓰던 글을 열심히 짜맞췄더니 시제도 꼬이고 문단마다 스타일도 조금씩 다른 것 같습니다. 길다면 길고 짧다면 짧은, 글 솜씨 없는 사람이 쓴 영양가도 없는 글인데도 불구하고 끝까지 읽어주셔서 감사합니다.

PS하면서 용돈 벌겠다고 알고리즘 강의했던 경험과 문제 만들던 경험이 큰 도움이 되었습니다. 알고리즘 강의를 안 했다면 면접에서 말을 제대로 못해서 고생했을 것이고, 문제를 안 만들었다면 주변에 저에게 채용 공고가 올라온 것을 알려주고 추천해 주신 분들을 만나지 못했을 것입니다. 이 밖에도 친구들 코드 디버깅해 주거나, 노트북 배터리 아깝다고 notepad.exe에서 문제를 풀던 것과 같이 별 생각 없이 했던 사소한 행동들 또한 면접 볼 때 정말 유용했습니다.

고등학생 때 담임 선생님께서 저에게 하셨던 말씀이 아직도 기억에 남습니다. 백준이 밥 먹여주냐, 알고리즘 문제 푸는 게 취업에 도움이 되긴 하냐, 이런 말씀을 저에게 하셨고, 사실 저도 스스로 의심이 될 때가 있었습니다. 하지만 지나고 보니 둘 다 맞는 말이었고, 모든 경험은 다 어떻게든 도움이 되는 것 같았습니다.

이제는 대학교도 졸업하고 알고리즘 대회도 그만 나가게 될 텐데, 앞으로 어떤 인생이 펼쳐질지 기대가 됩니다.