ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 주니어 개발자의 2020년 회고
    ETC 2021. 1. 4. 15:28

     

    벌써 2020년이 빠르게 지나갔다. 다니던 스타트업을 그만 두고 3월부터 본격적으로 취준을 시작해서, 입사까지 딱 1년이 걸린 것 같다.

     

    Notion에 기록한 첫 취업 준비 시작

    이런저런 일도 많고 다양한 선택의 기로에서 비록 후회 없는 선택을 하는것은 매우 힘든 일이었지만, 어쨌든 하나의 경험이니 기록으로 2020 a to z를 남기고자 한다.

     

    취업 준비

    인생에 있어서 가장 큰 변화를 가져온 선택이었다. 기존에 다니고 있던 스타트업을 아예 퇴사하고 0부터 시작하는 마음으로 취업 준비를 시작했기 때문이다. 서울이 연고지가 아니었을 뿐더러 일정한 소득이 없이 준비를 해야한다는 불안감도 있었고, 언제 다시 취업할지 모른다는 가장 큰 두려움이 존재했다. 이후 퇴사(1월 말) 정확히 1주일 뒤에 코로나가 심각하게 확산되어 상반기에 꽤나 피눈물을 흘렸던 기억이 난다. 돌아보면 잘 한 선택이었지만..

     

    퇴사는 2월 초였다. 본격적인 전공 관련 취업 준비를 이때부터 하지는 않았던 것 같다. 사실 별 위기의식 없이 놀고 쉬었다.

     

    a. TOEIC SPEAKING

    사실 개발자에게 영어 자격증은 무의미하다라고 말씀하시는 분들도 많고, 심지어 나는 정보처리기사 자격증도 아직 가지고 있지 않다. (필기만 따놓은 상태..) 하지만 영어 자격증이 없어서 서류 지원을 하지 못하는 일이 생기고 싶지는 않았다. 정말 만약을 대비하여 2주 정도를 토스를 준비하여 운이 좋게 Level 7을 취득했다. 정말 운이 좋았던 것 같다. 오픽이냐 토스냐 아직까지도 사람들마다 말이 많지만, 오픽은 토스에 비해서 상대적으로 시험 시간이 길었기 때문에, 기본 템플릿만 암기를 해서 응용할 수 있었고, 시험 시간도 15분이었기 때문에 빠르게 시험을 볼 수 있는 토스를 선택했다. 이건 정말 본인 자유인 것 같다.

     

     

    b. Algorithm

    알고리즘은 취업 준비를 하면서 가장 힘들었고 정말 제일 중요한 부분이라고 생각이 되었다. 분명 컴퓨터공학을 전공했음에도 불구하고 알고리즘을 3학년 필수 전공 이수 이후로 손을 대지 않았기 때문에.. 기초부터 다시 채운 부분이다. 꽤나 고생을 했던 기억이 있다.

    공부를 하면서 느꼈던 것은, 정말 꾸준함이 중요하다고 생각이 되었다. 위에 첨부했던 3월 9일부터 5월 22일까지 하루에 최소 3문제를 목표로 설정했던 기억이 난다. 어려운 문제를 푼 날이나 쉬운 문제를 푼 날에는 조금 더 유동적으로 문제 갯수를 조절했다.

     

     

    바킹독님의 알고리즘 실전 강의

     

    '강좌/실전 알고리즘' 카테고리의 글 목록

     

    blog.encrypted.gg

    바킹독님의 알고리즘 실전 강의가 정말정말정말 큰 도움이 되었다.

    1. 전공을 하였기 때문에 애매하게 코드는 짤 줄 아는 c++ 사용자

    2. PS에 쓰이는 단골 알고리즘들은 들어만 봤지 스스로 해결하지 못하는 정도의 실력

    이었다. 기초를 튼튼히 하고자 하루에 한-두개의 강좌씩 공부를 하고, 백준 문제집을 활용하여 아는 내용이어도 다시 체크를 하며 공부했다.

     

    또, 항상 알고리즘 공부 방법을 찾아보면 단골 내용들이 있다.

    1. 30분-1시간 정도는 스스로 풀어보려고 노력하자

    2. 다른 사람들의 코드를 자주 보자

     

    1번의 시간은 각자 유동적으로 가져가는것이 좋은 해답인 것 같다. 애매하게 풀릴 것 같은데 풀리지 않은 문제들은 2시간도 넘게 봤던 기억이 있다. 다른 사람들의 코드를 보는 습관도 최대한 가지려 했으며, 풀었던 코드이지만 100% 자신감을 가지지 못할 때에는 

    아이패드를 이용했다.

    이런식으로 코드를 한번 더 읽을 겸 손으로 내용들을 써가며 공부했다. 사실 아직도 카카오 코딩테스트를 5개 다 풀정도의 능력은 되지 않지만, 다른 회사라면 어느정도 풀 실력은 만들었던 것 같다.

    알고리즘은 꾸준한게 최고다.

     

    github에 커밋할 겸 꾸준히 repository를 생성하여 올렸다. 나중엔 나름 뿌듯한 결과물이 된다.

     

     

    kimyuuum/algorithm-study

    Algorithm step-by-step . Contribute to kimyuuum/algorithm-study development by creating an account on GitHub.

    github.com

     

    c. 면접 준비

    알고리즘을 꾸준히 해서 서류 통과를 할 경우, 면접을 보게 된다. 취업 준비 기간동안 많은 곳의 면접을 본 경험은 없다. 총 세개 정도의 기업 면접을 봤다. 상반기동안 N사의 계열사, 이커머스 기업 W, SK 그룹사중 하나 이렇게 총 세 회사의 면접을 진행했다. 운이 좋게 세개의 면접 모두 다 최종까지 합격을 했다.

     

    아, 또한 작년 하반기에 봤던 11번가 면접이 스스로 매우 도움이 되었다. 떨어졌지만, 첫 기술면접을 2:1 40분 압박면접을 진행하였기 때문에 여기서 면접관분들이 중요하게 생각하는 포인트를 많이 캐치할 수 있었다. 면접도 많이 볼 수록 좋다는 말에 100번 공감한다.

     

    알고리즘은 앞서 말했으니 디폴트로 삼고, 크게 두 가지 결로 면접 준비를 나눌 수 있었다.

     

    Computer Science

    전공 기초는 면접을 보며 가장 중요한 요소중 하나였다. 매번 세미나 Q&A때 신입에게 바라는 역량들에 대한 답변은 'Computer Science'였다. 과거의 나 또한 '대체 저 광범위한 지식을 어디서부터 어디까지 보라는거야..;' 라는 속마음을 가지고 있었다.

    답은, 중요하고 필수적인건 다 보면 된다. 그냥 하면 된다.

     

    크게 7가지로 쪼개서 면접을 준비하였다.

    1. OS

    2. Network

    3. Data Structure

    4. Database

    5. Java

    6. Web

    7. Algorithm

     

    우선 알고리즘은 정렬 기초만 공부했다. 버블소팅에서 sorted bool flag를 넣어서 빠르게 개선할 수 있는 방법이라던지, 시간복잡도 공간복잡도 그리고 칠판에 내가 직접 그려서 설명할 수 있고, 코드를 손으로 짤 수 있는 정도로만 알 고 있었다.

     

    두번째로, 공통 지식이 될 수 있는 부분은 1번 OS부터 4번 Database까지인 것 같다. 자세한 내용은 아래 Github에 공부 내용들을 첨부해뒀다. 저 내용들을 정말 자신이 물어봤을 때 조리있게 대답할 수 있는지, 전문적인 단어들을 사용하지 않더라도 내가 이해하고 머리 속에 있는 내용들을 말 할 수 있는것이 중요한듯 했다. 

     

    세번째는 Back-end 개발을 지원했으며 자바/스프링 위주의 개발 경험을 가지고 있었기 때문에 자바와 웹 지식을 준비해갔다. 웹 지식이라고 해봐야 네트워크 부분과 공통이 되는 지식들을 물어보는것이 주였으며, 자바는 꽤나 딥하게 물어보는 면접관분들도 계셨다.(N사) 그리고, 자바에 대해서는 전문적으로 사용해보지 못했다 솔직히 말하면, 다른걸 물어봐주시기도 하였다. (W사)

     

     

    기술 면접들은 대체적으로 내가 얼마나 알고 있는가? 가 메인이었으며, 모를 때 까지 꼬리질문을 5번 넘게 받은적도 있다. 모른다는 답변을 듣고싶으셨던걸까 (...) 그리고, API와 같은 축약어에 대한 질문들도 해당 단어를 말 할 때마다 받은적이 있다. 이런것들은 모두 이해하고 있는게 좋은듯 하다. 단순히 줄임말은 외운다고 외워지는게 아니기 때문이다. 어차피 공부를 하면서 이해하다 보면 자동으로 머릿속에 남았던 기억이 있다. 이 부분을 매우 좋게 봐주셨다.

     

     

    CS Repository.

     

    kimyuuum/archive-develop

    Computer science ~> develop. Contribute to kimyuuum/archive-develop development by creating an account on GitHub.

    github.com

     

    프로젝트 정리

    개인적으로 만들고 싶었던 플랫폼들을 직접 웹 페이지로 구현을 하며 프로젝트를 진행했다. 개발 아티클들을 읽어보며 msa라던지, 회사에서 많이들 사용하고 적용하는 시스템 아키텍쳐나 기술들을 작지만 데모 버전으로라도 구현해보며 경험을 쌓았던 것 같다.

    면접을 진행하며 프로젝트를 얼마나 크고 좋게, 어떤 상을 받았는지는 한번도 물어본 적이 없었으나 이 기술을 얼마나 이해하고 썼으며 썼을때에는 어떤 장단점들이 존재했는지, 무엇을 느꼈는지를 주로 물어보셨다. 또한 DB를 직접 설계했을 경우에는 테이블 구조까지 상세하게 물어보셨다.

     

    자세하게 어필하기 위하여 따로 notion을 이용한 프로젝트 포트폴리오 페이지를 만들었다.

    www.notion.so/kimyuuum/Yumin-Kim-20fdcd2e360940c2aab06ebff940d788

     

    김유민 (Yumin Kim)

    항상 성장하고자 노력하는 새싹 같은 주니어 개발자입니다.

    www.notion.so

     

     

     

    And...

    지금은 개인 과제로 쿠버네티스를 공부하고 있다. 이 또한 단순하게 구현보다는, HA까지 고려하며 장단점을 분석하고, 어떻게 하면 조금 더 자사에서 쉽게 사용할 수 있는가에 대한 분석을 진행한다. 서버와 직접 맞닿아서 작업을 하는 일은 정말 쉽지 않다.. 

     

    알고리즘 실력이 빼어나게 좋은것도 아니며 머리가 좋지 못했는데도 취업을 성공한 거 보면, 아무래도 취업에는 실력도 중요하지만 면접관과의 합이나 운도 중요한 것 같음을 느꼈다. 또한 그 운을 잡기 위해서는 잡을 수 있는 힘을 키워야 된다는 생각이 들었던 한 해다.

    연말에는 조금 게으르게 지내다가 2021년에 글을 업로드 하게 되었지만, 이렇게 2020년의 취업 회고를 마칠 수 있을 것 같다.

     

    'ETC' 카테고리의 다른 글

    2021 🏃🏻‍♂️  (0) 2021.01.04

    댓글

Designed by Tistory.