
개발자에서 아키텍트로 거듭나기! 초보 아키텍트를 위한 실전 입문서
이 책은 개발자에서 아키텍트로, 변화의 첫걸음을 내딛는 이를 위한 실전 입문서다. 설계를 위한 필수 지식, 아키텍처 패턴, 모델, 설계 방법론, 커뮤니케이션 노하우를 상세히 소개한다. 문제 상황에서 팀원들과 해볼 수 있는 38가지 팀 활동을 소개하며 실무 적응 능력을 키워준다.
아키텍처를 잘 모르는 개발자라면, 이 책을 읽으며 개발 업무의 구조를 이해하는 실력을 향상할 수 있다. 현업 아키텍트라면, 결정사항을 잘 설명하여 팀을 이끌고 이해관계자와 소통하는 능력을 키울 것이다. 이 책과 함께 프로젝트와 팀을 성공으로 이끄는 훌륭한 아키텍트로 거듭나길 바란다.
출판사 리뷰
소프트웨어 아키텍처를 설계하는 일은 언제나 혼란스럽습니다. 비즈니스 목표를 이해하고 여러 이해관계자의 요구사항을 파악해야 할 뿐만 아니라, 제약을 극복하면서도 모두가 만족할 만한, ‘제대로’ 작동하는 프로그램을 만들어야 하기 때문입니다. 아키텍트에게는 소프트웨어를 비즈니스 관점에서 바라보는 안목뿐만 아니라, 시스템 전체를 조망하고 세부 기술을 이해하는 능력도 필요합니다.
이 책은 개발자에서 아키텍트로, 변화의 첫걸음을 내딛는 이를 위한 실전 입문서입니다. 회사에서 갑자기 설계 일을 맡게 된 사람이나, 프로젝트를 직접 이끌어야 하는 스타트업 개발자와 CTO에게 최적의 책입니다. 물론 소프트웨어 아키텍처를 폭넓게 이해하고픈 개발자에게도 유용합니다.
아키텍처와 설계에 대한 필수 지식, 경력 있는 아키텍트의 경험담, 실무와 현장의 사례를 이 책 한 권에서 모두 볼 수 있습니다. 하나의 장이 끝날 때마다 ‘라이언하트’라는 가상 도시의 프로젝트 사례로 배운 내용을 정리합니다. 난항을 겪으면서도 성공적으로 마무리된 프로젝트 사례를 따라가다 보면, 여러분도 할 수 있다는 자신감을 얻게 될 것입니다. 이 책을 읽는 모두가 프로젝트와 팀을 성공으로 이끄는 훌륭한 아키텍트로 거듭나길 바랍니다.
주요 내용
- 소프트웨어 아키텍처란 무엇이고 아키텍트는 무슨 일을 하는가
- 디자인 싱킹과 디자인 마인드셋을 활용한 아키텍처 설계 전략
- 이해관계자와 비즈니스 목표를 명확하게 파악하고 이해하기
- 아키텍처 핵심 요구사항을 파악하고 품질 속성 정의하기
- 자주 사용하는 아키텍처 패턴과 사용법
- 아키텍처 모델을 활용해 시스템 복잡도 관리하기
- 아키텍처 디자인 스튜디오 운영하기
- 설계를 시각화하고 아키텍처 문서화하기
- 아키텍처를 평가하고 피드백을 반영해 개선하기
- 적절하게 설계 권한을 위임하며 팀의 역량 높이기
- 현업에서 바로 활용 가능한 38가지 팀 활동
대상 독자
- 개발자에서 아키텍트로 커리어를 변경하고 싶은 사람
- 소프트웨어 아키텍처를 제대로 이해하여 실무 개발 능력을 향상하고 싶은 사람
- 소프트웨어의 전체 구조 및 개발 과정 전체를 이해하고 싶은 신입 개발자
- 소프트웨어를 둘러싼 다양한 이해관계자들의 관점을 이해해보고 싶은 사람
개발 경력별 이 책의 활용법
- 신입 개발자: 단순히 코드를 짜는 일을 뛰어넘어, 소프트웨어 개발 및 프로젝트이라는 숲을 보며 시야를 넓혀보세요.
- 5년 이하 경력의 개발자/아키텍트: 흔히 쓰는 패턴, 모델, 설계 방식을 이해하고, 아키텍처를 시각화하고 문서화하는 방법을 배우세요. 사람들과 협업할 때 어려움을 겪는다면, 사례 탐구와 경력 있는 아키텍트들의 기고문을 통해 지혜로운 방법을 찾아보세요.
- 10년 이상 경력의 개발자/아키텍트: 아키텍트로서 프로젝트를 직접 이끌거나 개발 팀장의 역할을 수행해야 하나요? 팀원 및 이해관계자와 제대로 커뮤니케이션 하는 방법을 익혀보세요. 문제를 해결하기 위해 해볼 만한 활동을 찾아보고 책에서 소개하는 방법을 직접 따라해보세요. 금세 해결책을 찾을 수 있을 겁니다.
추천사
소프트웨어 아키텍처를 다루는 책은 많지만 저는 늘 현실을 반영한 책에 갈증을 느끼고 있었습니다. 목차를 보면 바로 느낄 수 있을 겁니다. 이 책은 실제로 프로젝트를 진행하면서 맞닥뜨리는 상황에서 어떤 요소를 고려하고, 또 품질과의 트레이드오프는 어느 정도로 감수할 것인지 등 현실을 반영하며, 더 견고한 아키텍처를 만들어가는 이야기를 전달합니다. 사람들과의 협업까지 녹여낸 이 책은 성장하는 서비스와 기술 사이에서 고민하는 분들에게 도움이 될 것입니다.
- 박미정, 전 우아한형제들 베트남 개발 팀장
‘뭐지 이 혼종은?’ 이 책의 첫인상이 그랬습니다. 쉰내나는 소프트웨어 아키텍트 고인물이자 개념 없는 애자일 파다완인 제게, 이 책은 마치 과거와 현재의 시공간을 넘나드는 <닥터 스트레인지>의 타임 스톤 같았습니다. ‘이게 가능해?’, ‘이렇게 접근한다고?’ 하며 그간 쌓은 고정관념이 파괴되어 당황하면서도, 갑갑했던 속내를 누가 대신 폭로하듯 통쾌하기도 했습니다. 아키텍처와 애자일이란 두 금기어가 합쳐지니 오랜 저주가 풀린 느낌이네요. 여러분 축하합니다. 이 책과 함께하면 제다이 원로회의 같은 아키텍처 회의를 더는 하지 않아도 될 거예요.
- 신상재, 몰락 소프트웨어 아키텍트, 삼성SDS
소프트웨어 아키텍처라는 복잡한 내용과 이것을 실제로 적용하는 방법을 소개하는 책입니다. 아키텍트의 관점에서 개발 조직에서 진행할 수 있는 워크샵 기법에 대해서도 자세히 다루었습니다. 아키텍트가 되고 싶은 개발자, 개발 팀 내 생산성을 높이는 활동을 하고 싶은 분들 모두에게 추천합니다.
- 윤석준, 카카오엔터프라이즈
오래 전 월스트리트에 있는 회사로 첫 출근을 했을 때, 누군가 자신을 아키텍트라 소개했다. 웅대한 계획을 즐겨 말하던 그는 오래지 않아 회사를 그만두었다. 코딩을 잘하는 회사의 실력자 친구들은 그의 말을 귀담아듣지 않았는데, 동료의 영향을 받은 나도 그랬다. 그의 코딩 실력을 아무도 신뢰하지 않았기 때문이다.
아키텍트가 되고자 하는 사람에게 높은 수준의 코딩 실력은 필수다. 그게 출발점이다. 하지만 코딩 실력은 자체로 아키텍트의 길을 보장하지 않는다. 아키텍트가 지녀야 하는 덕목과, 지식과, 경험이 많기 때문이다. 이 책은 그 부분을 설명한다. 아키텍트로 성장하고 싶은 개발자라면, 이 책을 통해 아키텍트가 반드시 알아야 하는 기술과 현실을 효과적으로 배우게 될 것이다. 김영재 역자 자신이 훌륭한 개발자이자 아키텍트라서 번역도 매우 훌륭하다. 일독을 권한다.
- 임백준, 삼성리서치