책이름 : 소프트웨어 장인
저자 : 산드로 만쿠소
출판사 : 길벗
빠르고 빠른 짧은 피드백 루프를 통해 올바른 일을 하는지 점검하는 과정
팀원의 역할은 지시 받은 일만 하는 것이 아니라, 비지니스와 고객창출에 개발자들이 직접 참여하는 것이 중요
코드를 잘 작성하는 것은 프로페셔녈이 가져야 할 최소한의 요건이며, 고객의 만족이 최우선이 되어야 한다.
완전한 애자일 전환이란 절차과 도구의 도입 뿐만 아니라 기술적인 탁월함 (= 개발자의 프로페셔널) 모두 함께 있어야 한다.
변화와 싸우는 것이 아니라 변화 자체를 내제화 한 것.
애자일 방법론이 품질 상태에 대해 알려주진 않기 때문에 소프트웨어 장인 정신이 이 부분을 보완해준다.
개발자가 선택한 커리어에 책임을 지고, 지속적으로 새로운 도구와 기술을 익히며 발전해나가겠다는 마음가짐.
커리의 주인공은 나.
기술적인 실행관례보다 사회적 활동, 태도에 가깝다.
프로페셔널리즘 : 나 자신과 팀 동료들 그리고 관리자들과 고객들에게 정직함을 의미한다.
제품오너가 원하는 것은 아무런 문제없이 의도대로 동작하는 시스템이며 그에 대한 책임은 개발자인 우리에게 있다.
개발이라는 업의 수준을 사회적/기술적으로 높이는 것. 개발 직무의 위상을 높히는 것.
단위 테스트는 우리가 코드를 작성하는 방식에 녹아 있을 뿐, 별도의 작업이 아니다.
레거시 코드를 고통스러운 전생의 업보로 보는 것보다 재밌고 도전적인 문제로 바라보아야 한다.
리팩토링은 전체 한꺼번에 수정하는 것이 아니라 자주 변경되는 부분을 대상으로 시작하여 수정하는 것이다.
채용공고에는 사용기술, 필수 기술 나열보다 특정기술에 대한 경험을 우대 하여야 한다. (경력, 전공, 학위 X) ex) TDD, BDD, 리팩토링, 페어프로그래밍 등의 경험
채용공고에는 회사 문화, 가치와 프로젝트 상세내용이 담겨져 있어야 한다. (지원 조건은 참조자료로만 사용되어야 함)
추천 채용제도는 보상이 있어선 안된다.
리크루트 에이전시를 활용한 채용은 최후의 수단으로 생각해야 한다.
질문 만은 지원자를 우선시 해야 한다.
지원자의 지식이 아닌 태도, 재능, 열정, 잠재성을 봐야 한다.
새로운 팀은 프로젝트 성공 과거 경험이 중요하고, 기존의 팀이라면 최종까지 고통 속에서 이끌어본 경험을 중요시해야 한다.
개발자 면접은 개발자가 봐야 한다.
면접관이 똑똑한 척 하는 것 (= 지원자를 바보 만드는 것)
코딩 면접시 인터넷 검색을 막는 거나 손 코딩 하는 것
알고리즘 면접이나 전화면접
지원자는 일자리를 구걸하는 자리가 아니다, 비지니스 협상을 하는 것.
면접관이 실무자인지 관리자인지도 중요하다.
좋은 면접은 토론과도 같다.
북클럽, 테크런치, 그룹토론회, 업무교환하기, 코드리뷰, 내부학습모임, 펫 프로젝트 허용
유능한 개발자라면 TDD 때문에 개발일정이 지연되지 않는다.
특별한 이유없이 코드를 열어서 재정리하는 것은 아무런 의미가 없다.
가장 훌륭한 코드는 작성할 필요가 없는 코드 이다.
단순 설계의 4가지 원칙 : 모든 테스트 통과, 중복의 최소화, 명료성과 최대화, 구성요소의 최소화
애자일에서 더 나아간 개념과도 같은 '장인정신'에 대한 책.
더 나은 개발자가 되고싶은 마음가짐이 궁금하다면 꼭 읽어봐야 할 책
리더가 된다면 한 번 쯤 다시 읽어봐야 할 책.