← 프리뷰 목록으로

나는 사무라이다: 소프트웨어 장인정신과 무사도

게시일: 2025년 11월 22일 | 원문 작성일: 2024년 10월 20일 | 저자: Micah Martin | 원문 보기

핵심 요약

  • 장인정신의 보편성: 미야모토 무사시의 400년 전 오륜서가 현대 소프트웨어 장인정신과 놀라울 정도로 공명하며, 장인의 길이 시대와 분야를 초월함을 보여줘요
  • 수련과 원칙 (지의 서): 진정한 전문성은 테스트 주도 개발, 지속적 통합 같은 원칙을 수련하고, 직접 도구를 만들며, 특정 기술에 자신을 제한하지 않는 데서 나와요
  • 도구의 숙달 (수의 서): 연습과 실전을 같게 하고, 항상 최고의 도구를 찾으며, “자바스크립트 개발자”가 아닌 “소프트웨어 장인”이 되세요
  • 성장과 끈기 (화의 서): 장인으로 성장하려면 안전지대를 벗어나 충돌을 마주하고, 도전적인 문제를 포용하며, 포기하지 않는 끈기가 필요해요
  • 본질 vs 허식 (풍·공의 서): AI 같은 지름길에 의존하지 말고, 겸손하며, 진정한 숙련은 하드워크와 수년간의 헌신에서만 나온다는 걸 인정하세요

우리(Clean Coders)는 사무라이예요. 칼을 들거나 결투를 하진 않지만, 무사도를 실천하죠. 소프트웨어 장인정신이라는 무사의 길을요.

소프트웨어 장인(Software Craftsman)에게 코드를 작성하는 건 단순한 직업이 아니에요. 삶의 방식이죠.

미야모토 무사시

미야모토 무사시는 역사상 가장 유명한 사무라이예요. 62번의 결투에서 전승을 기록했죠. 그는 전사이자 검객으로 긴 삶을 살다가, 동굴에서 은둔 생활을 하며 그의 대표작 ‘오륜서(The Book of Five Rings)‘를 썼어요. 이 책에 자신의 철학과 길을 기록했고, 완성 직후 세상을 떠났죠. 거의 400년 전 일이에요.

무사시는 장인이었어요. 저는 종종 그의 장인정신을 소프트웨어 장인정신과 비교해요. 무사시가 무사도를 체현하며 살았듯, 우리도 우리의 기술에 헌신하죠.

거울을 보다

오륜서 첫 몇 페이지부터 충격을 받았어요. 400년 전 전설로만 알던 사람이 쓴 글이… 너무나 익숙하게 들리더라고요. 저와 같은 소리였어요. 장인정신을 제외하면 무사시와 저는 공통점이 없어요. 다른 시대, 다른 나라, 다른 직업. 하지만 그의 말은 계속해서 제 마음을 울렸죠.

‘지(地)의 서’에서 이런 구절이 있어요:

“완전해지려면 다른 형태의 수련을 보고, 그 원칙 중 일부를 자신의 기술에 받아들여야 한다. 왜냐하면 결국 모든 것은 특정한 특징만 제외하면 동일하다는 걸 알게 될 것이기 때문이다.”

지(地)의 서 - 기본

”수련이 없다면? 어떻게 이상을 진정으로 실현할 수 있겠는가?”

수련은 전문 소프트웨어 개발자와 해커를 가르는 기준이에요. Clean Coders의 누구에게나 물어보세요. 테스트 주도 개발, 지속적 통합, 집단 소유권 등 긴 목록을 들려줄 거예요. 이런 원칙들이 팀이 “조화롭게 일할” 수 있게 하고 품질을 보장하죠.

”모두가 자신의 도구에 책임이 있다.”

맞아요! 직접 만든 도구보다 더 잘 맞는 건 없어요. 오픈소스 라이브러리를 수정하거나, 드물게는 유료 제품을 쓸 수도 있죠. 하지만 자신만의 도구를 만드는 기회를 두려워하지 마세요.

”기술자는 모든 도구를 능숙하게 다뤄야 한다.”

사람들이 스스로를 “자바 개발자”, “프론트엔드 개발자”로 분류할 때 움찔해요. 왜 스스로를 제한하나요? 무사시의 말을 들으세요! 소프트웨어 장인이 되세요. 어떤 도구나 기술도 두려워하지 마세요!

