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

Начинаете системы размером больше  человеко-месяца

Не знаете, с чего начать работу с кучей доставшегося в наследство кода

Курс
Подойдёт,
если...
Курс
Подойдёт,
если...
У вас стартап на стадии «давай-давай»

Считаете, что архитектурные решения нужно выдавать в виде кода

Ищете курс, где вас научат писать (микро)сервисы

Курс
не Подойдёт
если...
Курс
не Подойдёт,
если...
Чего ждать, а чего не стоит
Ибрагим вместе с Котом-критиком получают задачу от бизнеса спроектировать новую систему.
По пути наступают на разные грабли, а Антон помогает с ними разобраться.
Не говорим о ГОСТах, ISO и других стандартах. Хоть они будут использоваться в качестве справочного материала, курс — не про сертификацию на позицию solution architect.
Говорим о концепциях и смыслах, которые так или иначе прослеживаются в каждом из стандартов. Документы всегда можно нагуглить, а вот понять логику важнее. И ещё сложнее собрать общую картинку.
Не говорим о дизайне систем в ключе выбора между технологиями для кеширования, месседж-брокерами или вариантами развёртывания k8s.
Учим не выбирать технологии (хотя про это тоже есть), а определять, что вообще надо сделать бизнесу, чтобы заработать больше денег. А для выбора технологий есть специализированные курсы вроде сертификации aws.
5 лонгридов. На прочтение каждого нужно около часа. В каждом есть теория, примеры практики и ответы на важные вопросы, которые стыдно задать. Без воды, но с котами.
Что на курсе
Дополнительные материалы и душные врезки. Куча полезных ссылок для дополнительного погружения с  объяснением важности каждой; врезки с заумью, которые стоит читать, если вы  Антон или просто любите подушнить.
Q&A-сессия. В конце курса. В 16:00 по мск, чтобы собрать вас из всех часовых поясов.
Комьюнити учеников. Чат курса, где будем отвечать на вопросы и поддерживать друг друга. Остаётся навсегда. По итогу курса добавим вас ещё в «Чат сильных программистов» — комьюнити всех выпускников школы. Он никогда не затихает, при  этом с пользой и без лишнего флуда.
одна большая домашка
Вы спроектируете архитектуру проекта на основе собранных требований. Сделаете модель данных, опишете коммуникации, определите субдомены и архитектурные характеристики проекта. Всё это будет эволюционировать параллельно с новыми знаниями с курса.
на весь курс
Встречи—разборы домашек. По одной в неделю. В зуме. Антон накануне смотрит домашки и общие выводы рассказывает на встрече. Можно смотреть в записи, но тогда не получится задать вопрос или что-нибудь уточнить.
4 недели
ПРОГРАММА КУРСА
Примерная нагрузка*
5
часов в неделю
1-1,5 часа на чтение лонгрида
2-3 часа на домашку и 40 минут на проверку другим
1,5-2 часа на Q&A в конце курса
1+ час
на доп. материалы
(лучше отложить на время после курса, чтобы не потерять фокус)
*Нагрузка может быть меньше или больше. Зависит от вашего уровня подготовки, возможности схватывать информацию на лету и желаемого уровня погружения в курс.
Когда мы только начинаем проектировать системы, обычно нет ни внятных требований, ни времени на проектирование. После урока будет понятно, что даже в таких условиях можно собрать что-то рабочее.

Также в уроке разбиваем два антипаттерна — разбивание бизнес-логики по техническим шагам или по сущностям (entity service).
Урок 1. Работа с требованиями, разделение системы на элементы
Ключевые концепции и термины:

  • Работа с требованиями
  • Event Storming
  • Модель данных
  • Базовое сравнение микросервисов и монолитов
  • Система, форма и функция системы
Пятница
Встреча-знакомство
Урок 1
Программисты склонны принимать решения вокруг технологий, а не устройства бизнеса. Требования обычно этому не препятствуют. В уроке чиним это:  учимся проектировать системы на основе стратегического анализа бизнеса, подробнее изучаем распределенные и монолитные архитектурные стили.
Урок 2. Стратегический анализ бизнеса и архитектурные стили
Ключевые концепции и термины:

  • Strategic DDD, subdomains
  • Coupling & cohesion, temporal coupling, local & global complexity
  • Quality attributes/non functional requirements/architecture characteristics
  • Поиск характеристик и перевод бизнес-терминов в характеристики
  • Циклы жизни систем
Вторник
Сдача домашки №1
Четверг
Зум-разбор домашки
Пятница
Урок 2
Добавляем внешние ограничения:  комплаенс, географические ограничения, количество инвестиций, общий уровень разработчиков. В уроке определяем и приоритизируем их.

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

