본문 바로가기
행위 돌아보기/독후감상문

[The Nature of Software Development] 을 읽고나서 🔖

by simplify-len 2022. 2. 20.

책 표지

 

이 책을 읽게된 이유는 트레바리 테크유닛으로 이직을 한 뒤로 풀리지 않던 고민이 하나 있었기 때문이다.

 

코딩은 코딩이다. 개발은 개발이다. 명시적이고, 부담감이 느껴지지 않는다.

그러나 '개발 업무는 개발 업무이다.' 라고 말하는 것에 스스로 부담감을 느꼈던 적이 더러 있었다.

그 이유는 간단했다. '한 가지 개발 업무를 빨리 처리한다.' 라는 개념으로 다가가기에는 기민하게 움직여야 하는 트레바리 테크유닛에서는 쉽게 적용될수 있는 것이 아니기 때문이다.

 '이 일정까지 동작하는 소프트웨어를 보여주세요.' 라고 말한다. 적당히 일을 쪼갰고, 그 일을 하면 된다. 그런데 문제가 있다. 이 일정까지 동작하는 코드를 단순히 동작되게만 하면 되는걸까? 아니다. 일정한 속도로 테스트 할 수 있는 환경과 기반 그리고 품질높은 코드를 만들어내야만 한다. 동시에 가장 중요한 한가지 '무조건' 가치를 전달해야 한다.

 

 즉, 개발 업무는 개발 업무이지만, 가치를 전달해야만 한다. 그러기 위해서는 더 나은 코드를 만들어내야만 한다. 만약 요구사항이 변경되더라도 쉽게 변경가능해야 한다. 지난 과거를 돌이켜보면 큰 회사에서 근무할 적에는 '개발 업무는 개발 업무이다.' 라는 말이 부담감이 전혀 느껴지지 않았던 환경이였다.

 

 이 책은 내가 가졌던 풀리지 않는 고민을 시원하게 해결해주는 책이였다. 나의 생각랜드에만 머물고 있던 원칙과 가치관이 복사/붙여넣기 하듯 텍스트로 남겨져 있었다.


책의 첫번째 Chapter 를 읽으면서 내가 느꼈던 생각은 아래와 같았다.

 그리고 그 내용이 첫장부터 나와 웃음을 머금게 되었다. 적어도 내가 소속되 일하는 트레바리에서는 모든 것을 빅뱅으로 하려 하지 않는다. '어제보다는 오늘 한 발이라도 더 걸었다면 잘한 것이다' 라고 CTO 님이 입버릇처럼 이야기한다.

 한 꺼번에 많은 것을 보여주는 건 나를 잡아먹는 행위라고 말한다. 반대로, 얼마나 키보드를 잡은 내 손과 더 잘해보고자 하는 욕망을 억누를 수 있을까? 라는 고민이 든다.
 나의 소프트웨어를 기다리는 이에게 책에서 말하는 MVP 를 보여주려 한다. 여기서, MVP는 무슨 기준으로 잡을 수 있을까?  책은 `명확히 고객이 원하는 것` 이라 말한다. 그러나 언제나 나의 손과 마음은 한 스텝이 아닌 큰 점프를 해서 더 나은 서비스를 보려주려 하는 경향이 있다. "이렇게 하면 더 좋겠는데? 금방할 것같아!" 이런 식으로 말이다.

 

'개발일은 잘한다' 는 건 작은 스텝으로 가치를 만들어 전달하는 것이다. 한번에 많은 것이 변경되는 것을 의미하지 않는다. 이 책은 그것을 첫번째 챕터에서 말해주고 있다. 매우 중요한 가치라 생각한다. 트레바리 테크유닛은 이미 이것을 리더의 철학으로부터 이어지고 있다. 그러나, 여전히 많은 회사들은 이것을 실천하는 것이 의미없다고 말한다.

 


위에서 말하는 작은 스텝은 무엇이 될 수 있을까? 책에서는 Feature 단위라 말한다.(CTO님께서 말한 스텝이 Feature 단위인지는 정확히 모르겠다.) Feature 단위로 개발하는 것이 무슨의미를 갖는지- 이것이 왜 중요한지에 대해서 이 책은 설명한다.

 

 작은 Feature 단위로 개발 시 소프트웨어의 가치를 성장할 수 있게 한다. 또한 비용을 줄일 수 있는데, 그 이유는 변경사항이 있을 때 들어가는 비용을 최소화 할수 있기 때문이다. 작은 Feature 단위의 개발은 매순간 어떤 것을 개발할지 선택하는 과정에서 최선의 선택을 할 수 있게 도와줄 것이기 때문이다. 또한 소프트웨어의 방향성을 정하는 제품 책임자 관점에서도 Feature 단위로 제품을 바라보기 때문에 더 나은 선택지를 만들어 낼 수 있다고 한다.

 


이 부분이 흥미로웠던  또 다른 부분은 '제품이 가진 특징을 다듬으세요.' 라는 부분이였다.


 내가 개발하는 또는 유지보수 하는 서비스의 특징을 한번이라도 고민해보았는가? 왜 그런 기능이 생겼는지 고민해봤는가? 이다. 속상하지만 내가 개발자로서 일한 4년간 단 한번도 없었던 것 같다.  그러지 않았기 때문에  '제품이 가진 특징을 다듬기' 라는 행위는 그만큼 더 중요하다고 생각된다.

 

트레바리는 지금까지 존재하는 서비스에 카테고리를 나눌수 있는 분야가 아니라 생각한다. 트레바리는 사람으로 시작해서 사람으로 끝난다. 그러기 때문에 트레바리 라는 제품은 흥미로운 특징을 가지고 있는 것 같다.


 그외에도 이 책이 내포하고 있는 내용은 내가 가졌던 풀리지 않는 고민에 대해서 어떻게 해야하는지 가이드해주는 책이라 생각한다.

책에 대한 자세한 독후감상문은 여기서 조금더 살펴볼 수 있다.

댓글