나는 사무라이다: 소프트웨어 장인정신과 무사도
게시일: 2025년 11월 22일 | 원문 작성일: 2024년 10월 20일 | 저자: Micah Martin | 원문 보기
핵심 요약
- 무사도와 소프트웨어 장인정신의 교차점: 미야모토 무사시의 철학은 400년이 지난 지금도 현대 소프트웨어 개발에 적용 가능합니다.
- 다섯 가지 링(오륜서)의 교훈: 땅(기초와 규율), 물(자연스러운 흐름과 연습), 불(열정과 도전), 바람(허식 배제), 공(무)의 원리가 소프트웨어 장인에게 주는 지혜
- 지속적인 학습과 겸손: 마스터리로 가는 여정은 끝이 없으며, 한 경로의 끝은 다음 경로의 시작입니다.
- 규율의 중요성: TDD, CI, Collective Ownership 같은 규율이 전문가와 해커를 구분합니다.
우리(Clean Coders)는 사무라이입니다
아니, 우리가 카타나를 들고 다니거나 결투를 하는 건 아니에요. 하지만 우리는 무사도를 실천합니다 - 전사의 길, 바로 소프트웨어 장인정신이죠.
소프트웨어 장인에게 코드를 작성하는 것은 단순한 직업이 아닙니다. 삶의 방식이에요.
저는 오랫동안 소프트웨어 장인정신의 옹호자였습니다:
- 2006년, 8th Light, Inc.를 설립했어요. 이름은 제가 수련했던 무술인 팔광류(Hakkoryu) - 유술의 여덟 번째 빛의 길에서 따왔습니다. 제 재임 기간 동안 8th Light는 소프트웨어 장인정신의 가치를 구현했어요.
- 2009년, 소프트웨어 장인정신 서밋을 조직해서 소프트웨어 장인정신 선언문을 작성했습니다. 상단에 제 서명을 볼 수 있을 거예요. 우리 팀이 앱을 만들었고, 그들이 저보다 먼저 서명했죠.
- 몇 년 동안 제 회사가 SCNA - Software Craftsmanship North America를 조직했고 제가 호스트를 맡았어요. 우리 장인정신의 원칙을 공유하기 위해 동료들을 모으는 자리였죠.
- 현재 Clean Coders 팀이 정말 자랑스러워요. 그들은 제가 “우리는 사무라이 집단이며, 마스터리로 가는 여정에서 서로를 돕는다”고 말하는 걸 수없이 들었을 거예요.
미야모토 무사시
미야모토 무사시는 가장 유명한 사무라이입니다(일본 봉건시대의 진짜 사무라이요). 62번의 결투에서 모두 승리했고, 대부분은 죽음을 건 결투였어요! 무사시는 너무 뛰어나서, 유명한 일화 중 하나는 결투 장소로 가는 배에서 노를 깎아 만든 나무 검으로 나타났다는 거예요. 쉽게 말해, 막대기 하나 들고 나타나서… 이겼어요.
전사이자 검객으로서 긴 삶을 산 후, 무사시는 은둔 생활을 택했어요. 동굴에 살면서 그의 대작인 오륜서(The Book of Five Rings)를 집필했죠. 이 책에서 그는 자신의 철학과 길을 기록했고, 완성 직후 세상을 떠났습니다. 그게 거의 400년 전 일이에요.
무사시는 장인이었습니다. 저는 종종 그의 장인정신을 소프트웨어 장인정신과 비교해요. 그는 무사도를 실천하며 전사의 길을 살았죠. 그의 장인정신에 대한 헌신은 전설적입니다. 그리고 저는 무사시를 전설로만 알고 있었어요… 최근까지는요.
4년 전, 제 막내아들과 나중엔 아내가 켄포 가라테를 함께 하자고 해서 합류했어요. 가족과 함께 배우고, 무술의 세계에 다시 들어가며, Legacy Martial Arts의 멋진 사람들과 수련하는 건 정말 즐거웠어요. 블랙벨트 시험 준비를 위한 선택 도서가 있었는데요. 기쁘게도 Calentog 사범님이 오륜서를 선택하셨어요. 정확히는 Stephen F. Kaufman의 번역본 - Musashi’s Book of Five Rings for Everyone이었죠. 무사시에 대해 더 배우고 그의 말(번역본이지만)을 직접 알 수 있는 좋은 기회였어요!
이제 무사시의 오륜서를 간단히 살펴보려고 합니다. 각 책에서 몇 가지 핵심적인 인용구를 선택하고 약간의 해설을 추가했어요.
거울을 들여다보다
오륜서의 처음 몇 페이지에서 충격을 받았어요. 400년 전 전설로만 알고 있던 사람이 쓴 이 말들이… 너무 익숙하게 들렸어요… 마치… 저 같았어요. 장인정신을 제외하면 저는 무사시와 공통점이 전혀 없어요. 우리는 다른 시대, 다른 나라, 다른 직업에서 왔고, 말할 것도 없이 저는 죽음을 건 결투를 단 한 번도 해본 적 없어요. 62번은 고사하고요. 하지만 계속 읽으면서, 그의 말이 얼마나 친숙하게 다가오는지 놀라움을 금할 수 없었습니다.
땅의 책(The Book of Earth)에서 예를 들어볼게요:
이걸 “The Wondering Book - Zeitgeist of the Software Craftsmanship Movement”에 제가 쓴 항목과 비교해보세요:
[원문에는 Micah의 Wondering Book 항목 이미지가 있습니다 - 다양한 분야에서 배우고 소프트웨어 장인정신에 적용하는 내용]
땅의 책 (The Book of Earth)
다섯 개의 링 중 단연 가장 장황한 이 책은 기초에 관한 거예요. 검술의 기초가 아니라 모든 예술이나 장인정신의 기초 말이에요. 저는 다섯 링이 모두 검술이나 전투에 관한 것이라고 생각했어요. 틀렸어요. 그 주제는 책 전체에서 두세 번 정도 짧게 언급될 뿐이에요. 무사시가 공유한 지혜는 장인정신 전반에 적용 가능합니다.
”규율이 없다면? 어떻게 이상의 진정한 실현이 있을 수 있겠는가?”
규율은 전문 소프트웨어 개발자와 해커를 구분하는 요소입니다. Clean Coders의 누구에게나 규율에 대해 물어보세요. 긴 목록을 줄줄 읊을 거예요: Test Driven Development, Continuous Integration, Collective Ownership 등등. 이런 것들이 우리 팀이 무사시가 말한 “조화롭게 일하도록” 하고 품질을 보장해줘요. 규율 없는 소프트웨어 개발자는 품질을 보장할 수 없고 코드의 혼란 속에서 길을 잃게 됩니다.
”모두가 자신의 도구에 책임이 있다.”
맞아요! 직접 만든 도구보다 자신의 필요에 더 잘 맞는 도구는 없어요. 수정할 수 있는 오픈소스 라이브러리가 있을 수도 있고, 덜 흔하지만 여유가 된다면 문제를 해결해줄 유료 제품도 있을 수 있어요. 하지만 자신만의 도구를 만들 기회를 두려워하지 마세요.
”기술자는 업계의 모든 도구에 능숙해야 한다.”
사람들이 스스로를 “Java 개발자”, “프론트엔드 개발자”, 또는 “특정 분야만 하는 개발자”라고 부를 때 움찔해요. 왜 자신을 제한하나요? 무사시의 말을 들으세요! 소프트웨어 장인이 되세요. 어떤 도구나 기술도 두려워하지 마세요!
물의 책 (The Book of Water)
물은 자연스러운 흐름을 가지고 있어요. 우리의 경우 “그것 자체의 정신”, 즉 소프트웨어 장인정신의 정신도 그렇습니다.
”연습과 실전은 같은 것이다.”
먼저, 연습. 여러분은 연습하나요? 근무 시간 외에, 개인 시간에 코드를 작성하나요? 마스터리로 가는 길에서 발전하려면 연습이 필수예요. 더 나아가, 업무에서 수행하고자 하는 방식으로 연습해야 해요. 사이드 프로젝트에서도 회사에서 일할 때 사용하는 규율을 그대로 활용하세요.
”장인정신을 위해 사용 가능한 최고의 도구를 사용하는 것이 가장 중요하다.”
많은 개발자가 자바스크립트를 배우면서 시작해요. 왜? 배우기 쉬우니까요. 너무 자주 거기서 멈춰버려요. 자바스크립트가 최고의 도구인가요? 때로는 그래요. 브라우저에서 실행되어야 하는 코드의 경우요. 더 자주는, 자바스크립트는 끔찍한 도구이고 다른 프로그래밍 언어가 훨씬 더 나은 일을 해내요. 항상 더 나은 언어, 에디터, 셸 명령어, 그리고 일반적으로 더 나은 도구를 찾으세요.
”장인, 전문가, 위대한 연주자들이 일하는 와중에 손동작과 몸의 움직임으로 감정을 표현하는 것을 지켜보라.”
거장들이 일하는 모습을 보는 건 즐거움이에요. 정확성, 기교, 효율성… 아름다워요. 무술가들이 스파링하는 모습이든, 그랜드마스터들의 속도 체스 게임이든, 목수가 테이블을 만드는 모습이든 말이에요. 인정하고 싶진 않지만 유튜브에서 이런 콘텐츠에 매료되곤 해요. 여기에 소프트웨어 장인이 코드 카타를 수행하는 모습도 포함되죠. 장인정신과 관계없이, 마스터리 또는 그 부족함은 즉시 드러나요.
불의 책 (The Book of Fire)
불은 열정이고, 장인정신에서 뛰어나려면 불을 계속 지펴야 해요.
”탁월함의 최고 수준으로 올라가려는 모든 상황에서 개인의 성장을 위해서는 갈등이 필요하다.”
성장하려면 안전지대를 떠나야 해요. 30년 경력의 프로그래머를 상상해보세요. 한 소프트웨어에서, 같은 언어로, 같은 도구를 사용해서, 해마다 일하는 거죠. 그는 마스터인가요? 아마 아닐 거예요. 1년의 경험을 30번 반복한 것뿐일 가능성이 높아요.
여정은 장인정신의 일부입니다. 우리는 장인정신에서 모험적이어야 하고, 새로운 기술을 시도하며, 항상 배워야 해요.
”’그것 자체의 정신’을 끊임없이 추구하는 것은 당신 안에서, 당신으로서, 당신을 통해 자신의 완벽함을 더 많이 드러내는 것이다.”
Master C.가 말하길: “블랙벨트는 포기하지 않은 화이트벨트다.” 인내는 거장 장인들의 보편적인 특성이에요. 도전적인 문제를 찾아보세요. 함수형 프로그래밍 언어나 임베디드 코드, GUI 프로그래밍이 두렵다면요? 그 두려움을 받아들이고 정복하세요.
”모든 시작에는 끝이 있고, 모든 끝에는 시작이 있다. 일단 정신, 영혼, 마음의 새로운 자유를 얻으면, 한 경로의 끝이 다음 경로의 시작임을 알게 될 것이다.”
정말 위안이 되는 말이에요. 항상 더 배울 것이 있고, 더 성장할 것이 있으며, 더 즐거울 것이 있다는 걸 아는 거죠. 이는 특히 소프트웨어에서 사실이에요. 풍경이 항상 변하고, 계속 움직이지 않으면 업계가 여러분을 지나쳐갈 테니까요.
바람의 책 (The Book of Wind)
신경 쓸 필요 없는 모든 것들의 유쾌한 목록이에요.
”많은 사람들이 ‘내용 대신 허식’을 가르치려고 할 것이다. 모든 예술이나 규율의 마스터리에는 불합리한 것들이 넘쳐날 것이다.”
마스터리에는 힘든 작업과 수년간의 헌신이 필요하다는 사실을 피할 방법은 없어요. 그렇다고 사람들이 지름길을 찾는 걸 막지는 못하죠. 최근 제가 보는 프로그래머들이 손을 뻗는 가장 대표적인 지름길은 AI예요. 네, AI는 훌륭한 도구가 될 수 있어요. 저도 가끔 사용해요. 하지만 현재 상태에서 AI는 자신 있게 여러분을 실패의 길로 데려갈 수 있어요. 경고 신호를 식별하고 함정을 피하려면 숙련된 실무자가 필요해요.
”허풍과 어리석은 행동은 다른 사람들에게 재미있을 수 있고 그들이 당신의 몸짓을 보고 웃게 할 수 있다.”
우리 모두 그런 사람을 알아요. 민망하죠. Steven Seagal이나 Hulk Hogan처럼 사람들을 즐겁게 하고 웃게 만드는 게 직업이 아니라면, 겸손이 도움이 될 거예요.
”다른 사람들이 당신의 삶과 일에 대한 접근 방식에 대해 어떻게 생각하는지는 중요하지 않다.”
이건 십 대 때 유술 선생님인 Mike Sabo에게서 배운 소중한 교훈이에요. 사람들이 자신에 대해 어떻게 생각하는지 신경 쓰는 건 무거운 짐이에요. 신경 쓰지 않는 순간, 어깨에서 무게가 벗겨지고 자유로워져요. 그리고 일단 자유로워지면, 자신으로서, 그리고 “그것 자체의 정신”으로서 번영할 수 있어요.
무(無)의 책 (The Book of No-thing)
저는 아직도 이 책을 씹어먹는 중이고, 소화하는 데 남은 평생이 필요할 것 같아요.
친애하는 독자 여러분, 제 블로그를 여기까지 읽어주셔서 감사합니다. Stephen F. Kaufman의 책 - Musashi’s Book of Five Rings for Everyone을 읽어보시길 권해요. Clean Coders 북클럽에서 이 책을 목록 최우선으로 올리도록 권장할 생각이에요.
이제, 무(no-thing)를 설명하려고 하기보다는, 이 인용구들을 남기겠습니다.
”나의 전략 철학 전체가 이 짧은 무의 책에 요약되어 있다. 생각해보면 혼란스럽지 않다."
"우주는 공허이며, 그것은 무이다."
"오륜서를 이해하든 안 하든, 당신 밖에 있는 어떤 것도 당신을 더 나아지게, 더 강하게, 더 부유하게, 더 빠르게, 또는 더 똑똑하게 만들 수 없다는 것을 깨닫고 받아들일 때 무를 이해하는 데 가까워질 것이다."
"전사의 길에서는 이 용어를 이해하는 데 필요한 지적 능력 외에는 사고라는 것이 없다.”
- “그것을 아는 것(KNOW)은 한 가지이다”
- “그것을 깨닫는 것(REALIZE)은 어떤 것이다”
- “그것이 되는 것(BE)은 무이다”
- “당신(YOU)”
- “은 그것 자체의 정신이다”
저자 소개: Micah Martin은 8th Light 공동창립자이자 Clean Coders 창립자입니다. 소프트웨어 장인정신 선언문 작성자 중 한 명이며, 무술 수련자로서 소프트웨어 개발에 무사도 정신을 접목시켰습니다.
참고: 본 글에서 언급된 “The Book of Five Rings”는 미야모토 무사시의 고전을 Stephen F. Kaufman이 현대적으로 번역한 버전을 기반으로 합니다.
원문: I Am Samurai: Software Craftsmanship and the Way of the Warrior - Micah Martin, Clean Coders (2024년 10월 20일)
생성: Claude (Anthropic)