Архитектура и основные шаблоны проектирования. Научитесь применять паттерны проектирования и станьте архитектором программного обеспечения
Рассрочка
Рассрочка

Архитектура и шаблоны проектирования

Для всех разработчиков, которые хотят изучить основные паттерны проектирования и научиться применять их в сложных ситуациях.

Длительность обучения:

4 месяца

4 ак. часа в нед.

Формат:

Online

Начало занятий:

31 May

Дни занятий:

Ср 20:00, Пн 20:00

Что даст вам этот курс

С одной стороны, разработка ПО — это процесс ведения разработки, тестирование, быстрая разработка и устранение дефектов.

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

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

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

Курс не привязан к конкретному языку программирования

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

После курса вы будете:
1. Применять шаблоны проектирования в разработках
2. Будете понимать и применять SOLID принципы
3. Поймете, что такое рефакторинг и как писать чистый код
4. Знать современные процессы разработки программного обеспечения
5. Внедрять DevOps в свои процессы разработки, улучшая код и минимизируя ошибки.

Преподаватели

Евгений Тюменцев
Евгений Непомнящий
Разработчик в IT-Sense
Андрей Поляков
Старший разработчик в Unlimint
Игорь Гулькин
Senior Unity Developer
Иван Шарун
Директор компании по разработке программного обеспечения. 20 лет преподаю компьютерные дисциплины в ВУЗе: C++, Kotlin, C#, ООП. Технологии программирования.
В прошлом занимался профессионально разработкой многопоточных кросс-платформенных приложений на С++. Код, написанный 14 лет назад, до сих пор работает в составе IBM Watson.
Один из результатов - успешная разработка технически сложного коммерческого проекта командой из 7 студентов.

Руководитель программы
C++ и Java разработчик.
В отрасли с 2006 года. Долгое время занимался разработкой под микроконтроллеры на С++, последние 3 года увлекся Java.

Компании: Топаз-сервис, Мвм

Сдал экзамен Oracle по Java: Oracle Certified Professional

Преподаватель
В отрасли бэкенд-разработки на Java более 6 лет. Занимался fullstack-разработкой приложений, разработкой высоконагруженных compute-grid систем, а также микросервисов и etl-пайплайнов. Сейчас в роли старшего разработчика работаю над сервисами платежных систем в Unlimint.

Есть опыт работы с сервисами Hadoop (HDFS, HBase), оркестраторами (Airflow, Spring Cloud Data Flow), MPP-базами (Cassandra, Greenplum, Clickhouse).

Интересы: BigData, Blockchain, NFT

Образование: Master Degree in Computer Science and IT, ЮУрГУ, факультет ВШЭКН.

Преподаватель
Архитектор. В GameDev с 2017-го года.
Реализовал свой фреймворк для внедрения зависимостей, а также другие модули для интерфейса, коргеймплея, мета-игры и искусственного интеллекта.
Является одним из ключевых разработчиков мобильных игр "Eco Clicker, "Ледоколы", "Tank Puzzlers". С шести лет увлекается созданием игр.

- Опыт программирования 5 лет
- Коммерческий опыт разработки на Unity 3 года
- Опыт преподавания 1 год

Преподаватель
Старший преподаватель, аспирант кафедры прикладной математики и фундаментальной информатики, ОмГТУ.

Более 5 лет преподаю в ВУЗе: глубокое обучение, ООП, анализ данных, python.

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

За 8+ лет опыта в IT успел позаниматься embedded разработкой на C и desktop на C++ в НИИ приборостроения, back-end разработкой в стартапах, исследованием и разработкой системы анализа данных для Advanced driver-assistance systems в Intel.

Преподаватель
Евгений
Тюменцев
Евгений
Непомнящий
Андрей
Поляков
Игорь
Гулькин
Иван
Шарун

Преподаватели

Евгений Тюменцев
Директор компании по разработке программного обеспечения. 20 лет преподаю компьютерные дисциплины в ВУЗе: C++, Kotlin, C#, ООП. Технологии программирования.
В прошлом занимался профессионально разработкой многопоточных кросс-платформенных приложений на С++. Код, написанный 14 лет назад, до сих пор работает в составе IBM Watson.
Один из результатов - успешная разработка технически сложного коммерческого проекта командой из 7 студентов.

