신입 개발자 이직 준비하기

이직을 결심한 때


개발자 채용을 준비하면서 수집한 정보에 의하면 개발자들이 이직을 결심하는 때는 아래와 같은 상황을 경험할 때라고 알려져 있다.

  • 유대감 없음
  • 정보 공유 없음
  • 낙후된 개발 환경
  • 개발 문화 및 철학 미비
  • 수직적인 의사 결정 구조

나의 경우에도 위에 해당하는 몇 가지 항목이 있었지만 가장 핵심적으로 불을 지핀 것은 재미였다.

개발이라면 다 재밌는 줄 알았는데 도대체 지금 하고있는 일은 왜 재미가 없는 것일까?



나는 내가 느끼는 감정에 대해서 파악하는 것을 좋아한다. 나는 왜 이러한 감정이 들었으며 나는 어떤 것을 개발할때 가장 큰 흥미를 가지는 것인지 깊이 고민하고 내 나름대로 기준을 세웠다.


이래도... 괜찮은걸까?

나는 회사에서 플랫폼 개발이라는 것을 담당하고 있었다. 우리 회사에는 스크래핑 시스템이라는 플랫폼이 있었고 그것을 개발 & 유지보수하는 것이 주요 업무였다. 정확히 말하면 처음에는 재미있었다. 금융 사이트를 스크래핑 한다는 것은 평소에 쉽게 접할 수 없었던 부분이었기에 새롭게 익히는 것이 많았다. 또한 스크래핑을 진행하기 위해서 분석 및 연구하는 것이 선행되어야 하는데 이러한 활동을 좋아하는 나에게 나름 잘 맞는 부분도 있었다.

그런데 나는 이 스크래핑이라는 행위가 내 기준에서 윤리적이지 못하다는 생각이 자주 들곤 하였다. 회사의 영향력이 커지기 전까지는 어쩔 수 없이 행해야 할 방식이고, 누군가에게는 꼭 필요한 정보라는 사실은 큰 동기가 되면서도, 또 누가 내 서비스를 이렇게 스크래핑한다면 어떨까에 대한 생각을 들면 또 마음이 바뀌었다.

그렇게 낮에는 스크래핑에 대해서, 밤에는 안티 스크래핑에 대해서 생각하는 날이 많아졌다. 회사에서 익힌 스크래핑 방식을 집에 오면 어떻게 막을 수 있을지 고민하는 인지부조화가 반복되면서 일이 재미없어졌다. 열심히 했는데 이게 악의적인 행위라는 생각이 떨쳐지지 않았기 때문이다.

다행이었다. 내가 이러한 유형의 개발을 좋아하지 않는다는 것을 깨달았으니 말이다. 그렇다면 나는 어떤 유형의 개발을 가장 좋아하는 것일까? 여러모로 고민하다가 나는 과거의 나로부터 내가 어떤 것에 흥미가 있는지 알게 되었다. 나는 무언가를 창작하는 것에 큰 흥미를 느낀다는 것을 깨달았다. 특히 시각적인 구현이 이뤄지는 활동말이다. 프론트엔드 개발을 해야겠다.


이직은 타이밍


이직은 언제부터 준비해야 하는가? 혹자는 회사를 다니면서 해야 한다고 한다. 몸 값을 더 올리기 위한 하나의 방법이기도 하거니와 회사를 그만두고 준비하는 것은 리스크가 너무 크기 때문이다. 막상 회사를 다녀보니 회사를 다니면서 어떻게 이직 준비를 한다는 것인지 모르겠다. 이직을 준비하면서 일한다는게 참 쉽지 않았다. 직무를 전환하는 것을 계획했기 때문에 특히 그랬던 것 같다.

결국은 리스크를 안고 퇴사를 결정하고 이직을 준비하게 되었다. 마침 당시 네이버 파이낸셜에서 프론트엔드 개발자를 모집하고 있어서 잘만된다면 자연스러운 이직이 가능할지도 모르겠다는 희망이 들었다.


행복회로 풀가동


네이버 파이낸셜

세부적인 내용을 공개하는 것은 문제가 될 수 있으므로 공개되어 있는 정보들에 대해서 느낀것을 작성하도록 하겠다. 챌린지는 프로그래머스에서 진행되었다. 백엔드 개발자와는 다르게 프론트엔드 개발자는 1차, 2차 코딩테스트가 모두 과제테스트로 이뤄졌다.

1차 과제 (2021. 10. 30)

2시간 이내에 바닐라 자바스크립트를 이용해서 요구사항을 구현하는 과제였다. 생각보다 난이도가 낮다고 생각되었다. 관련된 작업을 이미 해본 경험이 있었기 때문에 수월하게 느껴진 것인지도 모르겠다.