수(水)의 서 - 흐름

”연습과 실전은 같은 것이다.”

먼저, 연습. 업무 외 시간에, 개인적으로 코드를 작성하나요? 장인의 길로 나아가려면 연습이 필수예요. 게다가 일할 때와 같은 방식으로 연습해야 해요. 개인 프로젝트에서도 업무에서 쓰는 원칙을 사용하세요.

”기술에 사용 가능한 최고의 도구를 사용하는 것이 중요하다.”

많은 개발자가 자바스크립트로 시작해요. 왜냐고요? 배우기 쉬우니까요. 너무 많은 사람들이 거기서 멈춰요. 자바스크립트가 최고의 도구인가요? 가끔, 브라우저에서 실행해야 하는 코드에는요. 하지만 대부분은 자바스크립트가 끔찍한 도구고, 다른 언어가 훨씬 낫죠. 항상 더 나은 언어, 에디터, 셸 명령어, 도구를 찾아야 해요.

화(火)의 서 - 열정

”최고 수준에 도달하려는 모든 상황에서 개인 성장을 위해서는 충돌이 필요하다.”

성장하려면 안전지대를 벗어나야 해요. 30년 경력의 프로그래머가 한 소프트웨어, 한 언어, 같은 도구로만 해마다 일했다고 상상해보세요. 그가 장인일까요? 아마 아니에요. 1년의 경험을 30번 반복한 거죠.

여정이 장인정신의 일부예요. 기술에서 모험적이어야 하고, 새로운 기법을 시도하고, 항상 배워야 해요.

”검은 띠는 포기하지 않은 흰 띠다.” - Master C.

끈기는 장인들의 보편적인 특징이에요. 도전적인 문제를 찾으세요. 함수형 프로그래밍, 임베디드 코드, GUI 프로그래밍에 겁먹었나요? 그 두려움을 포용하고 정복하세요.

풍(風)의 서 - 당신이 신경 쓸 필요 없는 것들

”많은 이들이 ‘본질이 아닌 허식’을 가르치려 할 것이다.”

장인의 경지에는 지름길이 없어요. 하드워크와 수년간의 헌신이 필요하죠. 그래도 사람들은 지름길을 찾아요. 최근 프로그래머들이 찾는 지름길은 AI예요. 네, AI는 훌륭한 도구가 될 수 있어요. 저도 가끔 써요. 하지만 현 상태에서 AI는 당신을 자신 있게 실패로 이끌 수 있어요. 경고 신호를 알아채고 함정을 피하려면 숙련된 실무자가 필요해요.

”허풍과 어리석은 행동은 다른 이들에게 재미를 주고 당신의 행동을 비웃게 할 것이다.”

우리 모두 그런 사람 알죠. 민망해요. 스티븐 시걸이나 헐크 호건처럼 사람들을 즐겁게 하고 웃기는 게 일이 아니라면, 겸손이 당신에게 잘 어울릴 거예요.

공(空)의 서 - 무(無)

이 책은 아직도 곱씹고 있어요. 아마 남은 인생이 필요할 것 같네요.

”나의 전략 철학 전체가 이 짧은 무(無)의 책에 담겨 있다."

"당신을 더 나아지게, 더 강해지게, 더 부유하게, 더 빠르게, 더 똑똑하게 만들 수 있는 것은 당신 밖에 아무것도 없다는 걸 깨닫고 받아들일 때, 무(無)를 이해하게 될 것이다.”

  • “아는 것은 하나(one thing)”
  • “깨닫는 것은 무언가(some thing)”
  • “되는 것은 무(無, no-thing)”
  • “당신이 바로 그 본질 자체다”

저자 소개: Micah Martin은 소프트웨어 장인정신 운동의 선구자로, 8th Light 창립자이며 Software Craftsmanship Manifesto 작성자 중 한 명입니다. 현재 Clean Coders에서 일하고 있습니다.

참고: 이 글은 Micah Martin이 Clean Coders 블로그에 게시한 아티클을 번역하고 요약한 것입니다.

원문: I Am Samurai: Software Craftsmanship and the Way of the Warrior - Micah Martin, Clean Coders (2024년 10월 20일)

생성: Claude (Anthropic)

총괄: (디노이저denoiser)