▶ Introduce
개발자에게 비젼을 제시해주는 책
이 책은 개발을 어떻게 해야하는지에 대해서 내용을 담고 있을뿐더러 개발하는 사람의 목표를 어디까지 두어야 하는지를 담고 있는 책입니다. IT 개발의 기본 개념은 다른 무수한 원천 기술을 통해서 응용을 하는 경우가 대부분일 것 입니다. (안 그런 부분도 있지만 그런 분들은 엄청난 내공(?)을 가지고 계신분들이기 때문에 여기에서의 언급은 제 스스로를 위해서라도 안하는게 좋을 것 같네요.)
그래서, 응용 기술을 하는 입장에서 잘났다고 난척할 필요도 없고 별볼일 없다고 치부해서도 안된다고 생각합니다. 여기에서 미래의 비젼이 갈라진다고 할 수 있습니다.
"고품질 쾌속 개발" 이라는 화두 뒤에는 무었이 있을까요?
남는 시간이 있을 것 입니다.
이 시간을 잘 이용하고 이를 통해서 Level Up과 다음에 무엇을 할 것인가? 미래를 위해서 무엇을 준비할 것인가를 고민해야 합니다.
개발을 하는 사람들과 이야기를 해보면 몇가지 유형으로 나눌 수가 있더군요.
1. 자기가 아는 것만 할려는 사람
- 조직에 적합하지 않는 사람 : Paltform을 개발하거나 기반 기술을 하는냐? 아니다.
- 적합하지 않는 일만 할려는 사람 : 직장이나 조직은 목표가 있는데 Road Map 문제가 있다.
2. 많은 것에 대한 기술에 관심은 가지고 있지만 적용하기 힘든 사람
- 남에게 일을 만들어 줄려는 사람 : 기술만 검토해주는 사람
- 적합하지 않는 일만 할려는 사람 : 학교의 동호회 수준으로 생각하는 사람 ...
3. 아무 생각이 없는 사람
- 고민이 없는 사람 : 시키는 대로만 하겠다는 ...
- 욕심만 앞서는 사람 : 잘 모르면서 설계나 PM 업무는 언제하냐고 투덜대는 ...
- 자기 주도의 사람 : 기회가 생기면 자기는 잘 할꺼라고 호헌장담하는 사람
4. 다 잘하는 사람
- 천부적인 재능이 있는 사람
- 노력하는 사람
이 모든 종류의 사람들이 늘 고민하는 것은 일찍 집에 가는 것일 것 입니다.
(정말 안 그런 사람들도 있기는 하지만 ... 그렇게 바람직하다고 생각지는 않습니다.)
하지만, 세상은 알고있는 것 하나만 가지고 살 수 있는 세상은 아니더군요.
그러면, 과연 각자의 성향에 따른 목표가 있을 것인데 좀더 가치있는 일을 하고자하는 고민은 없어보입니다. (물론, 저에게만 국한된 이야기이기는 합니다만 ... 오해가 없었으면 합니다.)
앞으로의 세상에는 많은 기반 기술들이 난무할 것이고 (지금도 마찬가지입니다.) 사라질 것 입니다.
이들 기술을 다 배우는 것은 무리이지만 ...
따지고 보면 그런 기반 기술 역시도 세상에서 툭하고 떨어진 기술들은 아니라고 생각합니다.
본인은 개발에서 손뗀지 정말 오래 되었지만 이 책을 통해서 개발을 하고 있는 직접적으로 연관된 동료들과 함께 이 책에 대해서 심각한 논의를 해 보았습니다.
아울러 다소 개발과 연관없는 이야기라고 생각이라도 생각과는 다르다고 딱닥한 의견보다는 진솔한 의견이 있다면 좋겠습니다.
▶ Prolouge
그렇다면 개발자하는 사람이라면 집에 일찍 갈 수 있을까?
소프트웨어의 품질을 높이는 방법이라는 의미를 다르게 이야기 해보면 착오를 없애는 길이고 좀더 쉽게 이야기하면 두번 세번 해야 할 일들을 한번에 줄이는 것입니다.
개발자가 평생 개발을 할 것이 아니라면 마인드가 좀 바귀어야 할 것 이고 ...
가져다가 쓰는 기술인 경우 그것을 활용하는 입장이라면 좀 더 열린 마인드를 가지고 있어야 할 것 이다.
다른 것보다 이 책에서 주목할 만한 내용들은
1. 전문가들의 인터뷰
2. 저자의 한마디를 들 수 있다.
가지 않아야 할 길에 대해서 자세히 이야기 하고 있고 본인은 개발에서 손을 놓은지 좀 되지만 ...
이런 책을 오래 전에 보았다면 개발하면서 막막할 수도 있는 순간에 해결점을 찾을 수 있는 많은 조언과 해결 방법들이 있습니다.
▶ Result
그래도 중요한 것은 마인드 ...
아주 좋은 개발 방법론이나 실천 및 도구가 있다고 해도 업무에 대한 마인드가 무엇보다 가장 중요하다고 할 수 있다.
그런 점에서는 다소 만능 일 것 같아보이는 표현들이 좀 거북하기는 하지만 좀처럼 찾아보기 힘든 책 중 하나로 볼 수 있다.
테스트 주도의 개발이라는 말은 다르게 말해서 다른 사람과 같이 개발 방법 및 품질에 대한 고민을 해야지 이루어 낼 수 있는 성과이다.
아무리 혼자서 개발을 완벽하게 한다고 해도 1인 개발 체계인 경우를 제외하고는 절대로 순수하게 잘 될 것이라고 판단을 하는 것은 무리라고 생각을 한다.
정형화된 개발에 대한 절차가 없는 스타일의 개발 조직이라면 늘 땜질에 고객의 요구에만 끌려다니게 되고 변명처럼 시간이 부족하다고 말만 나올 뿐이다.
일은 회피하는 것이 아니라 적극적인 마인드로 수용이 되어야 하는 것이고 그러기 위해서는 생산성 및 품질을 회사의 요구에 의해서 진행이 되어야 하는 것이 아니라 개발자들의 기본 소양이라는 것을 잘 알려준 책이다.