2. Зачем митапы?
Поделиться с разработчиками
Узнать что-то интересное
Обкатать новый курс для тимлидов
Обкатать новый курс для техлидов и
архитекторов
Пообщаться
3. Для кого митапы?
Для разработчиков и архитекторов
Для тестировщиков
Для тимлидов и менеджеров
Continuous integration doesn't get rid of bugs,
but it does make them dramatically easier to find
and remove. Martin Fowler
4. Мы на новом месте
Зарегистрировались 187 человек
Наш первый митап в ШАГе
5. План митапов
1. Software Craftsmanship & Agile.
Как не делать говно?
2. Принципы хранения данных
3. Обзор баз данных
4. Очереди сообщений
5. Кэши и файловые хранилища
6. План митапов
6. Как Software Craftsmanship фиксит проблемы Agile
7. БД: проектирование, масштабирование,
шардирование, реплицирование…
8. Процессы и инструменты для CI/CD
9. Логгирование и мониторинг
10. Распределенные транзакции
7. План этого митапа
1. Что такое CI/CD
2. Польза и недостатки
3. Внедрение в ваши процессы
4. Инструменты
5. Вопросы
13. Continuous Integration – что
дает
Меньше багов проходит в прод из-за
автотестов
Сборка релиза быстрее, тк интеграция
проверена на ранних этапах
Меньше переключений
14. Continuous Integration – что
дает
Стоимость тестов меньше на порядки
Команда QA фокусируется на QA, а не на
QC
15. Continuous Delivery – чего
стоит
Хорошо работающий CI
Автоматические деплои
Использовать Feature flags чтобы
закрывать несделанные фичи
16. Continuous Delivery – что дает
Деплой без усилий и без десяток проверок и
валидаций
Можно релизить так часто как только хочешь
Проще релизить мелкие вещи, короче
итерации, быстрее feedback
17. Continuous Deployment – что
дает
Хороший процесс QA, а не QC
Грамотная документация
Feature flags абсолютно необходимы
18. Continuous Deployment – что
дает
Не нужно готовить и проверять релизы
Меньше рисков при релизах
Постоянный поток улучшений для
клиента
19. CI/CD для бизнеса
Темп релизов
Продуктивность, автоматизация рутины.
Мозги – важному, остальное – машинам
Устойчивость за счет автоматизации
рутины
24. Изменения в процессах
Вы действительно к этому готовы?
Нередко CI начинается и заканчивается спорами
об инструментах
Каждый имеет свое мнение
Никто не может договориться
25. Внедрение CI/CD/CD
Подходит не везде
Сложнее с монолитами
Легче с микросервисами
Сложно с mission critical системами
Больше этапов ручных проверок
28. Внедрение CI/CD/CD
Смута в результате изменения ролей и
ответственности
Недооценка технической сложности
внедрения
Неверная стратегия автоматизации тестов
33. Ссылки
А как у них
https://habr.com/ru/company/true_engineering/blog/426821/
https://habr.com/ru/company/yandex/blog/237017/
https://www.slideshare.net/chaddickerson/continuous-deployment-at-etsy-sxsw-lean-startup-track
https://toni.org/2010/05/19/in-praise-of-continuous-deployment-the-wordpress-com-story/
https://www.forbes.com/sites/steveblank/2014/01/03/tesla-and-adobe-why-continuous-deployment-may-
mean-continuous-customer-disappointment/#59ddd5be13bc
https://medium.com/airbnb-engineering/testing-at-airbnb-199f68a0a40d#.owpgrk8hl
https://habr.com/ru/company/southbridge/blog/329262/
Best practices
https://techblog.rakuten.co.jp/2018/02/06/cd-the-best-practice/