2차 과제 (2021. 11. 06)

1차 과제에 대한 합격 발표는 일주일 뒤에 이뤄졌으며 2차 과제는 4시간 이내에 리액트를 이용해서 요구사항을 구현하는 과제였다. 과제가 정확하게 뭐였는지 기억이 안난다. 리액트를 안다면 어느정도 쉽게 풀 수 있었던 것으로 기억된다. 유일하게 남아있는 기억은 결과 발표가 엄청나게 지연되었던 것이다. 결과 발표는 대략 3주 뒤에 이뤄졌다.

1차 면접 (2021. 12. 28)

과제 테스트 이후 약 1달 반 뒤에 면접이 이뤄졌다. 이 시점에는 이미 회사를 퇴사해서 전형을 진행하는 상황이었다. 시간이 널널해서 관련된 책을 보거나 면접질문에 대해서 공부를 할 시간이 많았다. 다른 사람들의 면접 후기를 찾아보고 공통된 질문들(CS, FE)을 정리했다. 내 자소서에서 질문이 나올 수 있는 것들을 정리한 후 나만의 답을 준비해서 면접에 참여하였다.

  • 신입 개발자 기술면접 준비하기 · BLEX @baealex #

자바스크립트에 대한 질문이나 면접 중간에 이뤄지는 페어 프로그래밍에서는 비교적 잘했다고 회상된다. 그러나 네트워크에 대한 깊은 이해와 운영체재에 대한 CS 지식은 여전히 많이 부족하다는 것을 느꼈다. (지금도 잘 모르는 것은 비밀)

자소서와 관련된 이야기를 나눌 때 인상 깊었던 부분은 면접관 분들이 내가 혼자서 일하는 것에 익숙해진 것을 염려하였다는 것이다. 확실히 포트폴리오를 준비할 때도 그랬고 이전 회사에서 일할때도 그랬고 나는 혼자 하는것에 익숙해져 있었다.

나는 내 포트폴리오에 항상 자신이 있었는데 이러한 지적은 내게 큰 인상을 남겼다. 하지만 직접적으로 들으니 좋았다. 내 나름대로 이유를 설명할 수 있는 기회가 주어진 것이었고, 협업의 중요성을 인식하는 계기가 되었다. (나는 협업을 싫어하는 사람은 아니다.)

면접에서 대답을 못한 질문이 있다는 것은 약간의 아쉬움을 남겼지만 진행 과정에서 긍정적인 느낌을 많이 받았고 준비한 것은 다 보여준 느낌이라 만족스러운 느낌이었다.

최종 면접 (2022. 01. 05)

1차 면접도 무사하게 합격되어서 2차 면접을 준비하게 되었다. 그런데 2차 면접에서는 어떤 질문이 나올지 전혀 예측이 안되었다. 후기를 찾아봐도 사람마다 다르다고 하더라. 그래서 1차 면접에서 대답하지 못했던 질문에 대해서 정리하는 시간을 가졌다.

면접이 진행되었는데 내가 준비한 것은 대부분 질문되지 않았고, 굉장히 예상밖의 질문들이 많았다. 이전 회사에서 한 일들에 대해서 설명하는 질문, 어려움에 대해서 극복한 질문 외에는 제대로 대답한 것이 많지 않았다. 진행하면서 오... 이거 망했는데? 라는 생각이 들었다. 설상가상 인터넷도 끊어지는 최악의 상황이 발생하니 힘이 빠졌다. 장장 2개월을 준비했던 것이 이렇게 끝나버리니 많이 아쉬웠다.

그렇게 백수가 되었다.



데브매칭

시간이 흘러 프로그래머스 프론트엔드 상반기 데브매칭이 열렸다. 과제 테스트로 시험을 한 번 보고 여러곳에 지원할 수 있는 훌륭한 시스템이다. 마치 대학 입시를 준비하는 듯한 느낌이었다. 나는 당근마켓과 토스, 그렙(프로그래머스) 이렇게 세 회사에 지원했다.

이전 회사를 다니면서 느낀 또 하나는 내가 사용하는 서비스의 개발에 참여하고 싶다는 것이었다. 내가 사용하는 서비스는 실질적으로 내가 느끼는 불편함이기에 이를 해결하는 서비스를 만들어야 공감대가 느껴질 것이라 생각되었기 때문이다.

과제 테스트

내가 본 테스트는 프로그래밍 언어 검색이었다. 프로그래머스의 다른 과제테스트 문제를 한번씩 풀어봤다면 크게 어렵지 않게 구현이 가능할거라 생각된다. 나는 우선 요구사항에 맞게 돌아가게 만든 다음 요구사항 문서를 읽으면서 세세하게 고쳐나갔다. 기본 요구사항과 추가 요구사항 전부 만들어서 좋은 결과를 기다리고 있었다.