Руководитель программы
Евгений Непомнящий
Разработчик в IT-Sense
C++ и Java разработчик.
В отрасли с 2006 года. Долгое время занимался разработкой под микроконтроллеры на С++, последние 3 года увлекся Java.

Компании: Топаз-сервис, Мвм

Сдал экзамен Oracle по Java: Oracle Certified Professional

Преподаватель
Андрей Поляков
Старший разработчик в Unlimint
В отрасли бэкенд-разработки на Java более 6 лет. Занимался fullstack-разработкой приложений, разработкой высоконагруженных compute-grid систем, а также микросервисов и etl-пайплайнов. Сейчас в роли старшего разработчика работаю над сервисами платежных систем в Unlimint.

Есть опыт работы с сервисами Hadoop (HDFS, HBase), оркестраторами (Airflow, Spring Cloud Data Flow), MPP-базами (Cassandra, Greenplum, Clickhouse).

Интересы: BigData, Blockchain, NFT

Образование: Master Degree in Computer Science and IT, ЮУрГУ, факультет ВШЭКН.

Преподаватель
Игорь Гулькин
Senior Unity Developer
Архитектор. В GameDev с 2017-го года.
Реализовал свой фреймворк для внедрения зависимостей, а также другие модули для интерфейса, коргеймплея, мета-игры и искусственного интеллекта.
Является одним из ключевых разработчиков мобильных игр "Eco Clicker, "Ледоколы", "Tank Puzzlers". С шести лет увлекается созданием игр.

- Опыт программирования 5 лет
- Коммерческий опыт разработки на Unity 3 года
- Опыт преподавания 1 год

Преподаватель
Иван Шарун
Старший преподаватель, аспирант кафедры прикладной математики и фундаментальной информатики, ОмГТУ.

Более 5 лет преподаю в ВУЗе: глубокое обучение, ООП, анализ данных, python.

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

За 8+ лет опыта в IT успел позаниматься embedded разработкой на C и desktop на C++ в НИИ приборостроения, back-end разработкой в стартапах, исследованием и разработкой системы анализа данных для Advanced driver-assistance systems в Intel.

Преподаватель

Отзывы

7
Вадим
Заигрин
Хороший курс для знакомства с архитектурой ПО и шаблонами проектирования. До этого курса я скептически относился к шаблонам. После курса понял зачем они нужны и как их использовать. Но занятие про DevOps выглядит лишним, а занятие про многопоточность лучше перенести в конец курса.
Читать целиком
Егор
Редкин
Курс был очень полезен для меня. Теперь понимаю как правильно организовывать код, начинаю применять шаблоны как в личный проектах, так и на работе) Я прям почувствовал, и даже убедился на практике, что курс меня апнул)) Так же курс добавил мне уверенности себе, как разработчику.

Пожелания/рекомендации/идеи на подумать:

Касательно самого курса:

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

Касательно образовательной площадки:

Можно домашнее задание разбить на уровни сложности, например
1. Легкий - реализовать программу используя патерн А
2. Средний - использовать более сложную/продвинутую/с допольнительным функционалом форму патерна А
3. Сложный - выполнить пункт 2 Средний и затем дополнить программу патерном Б из прошлого урока.

что то в таком духе) было бы прикольно, был бы соблазн сделать дз по максимуму, а так же это можно было бы отразить в сертификате или поощрять учеников скидками на следующий курс)))

