🎓 어느 날 고민 많은 주니어 개발자가 찾아왔다 - 김영한님

인프런 영한님 강의 속에서 조금씩 들을 수 있었던 김영한님 성장 일대기와 성장에 관한 팁. 개발자로 취업 준비중이거나, 취업한지 얼마 안된 주니어 개발자들을 타겟으로 준비된 발표같다.


🎓 이직 - 이직 준비, 채용, 이력서, 면접

어떤 회사를 갈 것인가 부터

내가 가고 싶은 회사를 1,2,3 티어로 나누자.

  • 1티어: ‘반드시, 언젠가는 가고 싶은 회사’
  • 2티어: ‘그래도 가면 좋겠다.’
  • 3티어: ‘취업은 해야하니까, 지금보다는 좋은 환경으로 이직하고 싶어서’

각 회사가 원하는 기술스택 갖추기

  • 1티어 회사들의 채용 사이트를 통한 사용 기술 조사
  • 비슷한 기술을 사용하는 2,3 티어 회사들 찾기
  • 채용 확률 높이기
    • 실무에서는 당장 사요하는 기술을 잘 다루는 경력자를 선호
    • 기술을 맞추어 두면, 3티어 회사에 입사해도 경력을 쌓아서 1티어에 갈 확률이 높아진다.

신입 vs 경력

  • 신입으로 취업 vs 경력직 이직
    • 1티어 회사는 신입으로 취업이 10배는 더 어려움
    • 그래서 일단 3티어 회사로 취업
    • 그게 안되면 개발 회사로 우선 취업
  • 3티어 -> 2티어 -> 1티어로 더 취업하기 쉬움
  • 본인에 대한 경력, 실력이 증명되면 어차피 이직은 쉽다.

이직 준비 - 성장과 연봉

  • 좋은 회사는 무엇인가? 내가 개발과 운영과 개선을 하는 사이클을 모두 경험해볼 수 있는 회사.
  • 내가 만든 코드를 내가 운영하고 개선하는 경험
    • 트래픽이 많으면 더 좋다!!
  • 연봉
    • 서비스, 플랫폼 회사가 만들어내는 초과 수익은 아주 큼
    • 나의 실력에 따른 기여도가 크고 초과 연봉 가능

나는 어떤가? 개발, 운영, 개선 사이클을 경험하곤 있는데… 트래픽이 없네… 😭 트래픽을 경험하고 싶다…!!

채용

  1. 채용은 확률이다
  2. 개발자 TO는 무제한이다(실력 있는)

같은 실력이라도 시기, 환경에 따라서 결과가 다 다르다. 결국 사람이 채용하는 것이기 때문에.

  • 같은 사람을 여러 명이 면접을 봐도 서로 합격 불합격이 갈림
  • 면접관은 사람이다. 면접관마다 선호하는 것이 다 다르다.
    • 기술: 자바, 스프링, JPA, OOP 등
    • 성향: 기술 경험 vs 성장 가능성
  • 기술과 성향이 맞다면 합격 확률이 높음

그러나 결국 위안을 위한 멘트일 뿐, 준비하는 사람 입장에서 운은 배제해야할 요소라 생각한다. 어떤 면접관이 나올지 모르기 때문에 어떤 상황에서도 좋은 결과를 얻기 위해 피나는 노력을 해야하고, 노력이 결실을 맺은 후 정신적 위안이 필요할 때 생각해도 늦지 않는다.

티어가 높은 회사일 수록 평균 기대치가 높다.

  • 개발자의 실력과 깊이가 점점 더 중요
  • 사용자, 트래픽, 돈 +
  • 개발자 한명이 기여하는 수익과 장애 타격이 크다.

실력있는 개발자가 부족하다.

  • 좋은 개발자 1명을 두고 여러 회사가 경쟁하는 상황
  • 1티어 회사들도 TO를 충족하기 어렵다.
  • 결국 실력을 키우는 것이 중요하다.

이력서

  • 나쁜 케이스: 프로젝트만 나열
  • 이력서를 잘 쓰는 방법도 이리저리 찾아봐라.

