Курс помогает расширить и систематизировать знания по разработке бэкенда, сократить обучение до лида с 5 до 2 лет и стать грамотным техническим специалистом. Авторы собирают грабли и рассказывают о подходах и  практиках, которые используют ThoughtWorks, Yandex и  Google.
Практический курс
Разработка Enterprise-приложений на Java и Kotlin без боли и сожалений
  • Формат
    Лекции и практические задания
  • Объём
    48 часов лекций и практик
    + д\з с подробным разбором кода от авторов курса
  • Длительность
    3 месяца
    +2 месяца на курсовой проект, если решите его делать.
Все знают, что ПО нужно писать правильно, но всё равно пишут как получится.

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

Курс не учит очередной хайповой технологии, а раскрывает универсальные принципы и современные подходы лидеров отрасли: как заложить крепкий фундамент проекта, выстроить эффективные процессы и выжить в постоянно меняющихся условиях. Мы отвечаем на три фундаментальных вопроса:
Как разработать продукт, за который не стыдно
Проблема. По началу всё идёт хорошо, но потом проект превращается в зиккурат из костылей и противоречий. Бизнес требует новых фич и не даёт времени на рефакторинг, который «не нужен пользователям». На проде всплывают удиви­тельные баги. Никто не знает, как работает ключевой модуль, а кто знал — уже на пенсии, ушёл к конкурентам или умер. Когда же проект переписывают заново, он за полгода возвращается в прежнее состояние.

Решение. Мы поговорим о подготовке архитектуры к постоянным изменениям. В разделе о Domain Driven Design вы узнаете, как строить софт, который решает проблемы, а не создаёт их. Вы увидите, что на самом деле между технарями и бизнесом нет противоречий. Ещё мы разберём, как собирать требования и договариваться с бизнесом, а также что такое разработка через тестирование и зачем она нужна.
Пример гексагональной архитектуры проекта

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

Решение. Вы поймёте, как выстроить инфраструктуру проекта, которая будет помогать команде. Узнаете, что же такое Continuous Integration и Continuous Delivery на самом деле. Разберем, как сделать релизы скучной и даже унылой рутиной.
Коммит, деплой на прод и результат на графике мониторинга

Как перестать выгорать и начать жить
Проблема. Синдром самозванца. Раздражающая необходимость постоянно переключаться с дизайна системы на имена переменных. Вынужденные компро­миссы с менеджерами, которые приводят к нерабочим результатам. Бесконечные конференции, статьи и книги, которые состоят из воды и решений, бесполезных в текущем контексте. Второй год невозможно уйти в отпуск, потому что всё сразу сломается. Назначили тимлидом и непонятно, что делать и куда двигаться.

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

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

Чем наш курс отличаются от других?
1
Мы рассказываем и показываем только то, что пережили сами, и опираемся на опыт авторитетов в индустрии и исследования. В курс вошёл наш опыт хождения по граблям (на двоих 20+ лет) и лучшие практики Thoughtworks, Яндекс и других компаний, где нам довелось поработать.

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

Все разработчики знают очень много, но эти знания чаще всего разрозненны, а осмыслять их некогда из-за новых фреймворков. Курс поможет вам выпасть из этого порочного круга и всё чётко систематизировать
3
Мы сами пишем материал и снимаем ролики. Долго мучаемся, зато материал получается густой как нефть.


Ведём вебинары тоже сами. На экране вы увидите ту же говорящую голову, что и в лекциях.


У нас есть помощники и роботы для ступенчатой проверки домашек и курсовых, но глубокую проверку проводим только мы.
4
В курсе мы затрагиваем различные аспекты разработки, что расширяет кругозор, даёт пищу для ума и темы для курилки.

Вы сможете выбрать интересные темы, по которым мы снабдим вас соответствующей литературой. Как говорил Умберто Эко, непрочитанное важнее прочитанного.

Поможем заработать реальный вес в рабочих вопросах, чтобы к вашему мнению прислушивались. Часто архитектурные решения принимаются вообще без оснований, а мы учим вас принимать обоснованные и аргументировать их перед стейкхолдером и коллегами.
Менторы-основатели школы
Евгений Лукьянов
14 лет в разработке. В прошлом старший разработчик в Яндекс-Деньгах и Behavox. Архитектор в Abe Health. Спикер Archdays, ведёт собственные проекты c построением надёжных систем.