Большое спасибо за пережитый опыт! за новые знания! за приятное время препровождение!
Всего наилучшего, развивайтесь) я тоже буду))
Читать целиком
Максим
Пойлов
Многих, заявленных на курсе, тем я касался на практике, либо читал об этом в книгах.
Поэтому перед регистрацией у меня были сомнения, будет ли это полезно для меня. В результате я не пожалел, что прошел курс. Преподаватели стараются чтобы каждый для себя узнал что-то новое, даже если тема занятия известная.
Курс позволил систематизировать знания, полученные из разных источников. Я прикоснулся к новой для себя теме "микросервисы", а также понял, что это просто очередной виток декомпозиции систем, только на более высоком уровне. Если, раньше для меня цикл "Красный-зеленый-рефакторинг" ассоциировался, в основном, с программированием, то теперь я вижу, что аналогичный процесс определил понятие "микросервисы". У меня сформировалось понимание, что элементы архитектуры различных уровней строятся по одним и тем же базовым принципам: инкапсуляция, полиморфизм, декомпозиция и др.
Благодаря курсу я начал применять описания бизнес-процессов в своей работе. Данная тема, хотя и не является основной, но благодаря ей я почувствовал, что это можно использовать в работе.
Интересными с практической стороны оказались темы по шаблонам GoF, SOLID и GRASP. Если про GoF и SOLID я много читал ранее, то про GRASP я услышал впервые. Курс позволил «разложить по полочкам» связи между ними, я начал ориентироваться на них на практике в своей работе.
Спасибо за курс!
Читать целиком
Вадим
Девятайкин
Курс был очень интересным и полезным. Помог структурировать знания и получить опыт в разработке благодаря интересным домашним заданиям. Отдельное спасибо за них Евгению Тюменцеву.
Читать целиком
Алексей
Яковлев
Работаю в банке - фронтенд разработчиком
Выбрал OTUS по рекомендации 1 из публичных разработчиков - он са ведет курсы и его рейтинг среди мировых OTUS - был в 5-ке лучших )
Понравилась активность и группа была достаточно активна - это важно - от этого и преподаватели больше вещали. Улучшить - в принцепе более структурированное прохождение домашек - потому как если для тебя это все темный лес еще - то не понятно как это применять + что-бы преподы вещали в +- в одном стиле много зависит от личных качеств преподавателей.
Обучение совпало с изменением должности и все кейсы которые проходили я пытался решить на работе - в последствии стал архитектором Фронт-енд на проекте ) В качестве курсовой взял реальный рабочий кейс - да я не успел его качественно выполнить в сроки - но я продолжаю его делать и в дальнейшем презентую компании )))
Читать целиком
Андрей
Курс понравился, открыл для себя много нового. Рекомендую всем, кто хочет добиться стабильной прогнозируемой скорости разработки ПО.
Читать целиком
Дарья
Карамова
Я Unity разработчик, работаю в компании, которая занимается созданием игр для мобильных устройств. Источник структурированной информации по архитектуре ПО я искала долго, и в итоге остановила свой выбор на курсе от OTUS - учебный план мне показался достаточно основательным и интересным.
В целом курс мне понравился и был очень полезен для моего профессионального развития. Евгений Тюменцев - отличный лектор, умеет увлечь слушателей и доходчиво объяснить материал. Изучение материалов курса помогло мне обрести достаточную степень уверенности при принятии архитектурных решений и понимание плюсов и возможных рисков этих решений.
Из негативного опыта могу отметить, что из-за продолжительности лекций (а лекции проводятся, конечно же, в вечернее время) к концу занятия неизбежно падает концентрация, особенно после сложного рабочего дня, и материал во второй половине лекции усваивается тяжело. Также довольно долго осуществляется проверка домашних заданий (около недели) и ревью довольно краткие, ревьюверы тут не будут стремиться "допинать" вас до идеала. Также случались накладки с расписанием - несколько раз занятия переносились на 1-2 дня, но в итоге все занятия были проведены.
Курс рекомендую, но только в том случае, если вы готовы сами активно учиться и разбираться, не ждите 100% готовых ответов на всё (их просто не существует), курс задаёт направление, а идти по нему должны вы сами. Домашних заданий на курсе много и на некоторые требуется достаточно большое количество времени.
Читать целиком
Вадим
Заигрин
Хороший курс для знакомства с архитектурой ПО и шаблонами проектирования. До этого курса я скептически относился к шаблонам. После курса понял зачем они нужны и как их использовать. Но занятие про DevOps выглядит лишним, а занятие про многопоточность лучше перенести в конец курса.
Читать целиком
Егор
Редкин
Курс был очень полезен для меня. Теперь понимаю как правильно организовывать код, начинаю применять шаблоны как в личный проектах, так и на работе) Я прям почувствовал, и даже убедился на практике, что курс меня апнул)) Так же курс добавил мне уверенности себе, как разработчику.

Пожелания/рекомендации/идеи на подумать:

Касательно самого курса:

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

Касательно образовательной площадки:

Можно домашнее задание разбить на уровни сложности, например
1. Легкий - реализовать программу используя патерн А
2. Средний - использовать более сложную/продвинутую/с допольнительным функционалом форму патерна А
3. Сложный - выполнить пункт 2 Средний и затем дополнить программу патерном Б из прошлого урока.