프로그래머는 컴퓨터로 문제를 해결하는 사람이다. 프로그래머는 문제는 풀어야하고, 해결방법이 궁금하다.

기술 면접관을 낚을 땐 “문제와 해결” 과정을 이력서에 적어서 어필해야한다. “프로젝트를 진행하면서 이런 문제가 있었다.” 여기서 부터 궁금하다. “그 문제를 이렇게 해결했다.”

문제기술적으로 어떻게 해결했는지 자세히 적는다. 이력서는 결국 면접관에게 ‘나’를 판매하는 설명서다. 내가 면접관이라면 어떤 부분에 관심을 가질까? 면접관의 어떤 이야기에 관심을 가질지 상상되지 않는다면 회사에 대해 잘 모르거나, 준비가 덜 된 것 일테지.

  • 겸손도 중요하지만, 본인 마케팅도 중요함
  • 당신이 뭘 잘하는지 구체적으로 잘 적어야 상대가 알 수 있다.
  • 면접관 관점에서 생각
  • 문제 -> 해결 포인트
    • 어떤 문제가 있었다 -> 기술적으로 어떻게 해결했다.
    • 이런 것들을 통해 나의 기술적 깊이를 보여준다.
    • 면접에서 물어보는 낚시찌가 된다. 내가 준비한 필살기를 물어볼 확률이 된다.

면접

  • 실제로 내공이 부족
  • 내가 안다는 것이 진짜 아는 걸까?
    • 학습 -> 체득 -> 정리
  • 면접은 시간이 짧다. 내가 아는 것을 ‘잘’ 정리해서 상대방에게 말로 설명할 수 있어야 한다.

깊이

  • 기술적으로 깊이 있는 개발자 선호
  • 깊이라는 것은 하나만 파는게 아니라 깊이 파기 위해 그 주변까지 파고 들어가는 모습이 있어야 한다.
    • JPA를 잘 안다? DB도 잘 안다.
    • spring-core를 잘 안다? http도 잘 안다.
  • 스스로 깊이있게 파고 학습한 개발자는 보통 문제들을 수월하게 해결한다.


🎓 학습의 3단계

“강의나 책을 통한 학습(1) 하고, 학습한 내용을 실무나 사이드 프로젝트에 적용하며 체득(2) 한다. 그렇게 체득한 내용을 노트나 블로그에 정리(3) 하거나 세미나에서 발표를 진행한다.”

경험한 것들을 어떻게 잘 전달할 것인가? 내가 잘 전달할 생각이 있다면 정리를 해야할 수 밖에 없다.

학습을 하는 개발자는 많으나, 체득을 하는 개발자는 적다. 체득을 하는 개발자는, 정리하는 개발자들과 퀄리티가 다르다. 정리까지 하는 개발자는, 정말 성장속도가 폭발적이다.

내가 단순히 사용할 줄 아는 것과, 내가 아는 내용을 상대방에게 전달할 수 있는 건 분명 차이가 난다. 상대방에게 이해를 시키기 위해선, 정말 사소한 영역까지도 함께 이해를 하고 있어야한다. 즉, 사용할 줄 아는 것보다 한 차원을 더 알아야만 설명이 가능하다.

‘정리’ 라는 것은 하나의 매개체일 뿐, 정말 깊게 공부해야한다는 이야기…


🎓 목표보단 시스템

목표는 앞으로 나아갈 수 있는 힘을 주기도 하지만, 반대로 도달했을 때 (혹은 실패했을 때) 번아웃을 만들기도 한다. 개발자는 평생을 공부해야하는 직업이다. 인생의 목표를 잡고 쉼없이 달려가기보다 적게라도 천천히, 꾸준히 반복적인 일을 수행하다보면 결국 하나의 시스템이 될 것이고, 그렇게 만들어진 시스템이 거대한 목표를 (의도하든 의도하지 않았든) 달성시키는데 도움을 줄 것이다.

인생의 목표를 명사, 결과 형태로 하지 않고 동사, 진행형태로 하는 것.