Изучим новые архитектурные стили:  microkernel, pipeline, event-driven (привет, попуги!).
Урок 3. Внешние ограничения и документация
Ключевые концепции и термины:

  • Ограничения системы
  • Выбор вида БД в зависимости от характеристик
  • Выбор вида коммуникаций и брокера для событий
  • Fitness function
Вторник
Сдача домашки №2
Четверг
Зум-разбор домашки
Пятница
Урок 3
Среда
Проверяем другим
Учимся рефакторить сложные системы: добавлять новую функциональность, выносить не подходящую по характеристикам, объединять сервисы, переписывать существующие сервисы и избавляться от антипаттернов вроде entity-сервисов.
Урок 4. Распиливаем монолит
Ключевые концепции и термины:

  • Добавление новой функциональности в отдельных сервисах
  • Объединение сервисов
  • Вынос функциональности из монолита в сервис
  • Strangler Fig Application, Volatility Based Decomposition, Tactical Forking, Component-Based Decomposition
Вторник
Сдача домашки №3
Четверг
Зум-разбор домашки
Пятница
Урок 4
Среда
Проверяем другим
Цель: подвести общие итоги и обсудить необходимые шаги для дальнейшей работы. Разобраться, как описывать систему. Спланировать этап развития собственных навыков после курса и повторить концепции, пройденные в курсе.
Урок 5. Итоги и дальнейшие шаги
Ключевые концепции и термины:

  • Всё, что в курсе было
  • 4+1, C4, arc42, iso42010
Вторник
Сдача домашки №4
Четверг
Зум-разбор домашки
Пятница
Урок 5
Среда
Проверяем другим
ПРИМЕР ОДНОЙ НЕДЕЛИ ОБУЧЕНИЯ
Прочитать первую часть лонгрида, чтобы получше понять, что ждёт на курсе
Тарифы
Если возникли вопросы или хотите оплатить от юрлица — напишите на  support@tough-dev.school, отвечаем в течение суток.
Мы подключили сервис «Тинькофф.Долями». От рассрочки отличается тем, что нужно заплатить первый взнос в размере 25% от суммы. Остальная сумма делится на четыре равные части и выплачивается раз в две недели. Без договора и одобрений, проценты за услугу платим мы. Для вас бесплатно.
Сервис будет работать только для российских карт.
Мест
больше
нет
Мест
больше
нет
За курс можно получить налоговый вычет 13%
За курс можно получить налоговый вычет 13%
За курс можно получить налоговый вычет 13%
За курс можно получить налоговый вычет 13%
Хочу учиться
за счёт компании
Для юрлиц стоимость немного выше: «Аптечка» — 17 500₽/€220, «В тусовке» — 30 000₽/€375, VIP — 55 000₽/€690. Это связано с необходимостью дополнительного документооборота.
Согласовываете с руководителем обучение или знакомите нас с руководителем, чтобы мы вам в этом помогли.
Согласовываете
Присылаете нам на почту реквизиты компании. Обычно их взять можно у HR, на сайте компании в разделе «Контакты» или написав в бухгалтерию. Если ваша бухгалтерия просит какой-то набор документов — приложите список, чтобы мы сразу прикрепили.
Присылаете реквизиты
2
1
3
Мы выставляем счёт и отправляем приглашение для обмена документами в Диадок.
Обмениваемся документами
По окончании присылаем закрывающие документы в Диадоке, а ваша бухгалтерия подписывает.
Даём доступ
Ваша компания оплачивает, а мы выдаём вам доступ к курсу.
4
Сертификат
Всем, кто дойдёт до конца и сдаст домашку, выдадим электронный сертификат на русском и английском языках. Сможете добавить в линкедин и хвастаться.
Cертификат курса «Асинхронная архитектура». Ваш будет другим.
Как будет выглядеть ваш — оставим в тайне до вручения
Так выглядит сертификат из другого нашего курса
*Для тарифов с обратной связью
Эксперты
Независимый solution architect и разработчик, core contributor Hanami и Dry-rb. Раньше работал backend-архитектором в Toptal.com, помогал igoods, 3commas, «Чайке» и другим компаниям перейти на сервисную архитектуру и настроить интеграции. Главный эксперт курса.
Специализируется на создании нового и копает образование. Ex-МИФ, Attendify и Ciklum. В курсе отвечает за образовательный трек. Делает, чтобы знания лучше прилипали, а учиться было кайфово.
Редактор, автор книги «Легко и просто. Как справиться с задачами, к которым сложно подступиться». В курсе отвечает за редактуру: делает тексты понятными.
Независимый CTO, 14 лет руководит программистами. В курсе приземляет полёт мысли на практику и помогает держать фокус.
Комьюнити Школы
По окончании курса добавим вас в наше
Все выпускники собираются в чате, где помогают друг другу — от бытовых советов по релокации до советов по выбору стека. Сейчас в чате 8 топиков и почти 650 активных участников.
Отзывы
Игорь Камышев
Я не изучал системный анализ до курса, и почти все техники оказались новыми. Одни из самых насыщенных новыми знаниями 5 недель в жизни.

