10x 개발자 되는 방법

10x 개발자

보통의 엔지니어보다 10배는 더 잘 하는 사람 - 1맨 스쿼드처럼 다른 사람보다 더 많이 성과를 낼 수 있음.

어떻게 10x 개발자가 될 수 있을까?

(개그) ~10배 더 빠르게 타이핑, 10배 더 일하기, 10배 더 코드를 치기.~

실제로 10x 엔지니어는 타이핑 속도도 느리고, 일도 남들의 절반만하고, 코드를 작성하기보다는 지우고 있을 확률이 높다.

 


이제 10x 개발자가 되는 법에 대해 알아본다.

올바른 툴을 쓰기

링컨: “내게 나무를 베는데에 8시간의 주어졌다면, 7시간은 도끼를 갈고 1시간은 나무를 베겠다”

주니어 엔지니어는 8시간동안 덜 갈린 도끼로 나무를 치고 있을 것이다.

시니어 엔지니어는 1시간동안 적당한 전기톱을 고를 것이다. 그리고 5분만에 나무를 잘라버리겠지.

주니어 엔지니어들은 보통 곧바로 코딩을 시작하곤 한다. 본인이 알고 있는 방법으로 모든 문제를 해결하려고 한다. 다른 방법은 찾아보려고 하지도 않는다. 알고보면 실제로 코드를 1도 적지 않아도 되는 경우도 많다.

 

도움을 구하기

주니어 엔지니어들이 흔히 하는 착각 중 하나는, ‘시니어 엔지니어들은 고독한 천재들’이라고 생각하는 것이다. 그래서 본인들도 그렇게 되려고 노력한다.

주니어 엔지니어들이 여기서 간과하는 점은, ‘시니어 엔지니어들은 혼자서 문제를 풀 줄 알고, 주니어들은 못한다’는 것이다.

그래서 주니어 엔지니어들을 문제를 풀기 위해 코드를 이해하려고 하루종일 쳐다본다. 하지만 이건 옆자리 시니어 동료에게 5분만 물어보면 바로 풀릴 문제이다.

덜 숙련되었지만 질문을 할 줄 아는 엔지니어는, 똑똑하지만 질문을 할 줄 모르는 엔지니어에게 항상 이길 것이다.

 

비즈니스적 가치를 전달하기

엔지니어들은 항상 기회비용에 대해 생각해야한다. “내가 할 수 있는 것들 중, 어떤게 가장 큰 가치를 전달할 수 있을까?”.

그 중에서도 코드를 하나도 적지 않고도 할 수 있는 것이라면 더욱 좋다.

종종 비즈니스 목표를 잊어버리는 엔지니어들도 있다. 예를 들어…

  • ‘새로운 기술이 나왔다. 다음주는 이걸 써서 우리 웹사이트에 올려봐야지! (제품과 연관이 없다)
  • ‘지금 코드 구조 진짜 별로인거 같아. 다음 스프린트는 코드를 전부 리팩토링 해놔야겠어’ (그 시간동안 돈을 벌 수 있는 기능을 만들 수 있지 않을까?)
  • ‘지금 플랫폼은 너무 옛날꺼야. 새 플랫폼으로 옮기자!’ (새 플랫폼으로 옮기면 효율성을 더 얻을 수 있는건가? 아니면 그냥 점진적으로 개선시키는 용도인가?)

주니어 엔지니어는 2시간동안 돈을 벌지도 못하는 복잡한 기능에 시간을 쏟는다. 시니어는 1시간동안 간단한 코드를 바꿔서 5배의 매출을 얻어내고 10배의 업무효율성 증진을 얻는다.