🎓 성장

피드백은 빠르면 빠를 수록 좋다. 만일 야구선수가 던진 공을 몇달 후에 확인할 수 있다면? 야구선수는 영원히 성장할 수 없을 것이다.

애플리케이션 개발도 마찬가지다. 테스트 케이스를 통해 빠르게 성공하고 실패를 확인해야한다. 그렇지 않으면 개발이 모두 완료된 후에야 완성도를 확인할 수 있을 것이다.

개발자의 인생도 마찬가지다. 면접을 자주 보는 개발자가 피드백도 더 많이 받고, 더 잘될 확률이 높다. 더 빨리 좋은 회사에 취업하고, 서비스 회사에서 더 큰 성장을 하고 싶다면 끊임없이 움직이자. 면접에 겁을 먹지 말자.

기술적인 겸손함

메타인지를 어떻게 하는지에 따라 개발자의 성장력이 다르다.

본인이 매우 잘한다 생각하는 개발자는 대게 보통이다. 주니어 3년정도면 업무도 눈에 익고, 더 이상 공부할게 없다고 생각하기 마련이다. 업무가 술술 해결되니 본인이 잘한다 생각하게 되고, 어떤 문제를 마주치던 항상 본인이 해결하던 기존 방식으로 해결해낸다. 이 때가 바로 성장이 멈추는 시기. 우물 안의 개구리가 되어 시장에서 점점 도태된다.

본인이 부족하다 생각하는 개발자는 어떤가? 대게 팀 내에서 가장 뛰어난 개발자들이 그렇다. 공부를 하면 할 수록 모르는 것이 더 많아지고, 목이 마르다. 이것저것 새로운 내용을 공부해둔게 많기 때문에 기술적인 혁신과 도전을 즐긴다. 그렇게 시장에서 가장 매력적인 개발자가 된다.


🎓 후기

현장에서나 인프런 강의에서 영한님의 이야기를 듣다보면, 정말 말을 잘하시는 분이라는게 느껴진다. 당연한 말도 집중력 있게, 힘 있게 이끌어나가는 능력이 대단하시다. 어찌보면 지루할 수도 있는 내용이었는데, 끝까지 집중해서 들었다. 괜히 개발강의 1위가 아니시다 ㅋㅋㅋㅋ.

목표보단 시스템 파트를 들을 때 문뜩 작년에 달라졌던 나의 마인드셋 변화가 떠올랐다. ‘이건 이래서 못해’, ‘저건 저래서 늦었어’ 항상 투자 대비 나올 결과물(목표)에 지레 겁을 먹곤 했는데, 우테코 활동을 하면서 ‘일단 해보자.’ 라는 마인드로 변화했다. 가장 대표적인게 5월부터 시작한 아침 헬스.

그냥 막연히 뭐라도 해야겠다는 생각에 시작했다. 몸짱이 되겠다는 목표를 가졌다면 진작에 지쳐 그만두었을 것이다. 몸짱이 되겠다는 목표를 가진 사람들보다 느리겠지만 어쨌든 꾸준히 좋아지고 있음을 느낀다. 한동안 아침식사를 안했는데, 운동을 다녀온 날 아침에는 사무실에서 이것저것 주워 먹는다. 별다른 목표없이 무념무상으로 하다보니, 야근이나 늦잠 등으로 바빠서 못간 주 주말에는 당연히 해야할 걸 안한 듯한 이상한 기분도 든다. 시스템이 되었나보다.

최근 어드민향 미리보기 기능을 구현하면서 보안을 어떻게 관리할지 고민이 정말 깊었다. 따지고 따져도 다 단점을 하나씩 갖고 있는 방법만 떠오르니, 머리가 지끈거렸다. ‘아는게 하나라도 더 있었다면 정말 깔끔한 방법을 고안해냈을텐데…’ 생각이 들면서, 내가 정말 아는게 없구나 한탄을 했다. 자연스럽게 겸손해질 수 밖에 없는 것 같다. 아! 이번 주말엔 그만 놀고 공부해야지…

댓글남기기