что то в таком духе) было бы прикольно, был бы соблазн сделать дз по максимуму, а так же это можно было бы отразить в сертификате или поощрять учеников скидками на следующий курс)))

Большое спасибо за пережитый опыт! за новые знания! за приятное время препровождение!
Всего наилучшего, развивайтесь) я тоже буду))
Читать целиком
Максим
Пойлов
Многих, заявленных на курсе, тем я касался на практике, либо читал об этом в книгах.
Поэтому перед регистрацией у меня были сомнения, будет ли это полезно для меня. В результате я не пожалел, что прошел курс. Преподаватели стараются чтобы каждый для себя узнал что-то новое, даже если тема занятия известная.
Курс позволил систематизировать знания, полученные из разных источников. Я прикоснулся к новой для себя теме "микросервисы", а также понял, что это просто очередной виток декомпозиции систем, только на более высоком уровне. Если, раньше для меня цикл "Красный-зеленый-рефакторинг" ассоциировался, в основном, с программированием, то теперь я вижу, что аналогичный процесс определил понятие "микросервисы". У меня сформировалось понимание, что элементы архитектуры различных уровней строятся по одним и тем же базовым принципам: инкапсуляция, полиморфизм, декомпозиция и др.
Благодаря курсу я начал применять описания бизнес-процессов в своей работе. Данная тема, хотя и не является основной, но благодаря ей я почувствовал, что это можно использовать в работе.
Интересными с практической стороны оказались темы по шаблонам GoF, SOLID и GRASP. Если про GoF и SOLID я много читал ранее, то про GRASP я услышал впервые. Курс позволил «разложить по полочкам» связи между ними, я начал ориентироваться на них на практике в своей работе.
Спасибо за курс!
Читать целиком
Вадим
Девятайкин
Курс был очень интересным и полезным. Помог структурировать знания и получить опыт в разработке благодаря интересным домашним заданиям. Отдельное спасибо за них Евгению Тюменцеву.
Читать целиком
Алексей
Яковлев
Работаю в банке - фронтенд разработчиком
Выбрал OTUS по рекомендации 1 из публичных разработчиков - он са ведет курсы и его рейтинг среди мировых OTUS - был в 5-ке лучших )
Понравилась активность и группа была достаточно активна - это важно - от этого и преподаватели больше вещали. Улучшить - в принцепе более структурированное прохождение домашек - потому как если для тебя это все темный лес еще - то не понятно как это применять + что-бы преподы вещали в +- в одном стиле много зависит от личных качеств преподавателей.
Обучение совпало с изменением должности и все кейсы которые проходили я пытался решить на работе - в последствии стал архитектором Фронт-енд на проекте ) В качестве курсовой взял реальный рабочий кейс - да я не успел его качественно выполнить в сроки - но я продолжаю его делать и в дальнейшем презентую компании )))
Читать целиком
Андрей
Курс понравился, открыл для себя много нового. Рекомендую всем, кто хочет добиться стабильной прогнозируемой скорости разработки ПО.
Читать целиком
Дарья
Карамова
Я Unity разработчик, работаю в компании, которая занимается созданием игр для мобильных устройств. Источник структурированной информации по архитектуре ПО я искала долго, и в итоге остановила свой выбор на курсе от OTUS - учебный план мне показался достаточно основательным и интересным.
В целом курс мне понравился и был очень полезен для моего профессионального развития. Евгений Тюменцев - отличный лектор, умеет увлечь слушателей и доходчиво объяснить материал. Изучение материалов курса помогло мне обрести достаточную степень уверенности при принятии архитектурных решений и понимание плюсов и возможных рисков этих решений.
Из негативного опыта могу отметить, что из-за продолжительности лекций (а лекции проводятся, конечно же, в вечернее время) к концу занятия неизбежно падает концентрация, особенно после сложного рабочего дня, и материал во второй половине лекции усваивается тяжело. Также довольно долго осуществляется проверка домашних заданий (около недели) и ревью довольно краткие, ревьюверы тут не будут стремиться "допинать" вас до идеала. Также случались накладки с расписанием - несколько раз занятия переносились на 1-2 дня, но в итоге все занятия были проведены.
Курс рекомендую, но только в том случае, если вы готовы сами активно учиться и разбираться, не ждите 100% готовых ответов на всё (их просто не существует), курс задаёт направление, а идти по нему должны вы сами. Домашних заданий на курсе много и на некоторые требуется достаточно большое количество времени.
Читать целиком

