본문 바로가기
휴게소

10년 넘어 깨달은 시니어 개발자의 조언

by Vintz 2025. 8. 8.
반응형

2015년부터 유튜브 영상을 꾸준히 봐왔지만, 지난 10년 동안 진짜 인생에 도움이 된 영상은 손에 꼽을 정도였다.

 

최근에 한 영상을 봤는데, 13년 경력의 시니어 개발자가 해 준 이야기는 나에게 꼭 필요한 조언이었고, 수강생들에게도 전해주고 싶은 내용이었다. 부족한 영어 실력이지만 정말 두고두고 보고 싶어서, 번역과 함께 글을 써보려고 한다.

이 글을 작성하게 해 준 Pete에게 정말 감사의 말씀을 드립니다. I truly appreciate it, Pete.

원본: It took me 10+ years to realize what I’ll tell you in 8 minutes

10년 넘게 걸려 깨달은 것을 8분 만에 알려드릴게요

저는 2012년부터 코딩을 해왔고,
정말 누군가 이 10가지를 미리 알려줬다면
수년을 고생하지 않았을 거예요.

혹시 지금 막히고, 압도되고, 스스로를 의심하고 있다면
제 경험이 여러분의 10년을 아껴줄 수 있을지도 모릅니다.

안녕하세요, 저는 Pete입니다.
13년 넘게 프로그래머로 일하며,
수백 명의 초보 개발자들이 제대로 코딩을 배우고
IT 업계에 입문할 수 있도록 도왔습니다.

모든 걸 다 알 필요는 없습니다

이게 제가 가장 먼저 들었어야 했던 이야기입니다.
정말이에요, 모든 걸 알 필요 없습니다. 전혀요.

저는 처음 시작할 때, 진짜 개발자는
JavaScript 전체를 외우고 있는 줄 알았어요.
마치 다른 종족인 줄 알았죠.


그들은 눈뜨자마자 베개 밑에 있는 키보드를 꺼내
완벽한 JavaScript 코드를 뚝딱 쓰는 줄 알았습니다.

스포일러입니다만, 아니에요. 그런 사람 없습니다.

비유하자면, 요리를 배울 때
세상의 모든 레시피를 외울 필요가 없습니다.
칼질, 간 맞추기, 불조절 같은 기본만 알면 되죠.

코딩도 똑같습니다.
세세한 문법을 외우기보다
패턴을 이해하는 게 훨씬 중요합니다.

저는 한때 배열의 마지막 요소 가져오는 방법을 검색할 때
“이것도 모르다니, 내가 개발자 맞나?”라는 생각이 들곤 했어요.

그런데요, 지금도 가끔 검색합니다.
그리고 저보다 훨씬 오래 개발한 분들도 마찬가지입니다.

좋은 개발자는 모든 걸 외우는 사람이 아니라,
문제를 해결할 수 있는 사람입니다.
정보를 찾을 줄 알고, 문제를 분석할 줄 알고,
아무것도 안 될 때에도 침착함을 유지할 수 있는 사람 말이죠.

그러니 만약 지금도 기본적인 걸 검색 중이라면,
잘하고 계신 겁니다.

배우는 방법부터 먼저 배우세요

이건 정말 중요합니다.
제가 수년 동안 제자리에 머물러 있던 이유 중 하나예요.

많은 초보 개발자들이 코드를 배우기 전에,
'코드를 배우는 법'을 먼저 익혀야 한다는 사실을 모릅니다.

저는 튜토리얼을 열심히 보기만 하면
언젠간 알게 되겠지, 라고 생각했어요.

하지만 현실은…
튜토리얼 10개를 보고도
스스로 아무것도 만들 수 없었습니다.

마치 유튜브로 자전거 타는 법을 배우고
막상 탈 때는 덤불에 처박히는 느낌이었죠.

코딩은 '언어'와 같습니다.
듣는다고 유창해지지 않습니다.
직접 말해봐야 늘어요.

즉, 키보드에 손이 닿지 않으면, 뇌도 학습하지 않습니다.

