Skip to main content

4년 차 개발자의 SI 대기업 이직기 ① 이직 결심부터 코딩테스트까지

About 1 minCareerTipsArticle(s)blogyozm.wishket.comcareertips

4년 차 개발자의 SI 대기업 이직기 ① 이직 결심부터 코딩테스트까지 관련

Career > Article(s)

Article(s)

4년 차 개발자의 SI 대기업 이직기 ① 이직 결심부터 코딩테스트까지 (1) | 요즘IT
'저 이직해요.' 전 회사에 이직을 알린 순간부터 현재 회사로 옮겨 n년째 재직 중인 지금까지, 이직에 대한 질문을 많이 받습니다. 생각보다 이직에 관심 있는 사람도, 실제로 준비하는 사람도 많다는 것을 알게 되었죠. 제가 이직을 준비할 때는 주변에 이직을 경험한 친한 선배가 없어 어려움을 겪었습니다. 그래서 구글링으로 다른 사람은 어떻게 준비하고 있는지 하나하나 찾아보고 참고해야 했습니다. 그럴 때마다 이직을 경험해 본 사람이 A부터 Z까지 정리해 줬으면 좋겠다는 생각을 많이 했습니다. 이번 기회에 제가 자주 받은 질문을 중심으로 제 경험을 직접 정리해 보고자 합니다.

“저 이직해요.”

전 회사에 이직을 알린 순간부터 현재 회사로 옮겨 n년째 재직 중인 지금까지, 이직에 대한 질문을 많이 받습니다. 생각보다 이직에 관심 있는 사람도, 실제로 준비하는 사람도 많다는 것을 알게 되었죠.

제가 이직을 준비할 때는 주변에 이직을 경험한 친한 선배가 없어 어려움을 겪었습니다. 그래서 구글링으로 다른 사람은 어떻게 준비하고 있는지 하나하나 찾아보고 참고해야 했습니다. 그럴 때마다 이직을 경험해 본 사람이 A부터 Z까지 정리해 줬으면 좋겠다는 생각을 많이 했습니다. 이번 기회에 제가 자주 받은 질문을 중심으로 제 경험을 직접 정리해 보고자 합니다.

두 편을 시리즈로 준비했고, 이번 글에서는 이직을 결심하는 것부터 면접 전, 즉 서류와 코딩테스트까지 과정을 다룰 예정입니다.

이직을 준비하는 이유 정리하기

이직을 고려할 때 가장 먼저 할 일은 이직을 떠올리게 한 원인을 정리하는 일입니다. 힘들었던 감정은 언젠가 잊히기 마련입니다. 미리 이유를 정리하며 각오를 다져야만, 힘겨운 이직 과정에서 ‘그래도 포기할 수 없다!’라는 원동력을 얻을 수 있습니다.

이직을 준비하는 데에는 다양한 이유가 있습니다. 이를 찾으려면 스트레스를 크게 받는 상황에서 “왜?”라는 의문을 던지는 것이 가장 좋습니다. 왜 스트레스를 받았는지 돌이켜보면, 이직하려는 이유를 쉽게 정리할 수 있죠. 제가 이직을 생각한 이유는 크게 다섯 가지입니다. 회사를 다니며 불편하거나 스트레스받은 순간을 정리하다 보니 자연스레 도출할 수 있었죠.

1. 네임밸류

대학 동기들과 모여 회사 얘기를 할 때면, 괜히 위축되는 순간들이 있었습니다. 이름난 기업에서 자부심을 가지고 일한다는 동기들이 부러웠습니다. 그에 비해 저는 입을 닫고만 있었고요. 명절 때 친척 어른들 사이에서 제 회사 사정이 입방아에 오를 때면 어딘가로 숨고 싶다고 생각하기도 했습니다. 이러한 상황들이 쌓이다 보니 자연스럽게 이직을 생각하게 되었습니다.

2. 낮은 연봉

‘블라인드’에서는 동종 업계 연봉을 쉽게 접할 수 있었습니다. 상위권 회사들은 초봉만 천만 원 넘게 차이 나는 곳도 나타났습니다. 연봉 인상률마저 더 높았죠. 같은 일을 하는 비슷한 연차의 사람들이 더 높은 초봉으로 시작해, 매년 더 많이 오르다 보면 벌어질 연봉 격차를 체감했습니다. 제 일에 대한 회의감과 동시에 이직하려는 마음을 확고히 할 수 있었습니다.

3. 성장 기회 부족