Например, до курса я понимал, что принимать технические решения нужно на основе реального мира, но не мог сформулировать, какие именно свойства и как могут повлиять на финальное решение. Главное откровение курса — систематизация этого понимания. Теперь намного проще находить хорошие решения и обосновывать их перед командой.

Курс подойдёт не только архитекторам или инженерам с амбициями аналитиков, а вообще всем разработчикам, которые хотят принимать хорошие технические решения.
Андрей Шкловский
Выбрал курс, потому что давно знаю Антона по его деятельности и принимал участие в курсе по асинхронной архитектуре. Была уверенность (и она подтвердилась), что материал будет качественный и без лишней воды. А наличие практик в качестве закрепления материала — офигенный бонус и дополнительная мотивация!

В итоге на курсе понял и научился применять Event Storming. Самое главное— попрактиковался! Понял, на что опираться и как аргументировать архитектуру для других людей при выборе архитектурного стиля проекта в целом и отдельных сервисов в частности.
Данил Кочерга
Польза курса в более чёткой картинке в голове, как подходить к сложным системам. Процесс выглядит более предсказуемым, и для каждого шага появились инструменты. Чувствую больше уверенности в своих решениях.

В рабочих задачах пробую применять event storming, stakeholder map / concerns, оценку архитектурных характеристик и выбор решения на их основе.

Курс рекомендую инженерам от middle-уровня и выше.
Дмитрий Марков
Я чуть-чуть успел попробовать ES, но, наверное, будет не суждено довести до конца, т. к. на работе слегка поменялись планы по этому проекту, а для другого это всё избыточно =)

Все материалы оказались очень полезны — это Event Storming, выделение корневых доменов, как работать с требованиями, как работать со стейкхолдерами, модели данных, как рисовать планы по архитектуре. Я действительно не могу выбрать что-то конкретное, потому что я привык делать «как могу» и «как получается», а в курсе была какая-то новая цельная картина, которая позволяет решать задачи. Мне ещё нужно будет какое-то время, чтобы это всё уложить в своей голове.

Я бы рекомендовал курс всем, кто интересуется проектированием систем. Если даже дальше не расти в архитектора, то можно научиться говорить на одном языке с архитектором и задавать правильные вопросы стейкхолдерам.
Дмитрий Панов
Проходил ещё демоверсию курса, и тогда сложился образ «интересный курс про практическую архитектуру». Также запрос был получить некие знания, которые позволят наладить взаимодействие/общение «бизнес – разработка».

Наконец-то появились практические навыки на тему «когда проектируешь, не думай о технической реализации». Из того, что начинаю и уже применяю в рабочем проекте, — различение на домены исходя из бизнес-логики.
Николай Мухачёв
Очень полезно было, что нужно было почти каждую домашку переделывать в event storming – модель. Это очень крутое повторение позволяет хорошо понять, как это нужно делать.

Всем могу посоветовать, кто так или иначе связан с этапом проектирования архитектуры: всем, кто работает на смежных с созданием архитектуры этапах жизненного цикла сложных систем. Этот курс позволит вам представить, что там происходит на этапе проектирования архитектуры, и не представлять себе этап создания архитектуры как чёрный ящик, который генерирует сложность ради сложности и работу ради работы.
Дмитрий Чурин
Жаль, этот курс не преподают в универе — я бы развивался гораздо быстрее и делал бы меньше ошибок. Меня интересовала тема архитектуры уже давно. Прочитал и чистую архитектуру Мартина, и DDD-книги (зелёную, синюю). Но когда применял в реальности знания из книг, получалась та же ерунда, что и раньше. Хотел исправить ситуацию, понять, «как думать». И курс мне в этом помог.
Участвовать в курсе «Анализ систем»
Нажимая на кнопку, вы даёте согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности
Где работают
наши ученики
Вопросы-ответы
Если вы не нашли ответа на свой вопрос — напишите нам на support@tough-dev.school.
Ответим в течение 24 часов.
Марьяна
Подписаться на наши блоги
Федя
Если возникли вопросы — напишите на support@tough-dev.school, отвечаем в течение суток
Задать вопрос
ИП Борщев Федор Александрович / SIA Software Development & Consulting ИНН 710406790323,
ОГРН 317715400016820