Рубрики
разное

Окружение для работы

shell

• sh
• bash
• dash
• zsh (oh-my-zsh)

Текстовый редактор

• Visual Studio Code   https://code.visualstudio.com/
• Atom                 https://atom.io/
• Sublime              https://www.sublimetext.com/
• Vim                  https://b14esh.com/category/nix/vim

Графический клиент для работы с Git

 
• SourceTree
• GitKraken
• GitUp
• Atom, VS Code

Дополнительные компоненты

• Ansible, ChefDK, Terraform
• Python, Ruby, Go + libraries
• Docker, Vagrant
• gcloud, awscli

Командный чат

• Slack
• HipChat
• Campfire
• IRC
• и т.д.

ChatOps

• Модель командного взаимодействия, которую приписывают GitHub
• Максимальная интеграция чата с другими сервисами (СI, Monitoring, Issue tracking)
• Бот (Hubot, Err, Lita) выполняет команды из чата
• Отказ от терминала и браузера - вся работа и взаимодействие происходят в общем чате

Плюсы ChatOps
• Видимость происходящих событий
• Общий контекст
• Командное взаимодействие и обучение
• Скорость распространения информации
• Мгновенная документация процессов
• Стандартизация и автоматизация выполнения задач
• Повышение безопасности и контроля
• Больше увлеченность людей в общий процесс
• More fun :)

Правильные вопросы

Когда нет понимания рабочего процесса ...
• Сколько времени нам нужно, чтобы разработать и запустить новую фичу?
• Почему мы ничего не успеваем в срок?
• Кто чем занимается?
• Мне нужна виртуальная машина, кого я могу попросить помочь?
• За какую задачу мне стоит взяться в первую очередь? Кого мне об этом спросить?

Что нам нужно?
• Визуализация рабочего процесса
• Правила работы
• Улучшение и кастомизация под себя

Причины плохой производительности
• Неправильная расстановка приоритетов
• Неравномерное распределение работы (bottlenecks)
• Multitasking многозадачность не приводит ни к чему хорошему

Pull система 
• Новые задачи сохраняются в общую очередь
• Освободившиеся берут на себя новую задачу
• Можно планировать время выполнения задач
• Равномерное распределение нагрузки и занятость всех работников
• Задачи выполняются в порядке общих приоритетов
• Анализ задач и возможность их корректировки

Push система 
• Задачи даются без учета текущей нагрузки
• Приоритет определяется рангом попросившего
• Невозможность предсказать, когда работа будет выполнена
• Фокус на личные цели, а не на общие цели компании
• Постоянный стресс и куча незаконченной работы

Визуализация работы
Явное лучше неявного
Механизмы обратной связи встроены в рабочий процесс (ChatOps, Standups, WIP)
Необходимость выравнивания нагрузки