당시 운영하던 시스템은 ASP 기반으로 매우 노후화된 상태였습니다. ASP는 신규 프로젝트에는 거의 쓰이지 않는 오래된 언어입니다. 또한, 20년 이상 쓰여온 시스템은 안정적이어서 개발 요청도 많이 들어오지 않았습니다. 사용법에 대한 문의 전화를 받고 있으면 ‘여기서 이런 전화를 받으려고 그 많은 교육을 받고 힘들게 취업했을까?’ 같은 불만이 생겼습니다. 외부에서는 리액트(React)나 뷰(Vue.js)를 활용해 신규 프로젝트를 진행하는 것이 일반적이었습니다. 회사에서는 현재 시스템에서 그런 기술을 사용할 일이 없다며 교육조차 보내주지 않았죠. 그럴 때면 스트레스를 크게 받았습니다.

4. 사내 문화

전직장은 자유롭게 의견을 나누기보다 직급과 연차가 높은 사람이 주로 의견을 내고 이를 따르는 분위기였습니다. 특히 당시 제 상사는 모든 업무를 마이크로매니징하는 스타일이었습니다. 메일 하나를 보낼 때도 옆에 앉아 인사말부터 표에 들어가는 색까지 정해주었죠. 그 상사에게 신뢰를 얻지 못해서 그런 건지 스스로를 의심한 적도 있었습니다. 그러나 시간이 지나다 보니 그의 성향이 평균보다 불안감이 높은 타입이라는 것을 알게 되었습니다. 연차가 쌓일수록 그런 간섭은 더욱 불필요하다고 느껴졌죠. 이처럼 비효율적인 관습을 고수하는 회사를 떠나고 싶었습니다.

5. 근무지

근무지는 집에서 버스와 지하철을 타고 1시간 이상 걸리는 곳이었습니다. 출퇴근하며 대중교통에서 체력을 많이 소비하는 것은 물론이고, 근무지 근처로 가는 버스가 일찍 끊긴다는 단점도 있었습니다. 밤늦게 야근할 때는 버스가 없어 택시를 이용해야 했기 때문에, 야근이 잦은 기간에는 택시비가 부담되었습니다.


가고 싶은 회사 정하기

이처럼 이직을 준비하는 이유를 도출했다면, 이를 보완할 회사를 찾아야 합니다. 저는 이러한 이유에 우선순위를 매겼습니다. 1번에서 3번까지 항목은 무조건 충족해야 하는 요소, 4번과 5번은 부가 요소로 두었습니다. 무엇보다 이직으로 가장 보완하고 싶었던 것은 성장입니다. 부족한 기회와 20년 이상 노후화된 레거시 시스템을 떠나고 싶었죠.

처음에는 막연하게 전형적인 IT기업이라 생각한 ‘네카라쿠배’에 지원했습니다. 그러나 주로 SM을 맡았던 경험 때문인지, 서류부터 떨어지며 좌절을 겪었습니다. 다시 한번 이직을 준비하는 사유를 되짚어보기로 했습니다. 이직 사유 1, 2, 3번에 부합하는 것을 구체적으로 만드니 아래와 같은 조건이 나왔습니다.

  1. 부모님이 좋아하는 회사
  2. 연봉 협상이 제때 이루어지며, 매년 합리적인 인상률과 성과급을 제공하는 회사
  3. 성장을 위한 교육 기회가 충분히 주어지고 배울 점 있는 선배들이 많은 회사

이 조건으로 다시 기업을 탐색하니, 더 많은 회사가 눈에 들어왔습니다. 생각의 폭을 넓혀 세 가지 조건에 들어맞는 SI 대기업에도 지원하기 시작했습니다.

헤드헌터와 함께 준비하기

그 과정에서 헤드헌터에게 스카우트 제안을 받기도 했습니다. ‘리멤버’라는 앱에 올린 이력을 봤다고 연락을 받았습니다. 헤드헌터와 함께하다 보니 이력 사항의 부족한 부분을 보완할 수도 있었고, 생각지도 못한 회사에서 괜찮은 조건으로 제의를 받기도 했습니다. 이직을 처음 경험한 입장으로서 전문가가 이를 조율해 주니 편하게 느껴졌습니다. 물론 헤드헌터한테 제의받은 회사에 최종 입사하지는 않았지만, 이런 채용 앱에 이력을 올려 헤드헌터와 함께 하는 것도 괜찮은 방법으로 보입니다. 저는 헤드헌터와 아래 순서로 함께 했습니다.

1) 헤드헌터의 연락

“안녕하세요. 올려 두신 이력 사항이 A사의 B포지션에 잘 맞을 것 같아 추천해 드립니다.

  • 서비스 소개 : 해당 서비스는… .
  • 수행 업무: 플랫폼 개발…
  • 필수 자격 조건: 4년 이상 개발 경험…
  • 근무지: 서울 강남

제안 내용 확인하시고 첨부파일의 경력 기술서 작성하여 X일까지 회신 부탁드립니다.”

2) ‘나’가 경력 기술서를 작성해 회신

3) 헤드헌터의 피드백

