더북(TheBook)

• 행동양식에 대한 서적: 효율적으로 팀에서 일할 수 있게 안내하거나, 일반적인 상황에서 더 나은 프로페셔널이 될 수 있도록 조언한다. 팀 동료나 고객 등 사람들을 어떻게 대하고 일정을 어떤 방식으로 관리하면 되는지 설명한다. 유능한 프로페셔널이 되려면 특정 프로그래밍 언어나 프레임워크, 실행 관례를 아는 것만으로는 부족하다. 소프트웨어 프로젝트 또는 조직에서 코드와 관련 없는 나머지 것들에 대해서도 어떻게 다뤄야 하는지 배워야 한다. 소프트웨어 개발과 관련된 인간적 측면, 프로페셔널리즘을 다루는 책들이 이러한 종류에 속할 수 있다. 예를 들면 애자일 방법론, 소프트웨어 장인정신, 린 소프트웨어 개발, 심리학, 철학, 경영에 대한 책들이 그러하다.

• 혁명적 서적(또는 고전): 일하는 방식이나 개인의 가치관을 바꾸는 책이다. 이전과는 전혀 다른 가치나 원칙들을 제시해 다수에게 무시되거나 배척되지만 결국에는 주류 사상으로 자리매김한다. 이러한 책들은 소프트웨어 개발자라면 이미 읽어 보았음직한 것들로 일상적인 업무 중 대화에서도 그 내용이 흔하게 언급된다. 특정 기술에 대한 책이 이 범위의 책이 되는 경우는 거의 없다. 보통 어떤 개념이나 행동양식을 다룬 책들이 혁명적인 책이 될 때가 대부분이다. 『실용주의 프로그래머』 (1999년 앤드류 헌트Andrew Hunt, 데이비드 토마스David Thomas 저), 『The Mythical Man-Month』(1975년 프레드릭 브룩스Frederick Brooks 저), 『디자인 패턴(GoF)』(1994년, 에리히 감마Erich Gamma외 4인 저), 『테스트 주도 개발』(2002년, 켄트 벡Kent Beck 저), 『익스트림 프로그래밍』(1999년, 켄트 벡 저), 『클린 코더』(2011년, 로버트 C. 마틴 저), 『소프트웨어 장인정신』(2001년, 피트 맥브린 저), 『리펙토링』(1999년, 마틴 파울러Martin Fowler외 5인 저)과 같은 책들이 있다. 이러한 종류의 책들을 완전히 이해하려면 몇 년 이상이 걸리기도 한다.

 

특정 주제나 기술을 깊이 이해해야 할 때는 책만한 것이 없다. 커리어를 위해서라면 개념이나 행동양식에 대한 책들에 더 관심을 두는 것이 좋다. 특히 혁명적인 서적들부터 읽어보기를 권한다. 단기적, 중기적으로는 특정 기술에 대한 책들을 이용해보자.

읽는 것 자체도 학습 곡선이 있다. 책을 읽고 이해하는 방법은 다양하고, 그 방법에 따라 읽고 배우는 속도에도 차이가 크다. 이에 대한 논의는 이 책의 범위를 벗어나므로, 속독 테크닉에 대한 서적은 따로 찾아보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.