# :smiling_imp: Senior

## :pencil: C++

- Сложно посоветовать что-то конкретное для разработчиков уровня Senior. Разработчики такого уровня уже должны уверенно владеть C++ и понимать его возможности/ограничения. Основная задача, которая стоит на этом уровне: мониторить появления новых стандартов и фич для языка, а также обновления библиотек/фреймворков.


## :muscle: Управление командой

- [Дж. Ханк Рейнвотер - Как пасти котов](https://www.ozon.ru/product/kak-pasti-kotov-nastavlenie-dlya-programmistov-rukovodyashchih-drugimi-programmistami-147226659)

    Признанная классика, которая повествует о том, какие сложности возникают при управлении разработчиками. Данная книга хоть и устарела в каких-то аспектах, тем не менее она станет отличным началом для поиска информации об управлении программистами. Многие главы по-прежнему актуальны, а также дадут начальное представление об управлении людьми. Такие знания могут пригодиться при менторинге джуниоров.

- [Марина Перескокова - Мама, я тимлид! Практические советы по руководству IT-командой](https://www.ozon.ru/product/mama-ya-timlid-prakticheskie-sovety-po-rukovodstvu-it-komandoy-pereskokova-marina-315820151)

    Небольшая по своему содержанию, но крайне полезная книга для тех разработчиков, которые стали тимлидами, выполняют какую-либо часть их обязанностей или думают над тем, чтобы попробовать эту роль для себя. Предоставляет широкий обзор по компетенциям и задачам, которые предстают для данной роли.

- [Майкл Лопп - Как управлять интеллектуалами. Я, нерды и гики](https://www.ozon.ru/product/kak-upravlyat-intellektualami-ya-nerdy-i-giki-lopp-maykl-lopp-maykl-211432845)

    Данная книга повествует о том, как быть руководителем, какие сложности встают перед таким человеком. Она поможет вам научиться мыслить как менеджер, понять какие проблемы беспокоят вашего менеджера. Это позволит вам выстроить более эффективное взаимодействие между вами, менеджером и командой разработки.

- [Фредерик Брукс - Мифический человеко-месяц, или Как создаются программные системы](https://www.ozon.ru/product/mificheskiy-cheloveko-mesyats-ili-kak-sozdayutsya-programmnye-sistemy-bruks-frederik-bruks-frederik-211424648)

    Книга считается классикой в управлении проектами. Акцент этой книги сосредоточен на ошибках, которые допускаются на проектах, приводящие к их провалам. Сегодня эта работа тоже отчасти считается устаревшей, но для тех разработчиков, которые только начинают свой путь в качестве управленца, она будет отличным началом, чтобы уберечь себя от типовых ошибок.

- [Том ДеМарко - Deadline. Роман об управлении проектами](https://www.ozon.ru/product/deadline-roman-ob-upravlenii-proektami-demarko-tom-405808639)

    Книга-роман, повествующая о работе менеджера и о том, как происходит управление проектами. Крайне полезна тем, что в художественной манере передает колоссальный опыт управленческих будней менеджера. Наиболее полно раскрывает те вопросы, с которыми менеджер сталкивается в повседневной работе.

- [Даниэль Канеман - Думай медленно... решай быстро](https://www.ozon.ru/product/dumay-medlenno-reshay-bystro-kaneman-daniel-240690039)

    Классическая книга о логических ошибках мышления человека. Полезна тем, что это поможет более рационально подходить к принятию различных решений, беря в расчет когнитивные искажения в человеческом мышлении. Необходимый навык для специалистов, которые находятся в зоне принятия ключевых решений. Книга может показаться довольно занудной, в таком случае вы можете попробовать поискать альтернативные работы, которые повествуют о когнитивных искажениях.


## :clipboard: Требования и архитектура ПО

- [Карл Вигерс - Разработка требований к программному обеспечению](https://www.ozon.ru/product/razrabotka-trebovaniy-k-programmnomu-obespecheniyu-vigers-karl-i-bitti-dzhoy-221778297)

    Книга пригодится тем, кто занят сбором и проработкой требований к программному обеспечению. Она расскажет о том, каким образом взаимодействовать с менеджерами, заказчиками и разработчиками при сборе требований, каким образом превратить словесные идеи в техническое решение с понятными требованиями и ограничениями.

- [Len Bass, Paul Clements, Rick Kazman - Software Architecture in Practice (ENG only)](https://www.livelib.ru/book/1002753583-software-architecture-in-practice-len-bass-paul-clements-rick-kazman)

    Классика по основам архитектурных подходов проектирования программного обеспечения. Содержит коллекцию базовых архитектурных шаблонов и приемов построения больших программных систем.

- [Марк Ричардс, Нил Форд - Основы архитектуры программного обеспечения: инженерный подход (ENG only)](https://www.ozon.ru/product/osnovy-arhitektury-programmnogo-obespecheniya-inzhenernyy-podhod-339635830)

    Книга по основам проектирования программного обеспечения. Как и предыдущая работа, повествует об основах проектирования. Отличие от предыдущей книги в том, что предлагается рассмотреть подходы к проектированию ПО, с инженерной точки зрения: возможность добиться надежности, повторяемости компонентов системы, их предсказуемости и т.п.

- [Мартин Фаулер - Шаблоны корпоративных приложений](https://www.ozon.ru/product/shablony-korporativnyh-prilozheniy-147417586)

    Набор архитектурных подходов для построения различных корпоративных систем. Данная книга может быть полезна тем, кто строит системы с разной степенью сложности и направленности: финансовые операции, документооборот и т.п.

- [Крис Ричардсон - Микросервисы. Паттерны разработки и рефакторинга](https://www.ozon.ru/product/mikroservisy-patterny-razrabotki-i-refaktoringa-211432697)

    Книга концентрируется на современном архитектурном подходе проектирования систем - микросервисы. Это работа повествует о том, как произвести последовательную трансформацию приложения из "монолитного" состояния в набор микросервисов. Содержит набор паттернов, а также советы по рефакторингу существующего кода, чтобы наиболее эффективно произвести данную процедуру.

---

[**На предыдущую страницу**](Overview.md) | [**На главную страницу**](../README.md)