저를 진짜 바꿔준 건
'소비자 모드'에서 '창작자 모드'로 전환했을 때였습니다.

남이 만드는 걸 구경하는 대신
엉망이어도, 작은 거라도, 직접 만들어보기 시작했어요.

제가 처음부터 가졌어야 했던 규칙은 이겁니다:

튜토리얼 1시간을 본다면, 최소 4시간은 튜토리얼 없이 직접 만들어보세요.

막히세요? 검색하세요.
깨지세요? 괜찮아요.
그게 진짜 수업입니다.

완벽주의는 함정입니다

고백할 게 있습니다.
개발 처음 시작했을 때,
변수 이름 하나 짓는데 3시간을 쓴 적이 있어요.

진짜입니다.
화면만 보면서
data? info? 아니면... superImportantThingy...?
이런 고민만 하고 있었어요.

왜냐고요?
모든 코드가 완벽해야 한다고 믿었기 때문이에요.

하지만 문제는, 완벽이라는 건 거짓입니다.

완벽한 코드를 쓰는 사람은 없습니다.
심지어 여러분이 존경하는 시니어 개발자도
가끔은 망가진 코드를 배포해요.
그들은 단지 고치는 속도가 빠를 뿐이죠.

이건 마치
처음 붓질이 걸작이 아닐까 봐
캔버스에 붓을 대지 않는 화가와 같습니다.

그럴 수 없어요. 처음은 항상 별로입니다.
그게 당연한 거예요.

저는 완벽한 코드에 집착을 내려놓고
그냥 일단 완성하기 시작했을 때
모든 게 달라졌습니다.

프로젝트가 끝나기 시작했고,
속도가 붙었고,
결과적으로 코드도 훨씬 나아졌습니다.

왜냐고요?
실수할 여유를 줬기 때문입니다.

완성된 것이, 완벽한 것보다 낫습니다.
잘 돌아가는 못생긴 코드가,
예쁘지만 실행되지 않는 코드보다 훨씬 많은 걸 가르쳐줍니다.

준비된 느낌은 오지 않습니다

하지만 그래도 시작하세요.

첫 프로젝트를 만들 준비,
개발자 구직을 할 준비,
클라이언트에게 돈을 받을 준비…

절대, 충분하다고 느껴지지 않습니다.
저도 마법처럼 '나 이제 진짜 개발자다!'라는
느낌이 올 줄 알았는데요, 그런 거 없었습니다.

심지어 몇 년이 지난 후에도
“아니, 누가 나한테 운영 서버를 건드리게 해 준 거야?”
라는 생각을 하곤 했습니다.

이건 마치 헬스장에 처음 가는 것과 비슷합니다.
몸이 만들어져야 운동을 시작하는 게 아니라
운동하면서 몸이 만들어지는 거죠.

코딩도 마찬가지입니다.
자신감은 '행동'에서 생깁니다.

저의 첫 프리랜서 일은, 정말 무서웠어요.
임포스터 증후군이 폭발했죠.

그래도 그냥 수락했고,
솔직히 일의 절반은 실시간으로 구글링 해가며 처리했어요.
결과는?
그 작은 "네" 한 번이
상상도 못한 수많은 기회의 문을 열어줬습니다.

생각보다 당신은 이미 준비돼 있습니다.
중요한 건 자신감이 아니라,
시작하려는 의지입니다.

진짜 실력은 문제 해결 능력입니다

튜토리얼 썸네일 어디에도 적혀 있지 않지만,
진짜 중요한 말이 있습니다.

코딩의 핵심은 '문법'이 아니라 '문제 해결 능력'입니다.


누구나 for문 정도는 외울 수 있어요.
하지만 정말 중요한 건,
기능 요청을 작은 단위로 쪼개고
문제가 생겼을 때 어디서 잘못됐는지를
논리적으로 추론할 수 있는 능력입니다.

개발은 마치 탐정이 되는 것과 비슷합니다.
문법은 그냥 노트에 불과하고,
진짜 실력은 올바른 질문을 던지는 능력에 있습니다.

저는 예전에는 뭐가 안 되면
"망했다. 난 소질이 없나 봐." 하곤 했는데요,

