소프트웨어 장인

소프트웨어 장인

The Software Craftsman - Professionalism, Pragmatism, Pride


산드로 만쿠소 지음, 권오민 옮김, 길벗 출판사

어떻게 하면 더 나은 프로그래머가 될 수 있을까?

image

소프트웨어 장인


결론부터 말하자면, 나에게는 아주 훌륭한 책이었다.

나는 평소 개발자를 장인 혹은 기능공 같은 직업이라고 여기고 있었다. 러프하게 상상해보자면 대장장이나 목공같은?


image


예를 들어 내가 좋은 의자가 필요해져 어떤 의자 장인에게 좋은 의자를 만들어달라는 의뢰를 맡긴다고 가정하자.

이때 나는 의자에 대해 아무것도 알지 못하기 때문에 그냥 별 생각없이 등받이를 최대한 길고 넓적하고 푹신하게 해달라 요구할 수도 있다. 실제로는 이 요구사항이 내 신체에 좋지 않은 영향을 끼칠수도 있지만 나는 의자에 대한 지식이 전무하기 때문에 이를 알지 못할수도 있다.

훌륭한 장인이라면 이러한 나의 요구사항을 듣자마자 내 신체조건과 의자가 놓일 환경 등을 모두 고려한 다음 그에 대한 전문가로서의 의견을 고객인 나에게 알려줄 것이다.


나는 개발도 이와 비슷하다고 생각한다.

나에게는 항상 불특정한 누군가가 요구사항들을 전달해온다.

나는 이러한 요구사항들을 받으면 그 요구사항이 정말 우리의 상황에 합당한것인지를 먼저 파악하는데 모든 노력을 기울인다.

우리 일상생활에서 발생하는 문제들을 해결하는 방법은 정말 많다.

애초에 해결할 필요가 없는 문제이지만 문제로 인식하는 경우도 있을 수 있다.

또한 대부분의 문제는 생각보다 쉽게 해결되는 경우도 많다. Simple is best라는 말도 있지 않나?

즉, 요구사항을 무조건 수용하는 것이 아닌, 이러한 사고를 먼저 거친 후 요구사항과 달리 더 좋다고 생각되는 해결방안이 떠오른다면 나의 고객, 나의 상사, 나의 동료들에게 이러한 방안을 역제안 해보는 절차가 반드시 필요하다고 생각하고 있었다.


나는 왜 이런 가치관을 갖게 됐을까?


위 질문에 대답하려면 내 인생사를 가볍게 되돌아봐야 한다.

흙수저였던 나는 16살에 군대를 가지 않고 그 시간에 돈을 벌어야겠다는 마음을 먹었었으며, 19살의 어린 나이부터 30살까지 무려 11년동안 쉬지않고 사회생활을 해오고 있다.

그리고 이렇게 열심히 일해 모은 돈으로 최근에는 내 명의의 집도 하나 가질 수 있었다.

이 사건은 장담컨데 내 불우한 인생에서 최고의 업적이다.

나는 평생동안 약 20번에 가까운 이사를 해왔는데, 이러한 경험으로 인해 나만의 집을 가져보는게 너무 절실했었기 때문이다.

어린 나이부터 이렇게 긴 기간동안 일해온 당위성에 대해 설명하기 위해 약간 쓸데없는 말을 좀 했는데, 이러한 삶을 살아온 나는 어느 순간부터 기본적으로 돈을 받고 일을하는 순간부터 프로라는 생각을 가지게 됐다.

아니, 정확히는 이런 마인드가 자연스럽게 생길수밖에 없었다. 내가 겪어온 사회는 가혹했기 때문이다.

세상 물정을 모르는 어린 나이에 악덕 사장에게 임금체불도 당해봤고, 악덕 상사에게 폭언 폭행도 당해봤다. 나는 온실속의 화초가 아닌 온실밖의 잡초였다.

이 가혹한 사회에서 살아남으려면 강한 멘탈, 좋은 마인드, 그리고 무엇보다 누구도 나를 무시할 수 없는, 나를 존중해줄 수 밖에 없는 실력을 키워야 한다는 생각이 나를 점점 지배했다.


내가 가장 좋아하는 인용구가 있다.


나무에 앉은 새는 가지가 부러질까 두려워하지 않는다.


새에게는 날개가 있기 때문에 나뭇가지가 부러지면 날아가면 그만이다.

따라서 나뭇가지가 부러지는걸 두려워하지 않는다.


내가 훌륭한 실력을 갖는다는 것은 사회, 시장에서 나만의 유의미한 경쟁력을 갖는다는 말과 일맥상통한다.

나의 가치가 유의미해진다면 나는 타인의 부당한 압력에 굴할 필요가 없다.

당당해질 수 있다. 왜냐하면 언제든지 다른 선택지를 고를 수 있기 때문이다.

이러한 자신감 넘치는 태도는 내 고객에게 신뢰를 줄 것이고, 고객이 나를 믿는다면 나는 내 일에 더욱 더 집중할 수 있게 된다.


개발자로서의 커리어는 아직 채 일년이 되지 않았지만, 돌이켜보면 현재 내가 개발하는 모든 것은 우리 사회의 어떤 문제를 해결하고 이를 통해 돈을 벌기위한 일련의 행위들이며, 결과적으로 나는 개발을 해서 돈을 벌기 때문에 개발자로서의 나는 프로다.

이 책은 개발자를 장인 혹은 지식노동자로 표현하고 있으며(즉, 전문가다) 온통 개발자로서의 프로페셔널리즘에 대한 이야기로 가득하다.

그리고 이는 평소 내가 갖고 있던 가치관에 한점의 모호함도 없이 자연스럽게 어울리고 있었다.

그래서 정신없이 몰입하며 읽을 수 있었던 것 같다.

사람마다 좋은 개발자에 대한 정의가 모두 다르겠지만, 이 책이 전달하고자 하는 의미중 대부분은 내가 생각하는 좋은 개발자에 부합했으며, 내가 앞으로 가져야 할 프로로서의 마음가짐과 삶의 태도에 대해 확실히 가이드해주었다.


자율성, 통달, 목적의식

다니엘 핑크의 저서 원동력: 동기부여에 대한 놀라운 진실에서 돈은 충족되어야 할 기본 조건이고, 지식 노동자를 움직이는 것은 자율성, 통달, 목적의식 이렇게 세 가지라고 이야기하고 있다.

  • 자율성: 우리가 무엇을, 어떻게, 언제할지 통제할 수 있는 상태를 뜻한다.
  • 통달: 더 나은 프로페셔널, 더 나은 인간이 되기 위해 계속 배우고 진화하는 것을 뜻한다.
  • 목적의식: 지금 하고 있는 일이 중요하고 무언가를 더 나아지게 하고 있다고 느끼는 것을 뜻한다. 아무런 이해없이 시키는 대로만 일하는 것의 반대 개념이다.

일에 대한 보상을 받는 프로페셔널이라면 고객에게 가치를 제공할 의무가 있다. 그런데 일에는 금전적 보상보다 더 큰 의미가 있다. 일은 단지 돈을 벌기 위해 참아야 할 고통이 아니다. 일을 선택할 때는 자율성, 통달, 목적의식을 쫓아야 한다. 장인이라면 일을 선택할 때 이 세가지를 반드시 고려해야 한다. 그러한 조건을 만족시켜줄 일 또는 직장을 찾는 것이 쉽지는 않지만 분명히 존재한다. 우리가 그러한 일을 맡을 준비가 덜 된 것일 수도 있다.



© 2022. All rights reserved.