결과 발표

다행이 지원한 세 회사에 모두 합격하였지만 이제 시작이었다. 당근마켓의 경우에는 3번의 면접, 토스는 1번의 과제테스트와 2번의 면접이 남아있었다. 그렙은 1번의 면접(코딩테스트, 면접 통합)이 남아있었다. 발표 및 전형 진행 순서는 그렙 > 토스 > 당근마켓 순서였다. 그렙의 면접이 가장 빨리 잡혔기에 면접을 준비했다.


그렙

라이브 코딩테스트

처음에는 라이브 코딩테스트를 40분 동안 진행하였다. 깨지고 있는 테스트 코드가 주어지고 이 테스트 코드가 통과하도록 해결하는 테스트이다. 모르는 부분이 있으면 언제든 이야기하라고 한다. 문제해결 능력과 더불어 커뮤니케이션과 관련된 역량을 보려는 목적으로 보인다. 네이버 파이낸셜의 면접에서 진행된 방식과 유사한 형태라서 크게 어색함을 느끼지 않고 진행할 수 있었다.

기술 면접

코딩테스트 종료 후 10분의 휴식이 주어지고 면접이 40분간 진행되었다. 40분 동안 초반에는 기술면접이 후반에는 인성면접이 이뤄졌다.

기술면접에서는 CS에 대한 질문은 거의 나오지 않았고 FE와 관련된 질문이 주를 이루었다. FE의 심층적인 부분에 대해서 물어보는 질문도 있었다. 심층적인 부분에서는 제대로 대답을 잘 못해서 아쉬웠다. 프론트엔드의 표면적인 부분만 다루고 있었구나라는 반성을 하게 되었다. 그래도 다행이 자바스크립트 관련 질문에 대해서는 준비한 만큼 잘 설명할 수 있었다.

인성 면접

인성면접에서는 이전 회사의 경험에 대한 질문과 자기소개서에 쓰여진 내용을 바탕으로 질문해 주셨다. 자소서를 나름 진지하게 쓴 것이라 자세하게 설명드릴 수 있었다. 내가 한 대답에서 더 깊은 질문이 이어졌다. 나는 사용자에게 긍정적이고 영감을 줄 수 있는 서비스를 만드는 것을 추구하며, 개발을 좋아한다고 어필했기 때문에 이에 관련된 질문이 주로 많았다.

면접을 마치고 왠지모를 아쉬움에 안절부절하는 중이었는데, 당일에 합격 발표가 이뤄졌다. 이후 처우 협의와 입사 일정에 대한 논의가 진행되었다. 만족스러운 처우였고 (특히 풀 리모트 근무) 면접에서의 긍정적인 커뮤니케이션 경험, 빠른 채용 진행도 좋은 느낌을 주었다. 돌이켜보면 이직 준비를 모두 프로그래머스를 통해서 진행하게 되었는데, 전부 긍정적인 경험으로 남았기에 내가 추구하는 서비스와 결이 맞다고 느껴져 입사를 결정하였다.

다른데도 면접은 볼 것을 하는 아쉬움이 남긴한다. 모두 경험치가 되는 것인데 말이다.


고군분투는 계속


이 글은 개발자 지망생의 고군분투 시리즈의 마지막 글인 첫 출근을 준비하는 자세를 읽다가 문득 작년을 회고하는 마음으로 이직한 과정에 대한 글을 남기고 싶어서 작성하였다. 이렇게 첫 출근을 준비하던 개발자 지망생은 어느덧 새로운 회사로 출근하고 있다.

첫 회사를 다니면서 깨달은 것. 취업은 끝이 아니라 시작이다. 개발자가 되는 것에 집중할 것이 아니라 어떤 개발자가 될 것인가에 집중해야 한다. 그래야 개발자가 된 다음의 계획을 빠르게 세울 수 있다. 내가 취업을 준비하면서 간과한 부분이다. 나는 더 이상 개발자 지망생은 아니지만 고군분투는 계속된다. 계획은 계속되어야 한다.

정리하다보니 올해에는 이직을 준비하면서 느꼈던 나의 부족한 점들을 채울 수 있는 사람이 되어야 겠다는 생각이 든다. 컴퓨터에 대한 명확한 이해와, 프론트엔드 분야의 아키텍쳐를 올바르게 이해하고 다루는 능력을 배양하는 사람이 되어야겠다.

이 글이 도움이 되었나요?

0 minutes ago
작성된 댓글이 없습니다. 첫 댓글을 달아보세요!
    댓글을 작성하려면 로그인이 필요합니다.