이제는 압니다.
디버깅이 곧 개발입니다.
그건 실패가 아니라 과정이에요.

훌륭한 개발자들은 단순히 문법을 잘 아는 게 아니라,
문제를 끝까지 파고드는 태도를 가지고 있습니다.
계속 질문하고, 계속 의심하고, 계속 시도합니다.


타이핑 실력보다, 사고력을 키우세요.
왜 그렇게 작성했는지를 고민하세요.

아무도 당신의 코드에 관심 없습니다

이건 좀 아플 수도 있지만, 정말 필요한 이야기입니다.

아무도 당신의 코드 자체엔 관심 없습니다.
사람들이 원하는 건 기능입니다.

세상에서 가장 깨끗하고 우아한 코드를 짰다고 해도
버튼이 작동하지 않거나,
사이트가 거북이처럼 느리다면
그건 쓸모없는 코드입니다.

저는 예전에 추상화를 엄청나게 잘 해낸 컴포넌트를 만든 적이 있어요.
재사용 가능하고, DRY 하고, 정말 자랑스러웠습니다.

그런데 클라이언트는 딱 한마디 했습니다.
"좋아요. 버튼을 녹색 대신 파란색으로 바꿀 수 있을까요?"

… 끝.

그들은 제가 만든 커스텀 훅에는 관심 없었습니다.
결과만 원했습니다.

당신의 코드는 배관(plumbing)과도 같습니다.
싱크대 아래 파이프 정리 상태를 칭찬하는 사람은 없습니다.
그저 물이 잘 나오길 바랄 뿐이죠.

깔끔하고 우아한 코드면 좋지만,
그보다 더 중요한 건
작동하고, 문제를 해결하는 코드입니다.

겉치레보다는 실질적인 가치가 더 중요합니다.

번아웃은 실제로 존재합니다

에너지를 지키세요.

잠깐만 솔직해져 볼까요?

 

번아웃은 실제로 존재하고,

정말 세게 찾아올 수 있습니다.

처음엔 의욕 넘치게,
두 배속으로 튜토리얼 보고,
커피도 과하게 마시며 시작합니다.

하지만 몇 달이 지나면
지치고, 혼란스럽고,
'나는 개발자랑 안 맞나?'라는 생각이 들 수도 있어요.

저도 그랬습니다.
주말 내내 버그 하나 고치겠다고
잠도 안 자고, 밥도 제대로 안 먹고,
그냥 화면만 멍하니 바라본 적이 있어요.

결국 버그는 해결했지만…
제 에너지도 완전히 고갈돼 있었어요.
솔직히 말하면, 그건 성취가 아니라 경고 신호였죠.

"진짜 개발자는 24시간 7일 내내 코딩한다"는 말?
전혀 사실이 아닙니다.

제가 아는 훌륭한 개발자들은
휴식을 잘 챙깁니다.
게임도 하고, 산책도 하고, 휴가도 가요.

우리 뇌도 배터리와 같습니다.
스마트폰 배터리가 1% 일 때 안 쓰는 것처럼,
우리도 스스로를 과하게 몰아붙이면 안 됩니다.

매 순간 열심히 달려야 실력을 증명할 수 있는 게 아닙니다.

생산성이란
자신을 태워 없애는 게 아니라,
지속 가능함에서 나옵니다.

푹 자고,
바람 쐬고,
산책도 해보세요.

마지막 요약과 조언

  • 모든 걸 알 필요는 없습니다.
  • 배우는 법부터 배우세요.
  • 완벽주의는 거짓입니다. 일단 만드세요.
  • 준비된 느낌은 오지 않습니다. 그래도 시작하세요.
  • 코딩은 단순 타이핑이 아닌 문제 해결입니다.
  • 아무도 당신의 코드 자체엔 관심이 없습니다.
  • 번아웃은 실재합니다. 스스로를 지키세요.

오늘 이 중 하나라도 마음에 와닿았다면, 이 영상은 제 역할을 한 거예요.

저는 Pete였고, 감사합니다.

영상

반응형