Вадим Митин - как выстроить техническую платформу для...

22
Как выстроить техническую платформу для стабильной работы WEB-студии Митин Вадим, Генеральный директор

Transcript of Вадим Митин - как выстроить техническую платформу для...

Page 1: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Как выстроить техническую платформу для стабильной работы WEB-студии

Митин Вадим, Генеральный директор

Page 2: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

О компании

Работаем с 2012 года

Разрабатываем сайты только на Битрикс

Внедряем Битрикс24

Задействовано 15 сотрудников

Из них 8 в штате с полной занятостью

Page 3: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Основные системы

Платформа виртуализации• Виртуальные машины разработчиков• Резервирование и распределение ресурсов• Размещение внутренних сервисов

Корпоративный портал• Внутренние коммуникации• Управление проектами• Учет времени• Управление продажами

Управление разработкой• Контроль версий• Командная разработка• Codereview• Публикация на сервере

Page 4: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Виртуальная машина разработчика

У каждого разработчика своя виртуалка• Веб-окружение BitrixEnv• Графическая оболочка• PhpStorm IDE• Управление через виджет на портале

Создание полностью настроенного рабочего места требует менее часа и минимальное внимание админа

Page 5: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Рабочие копии и удаленный доступ

Каждая виртуальная машина имеет свое доменное имя и доступна только в локальной сети. Используется внутреннии DNS-сервер.b23.netex-lab.rub26.netex-lab.ru

Каждый разработчик имеет на виртуальной машине полные копии проектов, с которыми работает.tehnorama.b23.netex-lab.rutehnorama.b26.netex-lab.rumoskeramika.b26.netex-lab.ru

Доступ осуществляется через VPN.

Можно в любой момент посмотреть текущий прогресс разработчика

Нет привязки к местонахождению, железу и софту

Page 6: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Документация в IDE

Свои разработки документируем в формате PhpDoc Подключение документации по Битрикс: https://github.com/matiaspub/bxApiDocs

Page 7: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Обучение сотрудников

Выделяется отдельное время на обучение Внутренний курс для разработчиков с тестированием Курсы Академии 1С-Битрикс с последующей сертификацией

Page 8: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

База знаний

Ведется общая wiki на портале

По каждому проекту ведется своя документация в репозитории gitlab

Page 9: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Управление проектами

Один проект = рабочая группа на портале

• Выделение команды сотрудников для работы с конкретным проектом

• Управление задачами и сроками• Архив документов• Разграничение прав доступа к

проекту• После завершения проект

переносится в архив, информация не потеряется

Page 10: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Контроль работы

• Одна сделка = базовая задача на портале.

• Постановщик базовой задачи – менеджер по продажам. Ответственный – менеджер проекта. Наблюдатель – директор.

• Крайний срок базовой задачи = срок оказания услуг по договору.

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

Page 11: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Учет времени

• Задачи создаются в рабочей группе на портале проекта и привязываются к соответствующей сделке.

• Совместно с ответственным сотрудником производится оценка трудозатрат в часах. Фиксируется плановое время в задаче. Устанавливается крайний срок.

• При выполнении задачи сотрудник фиксирует затраченное время.

• Становится понятно куда тратится время (90% зафиксировано).

• Появляется возможность расчета точной рентабельности проекта и сделки.

Page 12: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Авторизация через контроллер

Встроенный модуль Контроллер в коробку Битрикс24 позволяет сделать сквозную авторизацию на подключенных сайтах клиентов

Page 13: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Контроль версий

Gitlab – центральный сервер для Git-репозиториев Полная история работы над проектом Сразу видно кто виноват Возможность командной разработки

Page 14: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Работа с ветками

• Production – ветка на боевом сервер• Devel – основная ветка разработки• Каждый разработчик работает в своей ветке• Ведущий разработчик сливает все изменения в devel

Page 15: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Codereview

При слияении веток ведущий разработчик просматривает сделанные доработки и в случае наличия замечаний по коду возвращает на доработку

Page 16: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Работа с базой данных

Для всех глобальных правок базы данных пишутся миграции на API платформы.

Миграции применяются на других копиях проекта.

Используется модуль миграций: https://github.com/andreyryabin/sprint.migration

Page 17: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Stage – отладочный сервер

Все изменения в конечном итоге обязательно попадают в ветку devel и на тестовый сервер Stage, где повторно тестируются и принимаются заказчиком.Stage доступен из интернета.

Page 18: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Deployment

На боевом сервере отслеживаются изменения с автоматическим сохранением в git. Выкладка на боевой сервер происходит автоматически при попадании изменений в

ветку production Затем применяются миграции.

Page 19: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Тикетная система

Page 20: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Управление релизами

Page 21: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Канбан доска тикетов

Page 22: Вадим Митин - как выстроить техническую платформу для стабильной работы web-студии. КИТ-форум 2016. Секция

Спасибоза внимание!

Компания Нетексhttps://[email protected]+7 (4712) 746-646