- Пишет код за деньги с 2009 года.
- Java/Kotlin/Python-разработчик опытным путем вышедший в архитекторы.
- Ментор, спикер.
Участвовал в разработке медицинского и измерительного оборудования, помогал проводить Универсиаду в Казани, писал софт для крупных билетных операторов, налаживал техпроцессы и программировал в британском Behavox.
Участвовал в создании Яндекс-кассы, наладил выпуск банковских карт Яндекса и разрабатывал единую платформу для платёжных сервисов, проектирует и разрабатывает сложные долгоживущие системы.

Начинал с прошивок для железа и десктопа на asm и C/C++, затем перебрался в энтерпрайз. С 2014 варится в финтехе.

Интересуется IT-безопасностью. Учредитель региональной общественной организаций "Объединение ИТ-Архитекторов".

Профиль Евгения в LinkedIn

Сергей Бухаров
Lead Developer Consultant в ThoughtWorks

10 лет в IT. Начинал в казанских около государственных компаниях и единорогах. Разрабатывал бэкенд мобильного приложения для Swedbank — крупнейшего банка Прибалтики. Пять лет провёл в автоматизации медицины, где баги могут стоить жизни. Там научился отказоустойчивости и DDD. Участвовал в разработке стартапов, медицинских систем, банковского ПО, а также монструозных телеком-систем, обрабатывающих чудовищный СМС-трафик.

Сейчас работает в сингапурском отделении ThoughtWorks, под одним логотипом с Мартином Фаулером и Нилом Фордом. Компания стояла у истоков Agile manifesto и широко известна применением лучших практик. В ThoughtWorks Сергей консультирует команды клиентов по архитектуре проектов, участвует в разработке стратегий рефакторинга и обучении. Проводит вебинары и семинары по архитектуре.

За 10 лет видел множество проблемных, разжиревших от фич и невостребованных проектов, которые причиняли команде и владельцам нестерпимую боль.

Профиль Сергея в LinkedIn

Евгений и Сергей ведут блог и телеграм-канал, в которых рассказывают о своём опыте, бэкенд-разработке, граблях, коммитах и инсайтах.

Блог практикующих бэкенд-разработчиков
Телеграм-канал
Формат курса
Это дистанционный курс с лекциями, практикой и курсовой.

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

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

Шаги:

  1. Создать максимально простой проект из одного модуля — один эндпоинт по адресу localhost:8080/hello, который отдаёт строку "Hello world" и тест на него. Возьмите любой фреймворк, который вам нравится. Система сборки — Gradle (Kotlin DSL).

  2. Настроить сборку проекта одной кнопкой, по которой будет проверяться достаточность тестового покрытия, code style, искаться библиотеки с уязвимостями. и пр. Смотри требования к проекту

  3. Настроить CI-сервер GitHub Actions. CI сервер должен использовать для сборки ту же "одну кнопку", что и в задании

Требования к проекту:


  1. Деплоймент-юнит должен собираться одной кнопкой (build.sh).

    • Проект со всей инфраструктурой должен разворачиваться и запускаться локально также одной кнопкой (run.sh для запуска, shop.sh для остановки) через docker-compose

    • Проект содержать средства обнаружения ошибок и других проблем с кодом (высокая цикломатическая сложность, большое количество параметров и т.п.).

    • Проект не должен содержать нарушений code-style.

    • Проект не должен содержать warning'ов.

    • Покрытие тестов должно быть не меньше чем определенное значение (для начала это не так важно сколько, но попробуйте сделать 80%).

    • Разработчик должен легко понимать, почему упала сборка (как локально, так и на CI-сервере).

    • Любой билд на главной ветке не должен содержать RC или SNAPSHOT-зависимости.

    • Должна быть возможность видеть список зависимостей, которые можно обновить (для них вышла новая версия).

    • Все коммиты в главную ветку должны оказываться на выбранном стенде.

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


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

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

  1. Систематизируете знания и справитесь с синдромом самозванца. Познаете принципы и основные грабли энтерпрайза.
  2. Получите полное руководство по созданию энтерпрайз-приложений.
  3. Разберётесь, что не так с вашим приложением, и разработаете план его улучшения.
  4. Будете готовы к собеседованиям в крупные компании. Вас не поставят в тупик вопросы про SOLID

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

