개발자에게 필요한 것

  • 회사는 어떤 사람을 고용하고 싶을까

    문제 해결 역량, 성장 가능성, 기초 개발 지식이 얼마나 탄탄한지 - 코딩테스트는 기초 개발 지식을 검증하기 위한 하나의 방법 뿐임

  • 취준 당시의 실력
    • 코딩테스트, CS 기본지식 부족
      • for loop기본기도 이해 못하고 그냥 달달 외울 정도였다고 함
    • 지방 사립대
    • 창업하면서 뭔가 만들긴 했지만 개발을 잘한건 아님
    • React 전혀 할 줄 모름 (할 줄 아는 것: jQuery, ES6)
  • 당시 가진 것들
    • 열정! 꾸준히 하는 것
    • 실행력이 좋음 (고민되면 일단 실천)
    • 기획, 디자인, 개발 다 해봄
  • 이력서가 좋지 않아서 그냥 그럴싸하게 글자 많이 넣고 포장함;;<<이거 내 이야기인데…?
    • 별거 아닌거/당연한거를 구구절절 적어둠…
    • 간단한 토이 프로젝트들을 적어둠… (지금 코드 보면 엉망임)
  • 근데 뽑힘… >> 문제해결역량+성장 가능성 + 기초개발지식
    • 문제를 해결해기 위해서 뭔가를 고민하고 결과를 도출해냈던 것
    • 문제를 포기하지 않고 집요하게 할려고 했던 것들 (면접 때 react문제였지만 jquery사용해도 되냐고 묻고 푼제를 어찌어찌 풂)
    • 기초개발지식 리액트를 알지 못했지만 웹에 대한 기초 지식 (html, css, dom)에 대한 지식이 탄탄했음
      • CS, 코테지식은 중요한것이 맞지만, 하고자 하는 직무에 관한 지식이 먼저임<<
      • 경험을 쌓고 이해하는 것이 먼저임!
      • 보여주는 방식이 여러개 (정답이 없음!) 블로그, 사이드 프로젝트, 동아리 활동… 그냥 나만의 방법으로 추가하다 보면 보여지는 것
      • 소개와 이력서 내용이 일치할것 (밑의 예: 일상에서 느끼는 불편함을 해결하는 것을 좋아한다고 하면 그게 맞는 프로젝트들을 구현)
  • 예시
  • 당시 이직하려고 만든 이력서
  • 이직을 위한 기술 면접 준비 (ㄷㄷ)
  • 이력서에서 나온 예상 질문들, 회사 웹페이시, frontend, cs 기초지식
    • 면접이 끝나면,, 이런식으로 복귀… (ㅜㅜ대박..)
  • 그 외 면접때 많이 물어봤던 질문
    • 이걸 한 목적이 무엇이었나요?
    • 우선순위가 어떻게 되었고, 어떤 기준으로 판단하셨나요?
    • 어떻게 했나요? 다른 대안은 없었나요?
    • 팀 또는 회사에 큰 임팩트를 준 경험은 무엇인가요? (가장 기억에 남는 경험)
    • 나의 생각 (장단점, 어떤 팀에서 일하고 싶은지 등)
  • 넣은 회사에 다 최종합격함…
    • 팀 안에 놓여진 상황에서 팀에게 기여하려고 노력했던 것들, 그리고 팀이 필요하다는 문제를 발견해서 그거를 설듯하고 어떻게는 하게 만들려고 했던 것들
    • 다수의 회사에서는 활동을 하고 지식을 나누는 것들에 긍정적으로 봄

정리

단순 경험의 나열이 아닌 필요한 요소들을 골고루 이력서에 담아내자

  • 목적과 의도를 회사,팀,제품에 임팩트가 큰 순으로
  1. 문제 해결 역량은 정말 중요하다
    • 역량 범위만 다를 뿐 신입과 경력직 모두 중요하다
    • 신입: 주어진 기술적 문제를 잘 해결한다
    • 경력: 기술뿐 아니라, 제품, 팀 차원에서 문제를 발견하고 잘 해결한다
  2. 개발자는 코딩 (구현)이 전부가 아니다
    • 개발을 잘하되, 협업+커뮤니케이션 능력, 팀에 다양한 시너지를 낼 수 있는 사람
  3. 성장 가능성을 보여줘야 한다
    • 잘 하는 사람 뿐 아니라 잘 ‘할’ 사람도 뽑고싶어한다
    • 끊임없이 배우려고 하는 자세
    • 집요하게 파고들어 어떻게든 해결하려는 자세
    • 도전을 즐기고 수도적으로 행동하는 자세
  • 왜 했는지, 왜 이렇게 했는지, 왜 이 기술을 골랐는지.
  • 되도록, 많이 경험해보기!!<<

해커톤을 통해 얻은 것

  • 좋은 이유: 누구에게나 평등함
  • 아까 언급했던 경험들을 얻게 됨
    • 시간은 짧은게 성취감이 엄청 큼
    • 강의를 듣고 만드는 것과는 매우 다름

해커톤 leverage

단순 참여를 넘어, 경험을 전략적으로 활용하자

  1. 다양한 역할, 상황 경험해보기
    • 발표자, 팀 리드, 새로운 기술&직군 도전
  2. 재사용 가능한 자산 쌓기
    • 재활용 가능한 디자인 시스템, 코드 컴포넌트, API 등 개발 Kit 만들어보기
      • 다시 사용할 수 있는 boilerplate!!
    • 협업하며 나온 다른 사람들의 코드와 의도 이해해보기
    • 함께한 팀원들과 네트워킹을 통해 다양한 기회, 경험 만들어보기
  3. 이력서
    • 완성도가 높으면 프로젝트 경험에 추가
    • 완성도가 낮으면 기타 활동으로 내가 꾸준히 성장을 위해 노력하고 있음을 어필 할 수 있는 좋은 수단

하고 싶은 말

  • 일단 해보자
    • 완벽하지 않아도, 잘하지 않아도 되니 일단 행동하는 것이 중요하다
  • 실패해도 괜찮다!
    • 기대가 크면 실패의 두려움도 커지지만, 빠르게 시도하면 실패의 두려움도 적어진다
    • 만약에 성공한다면? 오히려 굿!
    • 준비가 안된다고 생각하면 무엇이 준비 안됐는지, 그리고 그거를 준비하면 될것 같은지 정확히 파악
  • 안하는 것보다 무조건 하는게 좋다!
    • 어떻게 사면 성공할까 X
    • 어떻게 하면 실패 확률을 줄일 수 있을까? O
    • 최소한의 노력으로 빠르게 실패하는 방법을 고민해보세요