“적어주신 경력 중에서 C 프로젝트의 업무가 A사의 우대 조건과 일치하는 것 같은데, 해당 부분 더 자세하게 어떤 업무에서 어떤 성과를 냈는지 기술해 주실 수 있나요?”

4) ‘나’가 피드백에 따라 보완한 경력 기술서를 회신

5) 헤드헌터의 결과 안내

“지원했던 결과가 나와서 연락드립니다. 서류 합격하여 면접 전형을 진행하기로 했습니다. X월 X일에 1차 면접이고 C 프로젝트 내용으로 어필하시면 좋을 것 같습니다. 해당 회사는 1차 면접에서 높은 점수를 받으면 2차 면접을 생략하기도 하니 참고하세요.”


채용 절차 이해하기

이직할 회사 후보를 정했다면, 이직 프로세스를 이해할 차례입니다. 개발 직군 경력 사원 채용은 보통 다음 순서로 이뤄졌습니다.

서류 전형 → 코딩테스트 → 1차 면접 → 2차 면접 → 연봉 협상 & 입사 날짜 협의 → 최종 합격

회사에 따라 코딩테스트를 생략하기도 합니다. 또 면접 과정에서 직접 코드를 구현하는 라이브 코딩 형식 면접이 진행되기도 합니다. 회사마다 채용 절차가 천차만별이므로 지원 과정에서 이를 확인하는 것이 좋습니다.


경력 기술서와 포트폴리오 만들기

경력 기술서 작성하기

서류 전형에서는 대다수 기업이 경력 기술서와 포트폴리오를 요구합니다. 직접 작성하다 보면 느끼겠지만, 3~4년 전 내가 한 일을 생각해 내는 것은 쉬운 일이 아닙니다. ‘그 프로젝트에 투입된 건 기억나는데… 내가 거기서 뭘 했더라?’ 머리를 뜯으며 고민했던 적이 한두 번이 아닙니다.

저는 회사에 다니며 이직을 준비했는데요, 개인 컴퓨터로 당시 작성한 문서들을 보며 어떤 업무를 했는지 정리했습니다. 만약 퇴사하고 이직을 준비하는 분은 퇴사 전, 미리 내가 참여한 프로젝트와 업무 기록을 정리해 두시기 바랍니다. 이처럼 문서와 기억을 더듬어 주요 프로젝트와 당시 맡은 업무를 최대한 상세하게 기술했습니다. 이를 바탕으로 제출용 경력 기술서를 작성했습니다.

경력 기술서 <출처: 작가>
경력 기술서 <출처: 작가>

포트폴리오 제작하기

이러한 경력 기술서를 뒷받침하는 실력을 보여주고자 GitHub를 이용해 포트폴리오 웹페이지도 생성했습니다. 아래는 제가 직접 만든 포트폴리오 페이지의 홈 화면입니다.

포트폴리오 웹 페이지 <출처: 작가>
포트폴리오 웹 페이지 <출처: 작가>

포트폴리오는 크게 ‘HOME, ABOUT, EXPERIENCE, PROJECTS, BLOG, CONTACT’로 구성했습니다. HOME 화면에서는 ‘나’라는 사람을 몇 가지 키워드로 소개하며, 다른 페이지에서 다룰 이력을 요약해 보여줬습니다. ABOUT에는 간단한 이력 사항과 교육 이수 사항, EXPERIENCE에는 업무 수행 경험을 기술했습니다.

PROJECTS에서는 참여한 프로젝트에 대한 상세 설명과 프로젝트 결과물을 실제 화면으로 보여 주었습니다. 이처럼 경력 기술서와 달리 산출물의 실제 동작을 보여줄 수 있다는 점이 포트폴리오의 장점입니다. 물론 회사 내에서 진행한 프로젝트는 보안상 공개할 수 없었으므로, 포트폴리오에서 동작하는 화면은 주로 토이 프로젝트나 사이드 프로젝트 결과물 위주로 넣었습니다.

또한 BLOG 카테고리를 따로 만들어 GitHub와 티스토리 주소를 첨부했습니다. 어떤 공부를 얼마나 꾸준히 해왔는지 인사담당자가 직접 확인할 수 있게 했죠. 마지막으로 CONTACT에는 전화번호를 남기고, 메일 전송 기능도 추가했습니다. 포트폴리오를 보고 관심 있는 사람이 바로 제게 메일을 보내도록 만들었습니다.

자기소개서 쓰기

경력직 자기소개서 문항은 신입 공채 자기소개서에 비해 간소합니다. 주로 지원 동기, 성격의 장/단점, 프로젝트에서 어려웠던 경험과 극복 사례 등 기본적인 문항 위주입니다.

가장 중요한 문항은 지원 동기입니다. 어떤 이유로 이직을 준비하는지, 이 회사의 무엇을 보고 지원하는지가 드러나기 때문이죠. 지원 동기를 작성할 때 참고할 팁을 정리해 봤습니다.

