Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ZDD: как устроена разработка в BestDoctor

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →
Avatar for BestDoctor BestDoctor
December 18, 2019

ZDD: как устроена разработка в BestDoctor

Avatar for BestDoctor

BestDoctor

December 18, 2019

More Decks by BestDoctor

Other Decks in Programming

Transcript

  1. План рассказа - как появился ZDD; - основные принципы и

    их следствия; - проблемы подхода; - инструменты.
  2. Как появился ZDD - у нас был стандартный флоу разработки;

    - его было сложно оптимизировать; - и разрабатывать было не в кайф; - решили всё разобрать и построить заново; - “как выглядит крутой флоу разработки?”.
  3. Как выглядит крутой флоу разработки - очень часто интегрируем код;

    - часто релизим код; - пишем много тестов; - автоматизируем всё, что автоматизируется; - not break things much.
  4. Очень часто интегрируем код - нужен крутой CI; - всё

    в мастер, к чёрту бранчи; - используем фичафлаги; - можно ломать билд (ненадолго).
  5. Часто релизим код - нужен CD (хотя бы “для бедных”);

    - фичафлаги можно переключать руками; - мануальное тестирование не блокирует релиз; - код ревью не блокирует релиз.
  6. Пишем много тестов - разделяем разные типы тестов; - тесты

    – часть DOD всех задач; - не должно быть мигающих и date-bound тестов; - нужен код, который удобно тестировать: - аннотации типов; - чистые функции; - свои фреймворки.
  7. Автоматизируем всё - больше линтеров богу линтеров; - накатка/откатка релизов;

    - боты говорят людям, что делать; - анонимизация/накат свежего дампа.
  8. Not break things (much) - ревью; - мануальное тестирование; -

    ночные билды; - работа над ошибками.
  9. Как выглядит крутой флоу разработки - очень часто интегрируем код;

    - часто релизим код; - пишем много тестов; - автоматизируем всё, что автоматизируется; - not break things much.
  10. Проблемы - много работы для девопсеров; - нужно время разработки

    на автоматизацию; - приготовьтесь много общаться.
  11. Инструменты На https://github.com/best-doctor/ много всякого. Например: - its_on – сервис

    фичафлагов; - mr_proper – проверятор чистоты функций; - Mario – фреймворк для бизнес-логики; - flake8-* – килограмм плагинов для flake8.
  12. Спросите меня о чём-нибудь - https://github.com/best-doctor/ – это наш Гитхаб;

    - https://www.fb.com/melevir – это я, давайте дружить; - http://bit.ly/zdd_slides – это эти слайды.