Архитектура и паттерны

Если вы занимаетесь разработкой, инфраструктурой или видите себя в стезе архитектора проектов, вам в той или иной степени понадобится погрузиться в проектирование. В этой статье мы поможем сориентироваться в направлениях, наших курсах и их взаимосвязи.

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

Архитектура для разработчиков и админов: кому какие навыки нужны? Часть 1

В основном архитектура — это зона ответственности СТО, Senior-разработчиков и тим лидов. Большинству рядовых специалистов в команде достаточно уверенных базовых навыков, и в ряде проектов — умение работать в highload-области. Что касается DevOps-ов, им из раздела архитектуры важен навык переноса приложений в облако.

Итак, базовая ступень позволяет начинающим разработчикам улучшить качество кода и дорасти до Middle-задач. Также с этих навыков начинается старт в карьере архитектора. Ключевые умения тут следующие:

  • Использование шаблонов проектирования и принципов SOLID 
  • Понимание процессов разработки ПО 
  • Улучшение качества кода и снижение числа ошибок за счет включения DevOps подхода в процессы 
  • Ведение разработки от постановки бизнес-задачи до реализации на production сервере 
  • Отрисовка бизнес-процессов и схем

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

В качестве бонуса предлагаем прочитать подборку авторских статей про шаблоны GRASP от Владислава Родина, который в настоящее время является руководителем курса «Highload Architect», а также преподает на курсах, посвященных архитектуре ПО:

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

Следующий по сложности набор навыков лежит в highload области, но об этом мы поговорим в следующей части.