Необходимые знания

Знание одного из языков программирования и принципов ООП: C++, C#, Java, Kotlin,PHP или Python
Корпоративное обучение для ваших сотрудников
Поможем вашей компании развивать команду! Профиты данного курса для компании: Подробное изучение самых популярных баз данных с возможностью сосредоточиться на тех, которые используются в компании / Оптимизированные стабильные системы / Работа над промышленными задачами во время практики
>
Программа обучения
В процессе обучения вы получите комплексные знания и навыки.
Тема 1. Проблема сложности, ее разновидности и их связь с архитектурой ПО.
Тема 2. Архитектура, архитектурные стили и виды
C 14 June
Тема 3. Модульные тесты // ДЗ
C 19 June
Тема 4. Абстрагирование. Схема применения SOLID принципов.
Тема 5. Определение абстракций, устойчивых к изменениям требований. // ДЗ
Тема 6. Общие шаблоны распределения ответственностей
Тема 7. SOLID и исключения // ДЗ
Тема 8. Команда // ДЗ
Тема 9. Расширяемая фабрика и IoC // ДЗ
Тема 10. Чистый код и рефакторинг
Тема 11. Стратегии разрешения зависимостей IoC
Тема 12. Адаптер и мост //ДЗ
Тема 13. QA-сессия
C 24 July
Тема 14. Проблема вертикального масштабирования и синхронизация. //ДЗ
Тема 15. Интеграция программного обеспечения
Тема 16. Системы обмена сообщениями // ДЗ
Тема 17. Построение архитектуры приложения, построенного на системе обмена сообщениями
C 14 August
Тема 18. Методологии разработки ПО
Тема 19. Создание микросервиса // ДЗ
Тема 20. DevOps
Тема 21. Микросервисная архитектура // ДЗ
C 28 August
Тема 22. Итератор
Тема 23. Состояние // ДЗ
Тема 24. Цепочка обязанностей // ДЗ
Тема 25. Заместитель
Тема 26. Декоратор
Тема 27. Шаблонный метод
Тема 28. Интерпретатор // ДЗ
C 20 September
Тема 29. Вводное занятие по проектной работе
Тема 30. Консультация по проектам и домашним заданиям
Тема 31. Защита проектных работ
Скачать подробную программу
Выпускной проект
Выпускной проект — возможность закрепить навыки, наработанные в процессе обучения. Это отдельная работа, на выполнение которой отводится последний месяц обучения.

Процесс обучения

Образовательный процесс происходит ONLINE в формате вебинаров (язык преподавания — русский). В рамках курса слушателям предлагаются к выполнению домашние задания, которые позволяют применить на практике знания, полученные на занятиях. По каждому домашнему заданию преподаватель дает развернутый фидбек. В течение всего учебного процесса преподаватель находится в едином коммуникационном пространстве с группой, т.е. при обучении слушатель может задавать преподавателю уточняющие вопросы по учебным материалам.
Получить консультацию
Наш специалист свяжется с вами в ближайшее время. Если у вас возникли трудности в выборе курса или проблемы технического плана, то мы с радостью поможем вам.
Спасибо!
Мы получили Вашу заявку, в ближайшее время с Вами свяжется наш менеджер.

  • получите материалы по всем пройденным занятиям (видеозаписи вебинаров, выполненные домашние задания, выпускной проект)

  • применять шаблоны проектирования в разработках

  • получите сертификат об окончании курса

  • внедрять DevOps в свои процессы разработки, улучшая код и минимизируя ошибки

  • получите приглашение пройти собеседование в компаниях-партнёрах (в случае успешного обучения)

Дата выдачи сертификата: 28 October 2023 года
Ваш сертификат

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Архитектура и шаблоны проектирования»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Архитектура и шаблоны проектирования»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.
Прошедшие открытые вебинары
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Паттерн Command: от процедурного до функционального программирования
Иван Шарун
День открытых дверей
17 November 2021 года в 20:00
Оставьте заявку, чтобы получить доступ к записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке
Стоимость обучения
Cтоимость указана для оплаты физическими лицами
72 000 ₽
Продолжительность
4 месяца
Начало занятий
31 May