Получи случайную криптовалюту за регистрацию!

Ануар Нурмаканов, Solution Architect I в EPAM Kazakhstan, поде | EPAM Kazakhstan

Ануар Нурмаканов, Solution Architect I в EPAM Kazakhstan, поделился списком литературы для специалистов разных уровней.

Четыре книги, помогающие понять мышление архитектора для L2-L3, которые только планируют свое будущее:

«Software Architecture For Developers» – Simon Brown:

Эта книга объясняет, что такое архитектура на языке разработчиков и учит смотреть на нее под другим углом.

«Patterns of Enterprise Application Architecture» – Martin Fowler:

Многим покажется, что книга устарела. Но если читать её внимательно, то можно понять, как работают современные фреймворки, вроде Hibernate или Spring в Java.

«NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence» – Pramod Sadalage, Martin Fowler:

Дает другой взгляд на хранение данных, который отличается от привычного.

«Domain-Driven Design: Tackling Complexity in the Heart of Software» – Eric Evans:

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

Три книги для L3-L4, которые думают о карьере архитектора:

«Software Architecture in Practice» – Len Bass, Paul Clements, Rick Kazman:

Это справочник методов, которые позволяют рассмотреть проблему и создать архитектуру для production. В книге описано много конкретных тактик, паттернов, примеров работы с бизнесом.

«Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems» – Martin Kleppmann:

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

«The Software Architect Elevator: Redefining the Architect's Role in the Digital Enterprise» – Gregor Hohpe:

В ней рассматривается повседневность архитектора: общение с бизнесом, менеджментом, разработчиками и так далее. Архитектор должен определять верный путь, исходя из множества вариантов, и само умение принимать решения — один из самых важных навыков архитектора.