Мы знаем, что учиться новому сложно. Поэтому мы будем периодически напоминать вам о сроках сдачи домашних работ и курсовой и мотивировать в меру сил.
Тарифы
По предыдущим потокам мы знаем, что не у всех есть время и силы для максимального погружения. Поэтому курс доступен в нескольких вариантах
Опции
Экспресс
Базовый
Максимальная прокачка
(в группе 15 учеников)
Начало занятий
Сразу
Сразу
Старт январь 2023
Лекции и практики в записи
Конспекты лекций
Доступ к Reference application
Возможность задавать вопросы авторам через форму
Практические задания для закрепления материала
Персональная проверка д/з с обратной связью от авторов
Практические занятия через Zoom, ответы на вопросы, живое человеческое общение
Общение с авторами в Telegram
Доступ в закрытое сообщество выпускников
Карьерная консультация от авторов, при завершении курсовой
Стоимость
30000₽
60000₽
90000₽
Рассрочка
нет
да
да
Экспресс
Начало занятий Сразу

Лекции и практики в записи
Конспекты лекций
Доступ к Reference application

Возможность задавать вопросы авторам через форму

30 000 руб.
КУПИТЬ
Базовый
Начало занятий Сразу

Лекции и практики в записи
Конспекты лекций
Доступ к Reference application

Возможность задавать вопросы авторам через форму

+Практические задания для закрепления материала

+Персональная проверка д/з с обратной связью от авторов

есть беспроцентная рассрочка на 1 мес.


60 000 руб.
КУПИТЬ
Максимальная прокачка
(в группе 15 учеников)
Начало занятий Старт конец февраля 2023

Лекции в записи, практики через Zoom
Конспекты лекций
Доступ к Reference application

Возможность задавать вопросы авторам через форму
+Общение с авторами в Telegram
Практические задания для закрепления материала

Персональная проверка д/з с обратной связью от авторов

+Практические занятия через Zoom, ответы на вопросы, живое человеческое общение

+Курсовая - большое практическое задание, соединяющее воедино все пройденые темы
+Проверка курсовой работы авторами курса, с обратной связью

+Доступ в закрытое сообщество выпускников

+Карьерная консультация от авторов, при завершении курсовой

есть беспроцентная рассрочка на 1 мес.

90 000 руб.
ЗАСТОЛБИТЬ МЕСТО (5000 руб.)

Необходимые знания
Курс рассчитан на практикующих разработчиков. Чтобы во всём разобраться и получить от курса максимум пользы, вам потребуются:
  1. Владение Java и Kotlin.
  2. Опыт работы на коммерческих проектах.
  3. Знакомство с основными паттернами и инструментами разработки.
Если вы только начинаете изучать программирование, вам будет сложно. Начинающим мы советуем начать с курса других авторов:
Backend-разработка на Kotlin.
Отзывы наших студентов
Курс доступен и в рассрочку. Половину оплачиваете сразу, а остаток после третьей лекции. Мы пришлём ссылку.

ОСТАВИТЬ ЗАЯВКУ
  • Экспресс
    Лекции и практические занятия в записи
    Без домашних работ и курсовой.
  • Базовый
    Лекции и практические занятия в записи, домашние работы с проверкой кода и обратной связью
  • Максимальная прокачка
    Лекции и практики в записи, живые групповые практики, домашние работы с проверкой кода и разбором в группе
Ответы на вопросы
  • Как пройти курс за счет компании?
    Мы дадим вам чек, чтобы вы компенсировали часть стоимости, или подготовим договор на обучение с вашей компанией. У нас нет лицензии вуза, поэтому вы не сможете получить налоговый вычет.
  • А вдруг мне не хватит скилов?
    Напишите нам на course@stringconcat.com, мы свяжемся с вами и поможем оценить ваш уровень.
  • А если я не знаю Java и Kotlin и не собираюсь на них переходить?
    Знание Java и Kotlin не критично. Курс на самом деле не про языки, а про практики разработки, подходы и концепции. Поэтому вы освоите главное и без знания языка.

    Java и Kotlin нужны для домашек и курсовой. Мы много работали с этими языками, знаем их особенности и сможем подсказать по коду. Так же тщательно ревьюить на других языках мы не сможем, поэтому выбирайте вариант «Экспресс».
  • Поможете с рабочим проектом?
    Да. На практических занятиях можно задавать вопросы и по рабочим проектам. А если вам нужно больше нашего участия, напишите нам на course@stringconcat.com и мы вместе подумаем как вам помочь.
  • У меня остались ещё вопросы!
    Напишите нам на course@stringconcat.com, мы ответим.
Принять участие в бесплатной части курса
Прочли сами, покажите другим
Распространение знаний — путь к развитию нашей индустрии.

Канал на Ютубе

Сообщество в телеграме

По всем вопросам пишите Алёне Дубровой:
почта course@stringconcat.com
телеграм https://t.me/dubrova_a
ВК https://vk.com/dubrova_a