1. 지금 다니는 회사에 대한 부정적인 태도는 금물

지금 다니는 회사에 대해 불만을 늘어놓으면 부정적인 이미지를 줄 수 있습니다. 물론 지금 회사에 분명 안 좋은 점이 있으니 이직을 준비하는 거겠죠. 그러나 상사, 복지 등에 대한 불만은 다른 회사를 가도 충분히 생길법한 문제입니다. 서류 검토 담당자에게 이 지원자가 입사한 다음, 비슷한 문제로 금방 이직할 수 있겠다는 인상을 줄지도 모릅니다.

2. 연봉보다는 성장을 강조

앞서 말한 이유 가운데 연봉이나 네임벨류는 충분히 중요한 이직 사유지만, 가벼운 이미지를 줄 수 있습니다. 그보다는 직무 전문성 증가나 커리어 성장과 같은 이유를 드는 것이 좋습니다. 지원하는 회사가 현재 다니는 회사보다 규모가 크다면, 이를 지원 동기로 쓰는 것도 좋은 방법입니다. 저도 이직을 지원한 회사가 더 큰 규모였는데요, 당시 하던 업무보다 더 높은 수준의 업무를 경험하며 넓은 필드에서 성장하고 싶다는 점을 이직 사유로 들었습니다.

3. 앞으로 맡을 업무와 나의 전문성을 연계

경력직 채용의 경우에는 공고의 소개란에서부터 앞으로 맡을 업무를 상세하게 기술하고 있습니다. 따라서 그 사업을 조사한 다음, 앞으로 유망한 사업임을 인지하고 있다는 부분을 알리는 것이 좋습니다. 사업에 대한 관심을 보이면, 입사하고 나서도 해당 직무에 몰입해 성과를 보여줄 수 있는 인재라고 느낄 것입니다.


알고리즘 공부로 코딩테스트 대비하기

코딩테스트는 지원자의 코딩 실력을 확인하기 위한 절차입니다. 처음에는 코딩테스트를 준비하지 않고 지원했다가 곧바로 탈락했습니다. 알고리즘에 대한 이해가 부족하다는 것을 느꼈죠. 그러나 취준생 때처럼 코딩테스트에 많은 시간을 할애할 수는 없었습니다. 퇴근 후에도 효율적으로 학습할 방법을 생각하다 인프런에서 코딩테스트 강의를 구매했습니다. 강의자가 코딩테스트에 자주 나오는 알고리즘을 설명하고 문제 풀이 방법까지 제시해 주더군요. 알고리즘에 대한 기억이 희미하거나 코딩테스트의 감을 잡고 싶을 때는 강의를 구매하는 것도 좋은 방법입니다.

이직 과정에서 여러 코딩테스트에 응시해 본 결과, 대부분 문제는 프로그래머스 레벨 1~3 수준으로 나왔습니다. 처음에는 1레벨도 힘들었지만, 문제를 풀수록 레벨이 올라갔습니다. 이처럼 코딩테스트는 꾸준히 준비하는 것이 중요합니다. 저도 준비 과정에서 GitHub에 1일 1커밋을 하려고 노력했습니다. ‘TIL(Today I Learned)’이라는 레포지토리를 생성하고, 하루에 하나라도 공부하고 이를 커밋했습니다. 이를 보통 “잔디를 심는다”고 하는데요, 저 역시 빽빽한 잔디를 심기 위해 노력했습니다.

GitHub 잔디 <출처: 작가>
GitHub 잔디 <출처: 작가>

지원 초반에는 코딩테스트에서 자주 탈락의 고배를 마셨습니다. 그러나 공부를 하면 할수록 코딩 테스트의 합격률이 올랐습니다. 최종 합격쯤에는 지원한 회사의 모든 코딩테스트를 합격할 수 있었죠.


마치며

지금까지 SI 기업의 경력직 이직을 위해 준비했던 내용을 면접 전까지 기술해 보았습니다. 실제 준비는 2년 전에 이뤄졌기 때문에 어느 정도 달라진 부분이 있을지도 모르겠습니다. 당시 SI 회사 채용 절차에서 코딩 테스트의 난이도가 평이한 수준으로 변하던 추세였는데요, 어쩌면 지금은 아예 없어진 곳도 있을 것 같습니다.

다음 글에서는 면접과 최종 합격 이후 과정과 경력직으로 입사하고 느낀 장, 단점을 다뤄보고자 합니다. 이것 역시 이직의 일부라고 생각했기 때문입니다. 이직 준비는 생각보다 쉬운 과정이 아닙니다. 가벼운 마음으로 시작하면 포기하는 경우가 많은 만큼, 잘 아는 것이 힘이라고 느낍니다. 제 경험이 여러분의 이직 준비에 도움이 되길 바랍니다.


이찬희 (MarkiiimarK)
Never Stop Learning.