본문 바로가기
My Record/나의 일상

[#경험담] 웹 개발자(SI/SM)의 경력직 이직 경험 및 후기

by 썸머워즈 2023. 1. 13.
반응형

사실 이 글은 2022년 말에 작성한 회고글을 적기 이전에 먼저 적어두고 싶었는데, 까먹고 이제야 작성하는 글이다.
내가 굳이 제목에 SI/SM 개발자라고 적은 이유는 좀 안타까운 경우들이 많이 생길까 봐 찾아볼 때 도움이 되었으면 해서 그렇게 작성하였다.

내 미천한 경험들과 생각들이 누군가에게 도움이 되기를 바라며 끄적끄적 글을 써보도록 한다.
아 참고로 SI에서 4년 차라는 경력을 가지고 있었다.

1. 재직 중 이직 준비 VS 퇴사 후 이직 준비

이직을 결심한 순간 가장 처음 걸리는 게 현재 재직 중인 회사일 것이다.
과연 재직 중에 이직 준비를 해야 하는지 아니면 퇴사 후에 이직 준비를 해야 하는지가 처음 맞닥뜨리는 선택의 순간이다.
정해진 정답이 있는 건 아니지만 이건 지극히 개인적인 이유로 선택을 해야 한다.

다른 사람의 말과 의견은 그저 참고용으로만 사용하고 현재 본인의 상황에 맞게 결정해야 한다.
나 같은 경우에는 "퇴사 후 이직 준비"를 선택하였다.
선택한 이유는 다음과 같았다.

  1. 일단 퇴사 후에도 본가에서 지내기 때문에 당장 급여가 끊기더라도 큰 무리가 없었다.
  2. 출퇴근 왕복 3시간이 시간적으로나 체력적으로나 너무 아까웠다.
  3. 재직 중에 아무 일도 안 하는 게 아니기 때문에 일하면서 준비하게 되면 이직준비에 소홀해질 것 같았다.
  4. 이직을 목표로 한 게 SI탈출하면서 서비스업으로 가려고 하기 때문에 준비할 것도 많았으며, 회사를 다니면서 쌓이는 물경력에 스트레스받을 바에야 퇴사 후에 이직에 몰입하는 게 나을 거 같았다.

일단 가장 큰 이유는 이 정도고 뭐 자잘하게 자신감이 있었다 정도? 는 굳이 추가하지 않았다. 4년 차 정도면 자신감 뿜뿜 하는 시점이라고 하기에 나 역시 그런가 보다 싶다.

이 처럼 어떤 것에 더 우선순위를 두고 현재 상황에 맞게 결정을 해야 한다 양쪽 다 장단점이 있기 때문에 나는 "스스로" 선택하였고 그 선택에 책임을 지면 된다.
지금 와서 생각이 드는 건데 아마 노선을 서비스업이 아닌 SI로 잡았다면 재직 중 이직 준비를 선택하지 않았을까 싶다.

2. 방향 정하기

모두가 같은 상황은 아니겠지만 내가 생각하는 일반적이 SI/SM은 프론트만 하거나 백앤드만 하는 개발자가 아닌 거의 모든 걸 개발자가 도맡아서 하는 환경일 것이다.
나 역시 개발뿐만 아니라 잡다한 업무를 맡아서 하였고, 개발적으로는 풀스택 개발자로 경력을 쌓았다.

하지만 시장조사를 어느 정도 해봤으면 알겠지만 프론트냐 백앤드냐 등 결국 한 분야를 선택해야 한다는 점이다.
나 같은 경우에는 "프론트 개발자"를 선택하였다.

이 방향을 정하는 것은 매우 중요한데, 면접 때 물어보는 곳이 많을 것이다.
"왜 프론트 개발자가 되기로 결심하셨나요?"
이런 질문이 날아올 것이다. 꼭 이유 있는 선택을 하기 바란다.

3. 이직 준비하기

자 이제 본격적으로 이직을 준비할 타이밍이다.
하나씩 차근차근 준비를 해보자.

3-1. 포트폴리오 및 이력서 작성하기

"개발자는 경력이 전부야"라는 말을 많이 들었을 텐데 반은 맞고 반은 틀리다고 생각된다.
물론 경력이 전부인 것은 맞다 근데 포트폴리오가 있는 지원자와 없는 지원자 중에 과연 누구에게 기회가 더 많을 것인가 라는 생각을 조금이라도 해본다면 당연히 포트폴리오가 있어야 한다는 점을 알 수 있다.

이외로 구글링을 해보면 다양한 개발자 포트폴리오가 존재하는데, 좀 참고해서 비슷하게 만들어 두던가 아니면 본인만의 포트폴리오를 만드는 것도 방법이다.

나 같은 경우에는 "노션"을 이용하였다.
notion은 대부분 많이들 알고 있을 수 있는데, 개인적으로 정리를 해두거나 하기에도 편리하고 포트폴리오를 작성하는 데 있어서도 매우 간편한다
나는 무료버전을 사용했는데 돈을 조금만 내면 개인 도메인을 받을 수 있어 그건 또 그거 나름대로 괜찮아 보인다.
노션은 실제로 현업에서도 사용하는 곳이 많기 때문에 대충이라도 써보는 것을 추천하는 바이다.

그리고 포트폴리오를 작성해 보라는 이유 중에 가장 큰 이유는 바로 자기 자신에 대해 알아야 하기 때문이다.
신입 개발자가 아닌 경력직으로 이직하는 것이기 때문에 본인의 경력과 경험을 표현하고 어필해야만 하는 것이다.
포트폴리오를 작성하면서 본인이 무엇을 경험했고, 무엇을 얻었으며, 무엇을 할 수 있는지 다시 한번 생각해 보고 정리하는 과정이 된다고 생각한다.

이력서는 포트폴리오보다 그렇게 중요하지 않다.
이력서는 그냥 채용 사이트에서 작성하는 수준으로만 준비해 두면 된다.

3-2. 루틴 및 계획 세우기

지원할 수 있는 수준으로 기본적인 조건은 갖추었으니 이제 본격적으로 계획을 세워야 할 때다. (나는 극강의 J라서 미친 듯이 세웠다.)
스스로 공부를 좀 할 줄 아는 사람들이라면 공부 계획을 세우는데 큰 문제는 없을 것이다.
무턱대고 전부 공부하는 게 아니라 본인의 무기를 강화시키고 나머진 서브로 채워나가면 된다.

예를 들어 나는 VueJS를 회사에서 사용해 봤는데, 만약 이직준비로 React만 공부한다고 생각해 보자.
과연 면접관이 React를 물어볼까? 물어보면? 공부했다고 할 것인가? 공부했다고 하면? 경력은 있는가? 등 이런 걸 알아야 한다.
실제로 공부했다고 대답했다가 인상 쓰면서 들을 필요도 없다는 듯 "아 네..."라는 대답을 들었을 때의 심정이란...

결국 우리는 경력직이고 경력 위주로 면접을 볼 것이고 본인의 무기는 경력 내에 있는 것이다.
VueJS관련한 거의 대부분의 질문을 답할 수 있어야 하고 서브로 React정도를 알아두면 금상첨화다.
이런 식으로 하나씩 채워가면서 공부를 하면 된다.

처음부터 모든 것을 계획할 순 없다.
그래서 루틴이 생기면 좋은데, 나 같은 경우에는 매주 금요일마다 차주 계획을 세웠고 매일 아침마다 회사 리스트업과 채용 정보를 찾아보았다.
채용정보 확인과 회사 리스트업은 생각보다 중요한 작업이다.

3-3. 기록하기

개발자가 스스로를 가장 잘 보여줄 수 있는 부분이 기록이다.
가장 흔하게 보여줄 수 있는 게 블로그GitHub이다.

둘 다 하면 좋겠지만 사람이 어떻게 그러겠는가, 나는 입사와 동시에 블로그를 작성해 왔기 때문에 공부를 하면서도 계속해서 블로그에 기록해 두었다.
내가 이런 것들을 경험했고, 공부했고, 이 정도의 지식을 갖고 있다는 일종의 어필이다.

그래서 블로그 혹인 깃허브 하나쯤은 작업을 하는 게 좋다.
만약 없다면 그냥 지금이라도 시작하는 것을 추천한다.

내가 기록을 해두라는 것은 지금부터 하는 것들을 기록하라는 의미도 있지만 이직을 하면서 언제 어디를 지원했고, 어디서 떨어졌고, 문제는 뭐가 나왔고, 면접에서는 무슨 질문이 나왔는데 나는 어떻게 대답했는지 이 모든 것들 역시 기록해 두라는 것이다. 그래야 피드백이 되면서 점점 더 나은 본인을 볼 수 있을 것이다.

3-4. 알고리즘 공부하기

알고리즘은 사실 필수 아닌 필수?라고 생각한다.
만약 본인이 알고리즘이 정말 쓸모없다, 수학처럼 쓰지도 않을 텐데 왜 공부해야 하는지 모르겠다고 생각한다고 해도 알고리즘은 공부를 해야 한다.

채용정보를 계속해서 서칭하고 알아보라는 이유가 있는데, 요즘은 대부분 면접을 보기 전에 코테로 사람을 거른다.
아이러니하게도 일을 잘하던 못하던 코테를 못 보면 그냥 떨어지는 것이다.

말 그대로 "기본소양"이 되어버렸다.
알고리즘의 중요성을 알고 있지만 글쎄... 아직도 잘 모르겠다.
하지만 알고리즘이 중요한 건 알기 때문에 깊게 공부하진 않더라도 기본적인 지식은 갖추고 있는 편이 좋다.
https://mine-it-record.tistory.com/category/Algorithm/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98

'Algorithm/알고리즘' 카테고리의 글 목록

신입 개발자부터 현재까지의 기록...

mine-it-record.tistory.com

내가 공부한 알고리즘 목록인데, 사실 더 많은 알고리즘을 알고 있어야 했는데 이 정도에 그친 것을 다행이라고 생각이 든다.
알고리즘은 알고 있는 게 전부가 아니라 정말 많은 문제를 풀어봐야 하기 때문에 매일매일 최소 한 문제라도 풀어보는 것을 추천한다.

우선 내 블로그에 있는 알고리즘 지식문제 풀어본 경험 정도로 따지면 어느 정도냐면,
네이버 카카오 경력직 코테는 붙을 수 있는 수준이다. (뭐 면접에서 떨어졌지만)
하지만 알아둬야 할게 네카오는 경력직 코테가 매우 쉬운 편에 속한다는 점을 잊지 말아야 한다.
그래도 이 정도 지식이면 적어도 문제를 풀 수 있는 수준이라는 것이다.

"최소한" 이 정도는 되어야 한다는 거고 이 정도로도 사실 부족하다.
알고리즘 공부는 꾸준히 정말 꾸준히 계속하는 방법뿐이나 매일 전부를 쏟을 시간이 있지 않는 이상 말이다.
알고리즘 문제를 푸는 곳은 프로그래머스, 해커랭크, 백준, 리트코드, 코딜리티 등이 있다.

3-4. 면접 준비하기

뭔 벌써 면접을 준비하냐겠지만 면접 준비도 꾸준히 해 둬야 한다.
"말"로 표현할 줄 알아야 하는 부분이라 많은 지식이 요구된다.

나 같은 경우에는 구글링을 해보면서 많은 면접 질문 리스트를 작성해 뒀었는데, 그렇게 큰 도움은 되지 않았다.
경력직 같은 경우에는 진짜 경력 위주로 많이 물어보기 때문이다.
경력 위주로 물어보면서 서로 대화해 가며 거기서 나오는 말들을 또 질문하는 식이라고 생각하면 된다.

그래도 본인이 원하는 뱡향에 맞는 적절한 수준의 지식을 갖추고 있는 게 좋다.
특히 프론트 개발자라면 기본적으로 알고 있으면 좋은 게 실행 컨텍스트, 클로저, 호이스팅, 브라우저 동작원리 등이 있다.
진짜 기본적인 지식이니까 이 정도는 언제 질문이 날라올지 모르니 꼭 알아두고 경력 위주로 준비를 해가면 된다.

CS지식? 진짜 CS지식을 달달 외워서 갔지만 신입이 아닌 이상 물어보지도 않을뿐더러 나 같은 경우에는 외워도 벼락치기로 외운 거라 까먹어서 기억도 안나더라
아 근데 "자료구조"는 어느 정도 알고 있는 게 좋다. (가끔 자료구조는 물어보더라)

4. 이직 준비 후기

진짜 나는 저런 식으로 이직을 준비했었다.
어느 수준이라면 하루에 12시간씩 공부를 하는 수준으로 준비를 했기 때문에 진짜 혼신을 다했다.

일단 이직을 성공한 입장에서 힘들었던 점과 경험했던 것들에 대해 얘기해 보자면 다음과 같이 말할 수 있을 것 같다.

  • 웹 개발자에 대한 저평가
  • 실제로 스타트업이나 서비스업에 면접을 가보면 SI/SM 개발자를 무시하고 선입견 가득한 눈으로 보는 사람들이 있다. 본인들도 SI/SM을 겪어본 게 아닐 텐데 왜 그렇게 무시하는지 모르겠다. 좀 열린 마음으로 대해주면 좋겠지만 현실은 정말 썼다.
  • 그러다 보니까 나 같은 경우에는 지원한 회사의 3분의 2 정도는 서류 탈락하였다.
  • 뒤쳐진 기술 스택
  • 진짜 나 같은 경우에는 공공 SI 출신이다 보니 아주 보수적인 개발을 해왔는데 그 상황에서 VueJS를 접한 게 기적이라고 할 수 있다. 아마 대부분에 정말 오래된 기술들로 개발을 하고 있을 것이다. (부장님 감사합니다.)
  • 낮은 연봉
  • 경력직 이직은 보통 전 직장 대비 퍼센트로 올려주기 때문에 전 직장에서 연봉이 낮으면 이직해서도 높을 수가 없다. 하지만 역시 SI는 이름 있는 SI회사가 아닌 이상에야 많은 연봉을 받지는 않을 것이다.
  • 자주 묻는 면접 질문(★) - 공통 질문 및 프론트 개발자 질문
  • 이직 사유, 경력 질문, 성공했던 사례와 실패했던 사례, 클로저, 이벤트 루프, 호이스팅, 이벤트 버블링과 캡처링, 개발을 할 때 무엇을 염두에 두고 개발을 하는가?, 프레임워크와 라이브러리 차이, 본인이 팀에서 맡은 역할은?, 성능 개선 경험이 있는지?
  • (다양한 질문 리스트를 만들어서 면접을 대비하는 것을 추천한다. 특히 경력 위주로)
  • 도움이 되었던 곳(★)
  • - 유튜브 : 면접왕 이형, 퇴사한 이형
  • - 사이트 : 전공 지식 및 기술 면접 대비, 실제로 받은 프론트엔드 개발자 질문 모음,
  • - 사실 면접 관련한 건 그냥 면접 몇 번 보고 떨어지면 익숙해지기 마련이다... 되게 다양한 사이트를 찾아보고 하긴 했는데 대부분 비슷해서 기억도 안 나고 결국 면접을 경험할수록 나아지는 본인 모습을 보게 될 것이다.
  • 아티클
  • 나는 아티클을 읽다 보면서 많은 도움이 되었는데, 평소에 생각하지 않았던 부분들에 대해 좀 더 깊게 생각하는 계기가 되었고 좀 더 내 생각에 확신을 담아 말할 수 있게 되었다.
  • 예를 들어 만약 "개발자에게 중요한 건 뭐라고 생각하나요?"라는 질문을 받았을 때 단순히 어디서 보고 따라 말하는 게 아니라 진짜 본인 생각을 말한다면 그게 더 전달력이 좋다고 생각하기 때문에 평소에도 이런 고민들을 많이 해보는 것을 추천한다.
  • 공백기간
  • 면접에 합격하기까지 총 6~7개월의 공백기간이 있었다. 이건 스스로 이겨내는 수밖에 없다. 공백기간이 길어질수록 나태해진다기보다는 자신감도 떨어지고 그냥 좀 마음이 꺾인다고 해야 할까 스스로 정신 차리지 않는다면 정말 힘들어질 것이다. 공백기간이 몇 년 되는 사람들은 진짜 대단하다 생각한다. 그걸 버티면서도 취업문을 두드린다는 행위를...
  • 지원 결과
  • 총 65곳의 회사에 지원하였고 그중 3분의 2 가량 서류탈락, 나머지 중에 3분의 2가량 시험 탈락하고 3분의 1만 면접 진행 그리고 딱 1곳 합격

주로 내 생각과 내가 어떻게 준비했는지에 대해 적어놨는데,
막막한 사람들이 봐서 도움이 되면 좋겠다. (뭐 사실 그냥 내 기록일 뿐이지만 말이다.)

그리고 정보야 구박사님에게 물어보면 대부분 알려주니 잘 이용해 보도록 하고,

다들 힘내보자.
내가 볼 때 개발자한테 중요한 건 꾸준함과 하고자 하는 욕심만 있으면 된다.

반응형


댓글

TOP