할 일을 기능개발로만 몽땅 채우지는 말라
시스템의 끝에서 끝까지 전체에 걸쳐 있는 단일 기능을 개발할 것을 추천한다.
개발자로서 우리의 목표는 사용자를 기쁘게 하는 것이다.
2022.05.31(화)
9장 실용주의 프로젝트
실용주의 팀은 작다. 구성원이 대략 10-12명 이하여야 하고, 구성원이 추가되거나 빠지는 일은 드물어야 한다. 모두가 서로 잘 알고, 신뢰하며, 의존해야 한다.
팀 전체가 깨진 창문을 용납하지 않아야 한다. 사소한 결점을 아무도 고치지 않고 놔두어서는 안 되고, 반드시 제품의 품질에 책임을 져야 한다.
자동화는 모든 프로젝트 팀에게 필수 불가결한 요소다. 도구 제작 역량을 팀 내에 꼭 갖추어서 프로젝트 개발과 서비스 배포를 자동화하는 도구를 만들고 적용하라.
화물 숭배의 함정은 너무 솔깃해서 빠지기 쉽다. 눈에 잘 띄는 결과물을 만드는 데만 투자하면서 기반이 되는 작업이 마법처럼 끝나 있기를 소망한다.
실용주의 프로그래머는 책임을 회피하지 않는다. 그 대신 도전을 수용하고 자신의 전문성을 널리 알려지는 것을 기뻐한다. 설계 혹은 코드를 맡는다면 자신이 보기에 자랑스러운 작품을 만들어 낼 것이다.
괜찮은 프로그래머는 무엇일까 생각했다. 나는 왜 프로그래밍을 시작했나 생각했다. 아직 그 답은 나오지 않았다. 하지만 이 책에서 작은 실마리를 찾을 수 있었다. 나는 코딩을 한동안 치지 않고 있었다. 괜찮은 기획이 없어서 괜찮은 설계가 없어서 갖잖은 핑계를 가지고 이론공부나 해대고 있었다. 프로그래머는 코드를 쳐야한다. 코드 속에서 내가 하고 싶은 말을 해야한다. 코드를 벗어나 입으로 만 떠들어대면 그건 비실용주의 프로그래머다. 내일부터 다시 코드를 친다.