Certificate of Hard&Soft Skills
]
[
Сертификат подтверждает, что
 Головня Александр
успешно окончил курс
«‎Технический лидер» продолжительностью 54 часа
This certificate is awarded to
 Головня Александр
upon the successfully completion of a program of study
course «‎Technical Leadership»‎
lasting 54 hours
About The Expo
This year's Architecture Expo will be held at the fabulous Hong Kong City Hall. The Expo is constantly developing and demonstrating effective cooperation between the development market and the architects. This year's record-breaking edition of the Expo will feature 230 exhibitors and 25 speakers from over 30 countries.
About our company
Our goal is to ensure that your business is up to date with the latest digital technologies and all your colleagues and employees are fully equipped for the best results.
1
Этот сертификат присуждается
Себастьяну
после успешного завершения программы обучения,
продолжительностью 54 часа


This certificate is awarded to
Sebastian
upon the successfully completion of a program of study
lasting 54 hours

2
Сертификат подтверждает, что
 Головня Александр
успешно окончил курс
«‎Технический лидер» продолжительностью 54 часа


The Certificate confirms that
 Головня Александр
successfully graduated from
course «‎Technical Leadership»‎
lasting 54 hours
Преподаватель курса
]
[
Павел Вейник
CEO в Hard & Soft Skills
Разработчик с 2003. Работал в EPAM, Workfusion, в других продуктовых и сервисных компаниях, как очень маленьких, так и в корпорациях. Специализации - архитектура распределенных систем, highload, микросервисы, прикладная лингвистика, системная инженерия.
Опыт в ролях разработчика, менеджера и архитектора позволяет видеть проблемы с разных точек зрения.
Сейчас выполняет архитектурные задачи в компании EPAM.
Пройденная программа курса
]
[
  1. Понятие хорошего техлида

    • 1.1 Умение думать
    • 1.2 Умение применять технологии и инструменты
    • 1.3 Умение делать хотфиксы быстро
    • 1.4 Архитектурная компетентность
    • 1.5 Роли разработчика в аутсорсе и в продукте

  2. Основы системной инженерии

    • 2.1 Проект по разработке ПО как система
    • 2.2 Функциональные и структурные компоненты системы
    • 2.3 Система и надсистема
    • 2.4 Стейкхолдеры и взаимодействие с ними
    • 2.5 Системный взгляд на роль техлида

  3. Границы возможного, критерии качества, законы распределенных систем

    • 3.1 Ограничения
      • 3.1.1 Ограничения техники
      • 3.1.2 Ограничения алгоритмов
      • 3.1.3 Ограничения сложности
    • 3.2 Критерии, эталоны эффективности
      • 3.2.1 Чтение файлов
      • 3.2.2 Передача по сети
      • 3.2.3 Поиск по документами
      • 3.2.4 Быстрые алгоритмы
    • 3.3 Принципы и законы распределенных систем
      • 3.3.1 SOLID
      • 3.3.2 Транзакции, ACID, уровни изоляции
      • 3.3.3 BASE
      • 3.3.4 Теорема CAP
      • 3.3.5 Особенности и ограничения любой распределенной системы

  4. Архитектура приложения как способы компоновки приложения

    • 4.1 Шаблоны проектирования
      • 4.1.1 Создающие
      • 4.1.2 Структурные
      • 4.1.3 Поведенческие
      • 4.1.4 Шаблоны интеграции
      • 4.1.5 Шаблоны отказоусточивости
      • 4.1.6 Шаблоны масштабируемости
    • 4.2 Классификация структурных/функциональных компонентов приложения
      • 4.2.1 Хранилища данных
        • 4.2.1.1 SQL
        • 4.2.1.2 noSQL
        • 4.2.1.3 Другие
      • 4.2.2 Очереди
      • 4.2.3 Кэши
      • 4.2.4 Файловые хранилища
      • 4.2.5 Балансировщики
      • 4.2.6 ORM фреймворки
      • 4.2.7 Остальные
    • 4.3 Интеграция систем, система как компонент большей системы
      • 4.3.1 Стили интеграции систем
        • 4.3.1.1 Обмен файлами
        • 4.3.1.2 Общая бд
        • 4.3.1.3 RPC
        • 4.3.1.4 Сообщения
      • 4.3.2 Работа с сообщениями
        • 4.3.2.1 Создание сообщений
        • 4.3.2.2 Направление сообщений
        • 4.3.2.3 Преобразование сообщений
        • 4.3.2.4 Обработка сообщений
        • 4.3.2.4 Канал сообщений
        • 4.3.2.5 Управление системой передачи сообщений
    • 4.4 Cloud сервисы и архитектуры

  5. Систематизация существующих структурных компонентов приложения

    • 5.1 Базы данных
      • 5.1.1 SQL
      • 5.1.2 noSQL
      • 5.1.3 Другие
    • 5.2.2 Очереди
    • 5.2.3 Кэши
    • 5.2.4 Файловые хранилища
    • 5.2.5 Балансировщики
    • 5.2.5 Распределенные вычисления
    • 5.2.6 ORM фреймворки
    • 5.2.6 CDN
    • 5.2.7 Остальные
  6. Примеры архитектурных решений и их обсуждение

  7. Работа над собственными проектами

  8. Инструменты, подходы и технологии, внутренние для разработки

    • 8.1 Мониторинг и оповещения
    • 8.2 Обработка логов
    • 8.3 Виртуализация
    • 8.4 Автоматизация релиза
    • 8.5 Прозрачность и отладка
    • 8.6 Управление конфигурациями
    • 8.7 Тестирование и управление качеством
  9. Релизы

    • 9.1 Миграции
    • 9.2 Обновление артефактов
    • 9.3 Zero-downtime
    • 9.4 Управление версиями

  10. Подходы к архитектурам

    • 10.1 Монолиты
    • 10.2 Микросервисы
    • 10.3 CQRS
    • 10.4 Масштабируемость
    • 10.5 Гибкость
    • 10.6 В стартапе
    • 10.7 Примеры

  11. Языки программирования: удобство, применимость и ограничения

  12. Позиция техлида, система, надсистема, стейкхолдеры и границы ответственности

    • 12.1 Баланс скорости и качества
    • 12.2 Технический долг и развитие бизнеса