jc.jang

코딩 인터뷰 완전 분석 - 면접 전에 본문

개발/코딩인터뷰완전분석

코딩 인터뷰 완전 분석 - 면접 전에

jangstory 2019. 10. 2. 12:30

주제

  • 면접을 성공적으로 통과하기 위해서는 한참 전부터 준비해야 한다.

  • 시작이 늦었더라도, 걱정하지 마라. 할 수 있는 만큼 따라잡는 노력을 하라.

  • 그리고 준비하는 데 집중하라.

노트

  • 적절한 경험 쌓기

  • 이력서가 탄탄하지 않으면 면접까지 가기도 힘들고

  • 훌륭한 경험이 없으면 탄탄한 이력서를 만들 수 없다.

    • 지금  학생이라면,

      • 큰 규모의 프로젝트 수업을 들으라.

      • 인턴 자리를 알아보라.

      • 뭔가를 하라. 오픈 소스 프로젝트, 해커톤, 개인 프로젝트 등

    • 현재 직장인이라면,

      • 코딩을 많이 할 수 있는 업무를 하라.

      • 저녁과 주말을 활용하라. '재미 삼아 만들어 본'것이 있는 개발자만큼 면접관에게 깊은 인상을 심어주는 사람도 없다.

    • 회사는 코딩을 할 수 있고 영리한 사람을 원한다.

    • 그런 자질을 보일 수 있으면 면접장에 입장할 수 있다.

 

  • 탄탄한 이력서 작성하기

  • 면접관은 똑똑하고 코딩을 할 줄 아는 사람을 찾고 싶어 한다.

  • 테니스를 좋아한다거나, 여행을 즐기는 등의 기술적인 부분과 관계없는 취미를 적으려고 기술적인 부분을 덜어내려고 한다면, 다시 한번 생각해 보라.

  • 적절한 이력서 길이 - 10년 이하는 한 페이지로 만들어라.

    • 구인 담당자는 당신의 이력서를 보는데 기껏해야 10초 정도 할애한다.

    • 경험이 많아서 줄이지 못한다는 건 당신이 우선순위를 모르기 때문이다.

 

  • 고용 이력

  • 인상적으로 보이도록 쓰려면

  • "Y를 구현해서 X를 성취했고, 그 결과 Z를 이루었다."와 같은 방식으로 무엇을 성취했는지 말해 보자.

    • "분산 캐시를 구현해서 오브젝트 렌더링 시간을 75% 줄였고, 그 결과 로그인 시간을 10% 경감할 수 있었다."

    • "windiff에 기반한 새로운 비교 알고리즘을 구현한 결과, 평균 비교 정확도를 1.2에서 1.5로 개선했다."

  • 모든 것을 위와 같은 방식으로 쓸 순 없지만, '측정 가능한' 형태로 제시하는 것이 좋다.

 

  • 프로젝트

  • 가장 중요했던 2~4개를 적어야 한다. - 너무 많은 프로젝트를 적지 마라.

  • 세부사항을 적는 게 필수는 아니다. - 무슨 프로젝트였고, 어떤 언어와 기술을 사용했는지 적으라.

 

  • 프로그래밍 언어와 소프트웨어

  • 소프트웨어

    • 이력서에 나열할 소프트웨어 리스트는 신중하게 선택해야 한다.

    • MS office 거른다.

    • Visual Studio, Eclipse와 같이 기술적인 소프트웨어는 좀 더 관련성이 있다. 하지만 별로 신경 안 쓴다.

  • 프로그래밍 언어

    • 가능하면 사용했던 모든 언어를 적되, 언어에 대한 숙련도를 함께 적자.

    • 자바(전문가), C++(능숙), 자바스크립트(경험 있음)

  • 낙인의 가능성에 대해 알고 있기

    • 특정 언어를 사용하는 게 낙인(stigma)이 될 수도 있다.

    • 기업 언어 - VB 전문가라고 말한다면, 내공이 부족한 사람으로 간주될 수 있다.

    • 언어에 너무 몰입된 경우 - 최고의 소프트웨어 엔지니어는 그들 자신을 특정 언어로 정의하지 않는다는 믿음이 있다.

    • 자격증 - 기술을 줄줄이 나열하는 지원자에 대한 편견을 갖고 있는 회사는 자격증에 대해서도 편견을 갖고 있을 가능성이 있다. 자격증 관련 내용을 삭제하는 게 나을 수도 있다.

    • 한두 가지 언어만 알고 있을 경우: 코딩에 시간을 많이 쏟을수록, 많은 것들을 개발하고 사용한 언어의 개수가 많아질 것이다. 능숙한 언어가 하나라면, 아직 많은 문제를 경험해 보지 못한 사람으로 간주해버릴 수 있다. 또한 새로운 기술을 배우는데 문제가 있거나 다른 적합한 언어를 사용하지 않는 것에 대한 걱정을 하게 한다.

  • 준비 절차

    • 프로젝트

    • 자료구조와 알고리즘

    • 이력서 작성 및 검토

    • 면접 준비

요약

  • 이번에는 면접 전에 해야 할 행동에 대해 알아봤다. 프로젝트나 인턴쉽을 통해 적절한 경험을 쌓고 이를 바탕으로 탄탄한 이력서를 작성해야 한다. 경력이 있다면 고용 이력을 쓰되 측정 가능한 성과가 보이도록 작성하는 것이 중요하다. 프로젝트를 기재할 때는 2~4개의 간략한 내용만 작성하는 것이 좋다. 또한 사용하는 언어를 나열할 때 한 가지의 언어만 사용하는 것은 프로그래밍 경험이 부족하게 보이거나 새로운 기술 습득에 대해 문제가 있거나 나중에 업무에 적합한 언어를 선택할 때 가장 적절한 언어를 사용하지 않을 수도 있다는 생각을 하게 한다. 취업을 위해서 뿐만 아니라 다양한 언어에 익숙한 것이 좋다.
  • 나의 이력
    • 머신러닝 모델 개발 (2017.12 ~ 2018.06)
      • '오픈 소스를 활용하여 여드름, 점, 잡티를 분류하는 모델을 구현했고, 85%의 정확도를 보였다.'
    • 구글 애널리틱스 솔루션 개발 (2018.09 ~ 2019.07)
      • '구글 애널리틱스의 Raw Data를 내려받는 방식을 기존 방식에서 BigQuery와 연동하는 것으로 개선하여 정확도를 5% 개선했다.
  • 나의 프로젝트
    • 사실 프로젝트가 제일 걱정이다. 뭔가 그렇다 할 프로젝트가 없어서...
    • 어떻게든 프로젝트를 진행하는 것이 중요한 것 같다. 지금은 동영상 강의를 보는 것에 학습 초점을 맞추고 있어서 프로젝트에 신경을 못썼는데 강의와 프로젝트를 적절히 병행해야겠다.
    • 가짜 뉴스 생성기 - Pillow와 Django를 이용하여 이미지 합성 서비스를 만들었고 비동기 처리를 위해 웹 브라우저에서 Ajax 기술을 사용했다.
    • 박재범을 좋아하는 사람들을 위한 데이팅 서비스 - 현재 기획 중
    • 프로그라피에서 진행할 프로젝트 - 구상 중...
    • React 스터디 - 스터디를 하면서 React로 프로젝트를 진행해보자.
    • 양한 언어를 사용할 줄 아는 것이 중요하다는 건 알지만 공부하지 않고 있었다. 프로그라피에서 React 스터디에 참여하게 되었는데 배운다는 생각이 아니라 무언가를 만든다는 생각으로 참여하여 프로젝트를 진행해야겠다.
Comments