Рубрика «управление разработкой» - 31

Привет, читатели!

В данном руководстве хочу изложить пошаговую настройку по развёртыванию платформы для непрерывного анализа и измерения качества кода. Подобных статей в сети достаточно много, но я хочу выделить лишь главное, чтобы все новички с первого раза смогли с ней разобраться.

Вы уже изучили вики, не так ли?

И прежде чем начнём

Хочу, чтобы вы определились, какую версию вам внедрять, ведь с каждым обновлением всё больше и больше плагинов становятся платными, что, естественно, скажется на финансовых затратах или функционале.

В общем — перейдите по этой ссылке и убедитесь сами: plugin version matrix

Согласно документации, сервер и базу данных рекомендуется держать на разных машинках.

Но в песочнице можно потренировать и на одной.

Итак. Я работаю с виртуальными машинками. Подготовил 2 штуки, точнее поднял одну и сделал из неё дубликат.

Под рукой у меня оказался Ubuntu server 18.04.3 LTS.

Изменить имя и ip вы сможете легко и просто с помощью этих команд:

::: change hostname :::

$ hostnamectl set-hostname sonarapp
sudo nano /etc/hostname
sudo nano /etc/hosts

::: change ip ubuntu :::

sudo nano /etc/netplan/01-eth0.yaml

Там найдите знакомые строчки и поменяйте параметры имени машинки и IP адреса.

Читать полностью »

Всем привет!

Я уже рассказывал в этом блоге об организации модульной системы мониторинга для микросервисной архитектуры и о переходе с Graphite+Whisper на Graphite+ClickHouse для хранения метрик в условиях высоких нагрузок. После чего мой коллега Сергей Носков писал о самом первом звене нашей системы мониторинга — разработанном нами Bioyino, распределённом масштабируемом агрегаторе метрик.

Пришло время немного освежить информацию о том как мы готовим мониторинг в Авито — последняя наша статья была аж в далеком 2018 году, и за это время было несколько интересных изменений в архитектуре мониторинга, управлении триггерами и нотификациями, различные оптимизации данных в ClickHouse и прочие нововведения, о которых я как раз и хочу вам рассказать.

Мы два года развивали свою систему мониторинга. Кликай, чтобы… - 1

Читать полностью »

Неформальные отношения в команде: зачем и как ими управлять - 1

Много лет назад я пришёл на должность разработчика в одну компанию и вскоре стал свидетелем необычной сцены. Тимлид соседнего отдела подозвал своего подчинённого посреди рабочего дня и довольно громко и развязно сказал ему: «Слышь, на вот тебе денег. Сгоняй в магазин, купи вискаря и закуски». 

Я подумал: «Да ладно! Странно всё это...». Но ситуация повторялась ещё несколько раз. Проработав в компании какое-то время, я понял, что подобное поведение там было нормой. Одни команды дружили против других, процветала подковёрщина, а топ-менеджмент абсолютно никак не реагировал на это. Я ушёл оттуда, несмотря на то, что и задачи были интересные, и условия неплохие. Но моральный климат был невыносим. 

Так считал не только я: сейчас этой компании уже нет. Но в тот момент я понял, насколько важно работать с неформальными отношениями, насколько существенное влияние они могут оказать на бизнес в целом. Причём работать с ними должны прежде всего линейные руководители, а не HR-менеджеры или штатные психологи, потому что именно руководители ежедневно находятся в контакте со своими подчинёнными. 

Но тимлиды в IT-сфере, как правило, сами выросли из разработчиков, инженеров и не имеют специального образования в областях психологии и методологии управления. Из-за этого зачастую менеджеры понимают свои задачи довольно узко: решать проблемы бизнеса, выполнять план и т. п. А зачем нянчиться со взрослыми людьми, им непонятно. 

В последние десять лет я занимаюсь тем, что руковожу командами разработки, семь из них — в Badoo. Эта статья написана по мотивам моего  выступления на Saint TeamLead Conf 2019: в ней я попытаюсь объяснить, как и зачем нужно работать над неформальными отношениями в коллективе. 
Читать полностью »

Всем привет! Сегодня хотел поговорить о процессах разработки. По мере роста компании не только развивается сам бизнес, но и копятся проблемы внутри, в частности в процессе разработки. Часто их пытаются решить внедрением каких-то практик и новомодных методологий. Увы, это насильное перестраивание процесса по книжкам и тренингам нередко это приводит к ещё большим проблемам — издевательству над людьми.

Недавно я выступал на конференции Saint TeamLead Conf 2019, в докладе я рассказал о том, как смог найти ряд проблем в рабочем процессе и потом постепенно поборол их. Здесь я постараюсь описать наиболее ценные практики, которые мне помогли не только наладить рабочий процесс, но и перестать издеваться над разработчиками. У сотрудников изменилось отношение к компании в целом и рабочему процессу.
Читать полностью »

Вдруг мы понимаем, что Jira превратилась в помойку. Каждый второй РП настраивал Jira как ему было удобнее бесконтрольно. А когда проект начал гореть, начал тушить пожары вручную, оставляя задачи в трекере в каком-то состоянии, далеком от завершения. Если в проекте создан полноценный CI/CD, то большая часть задач на разработку будет в правильном финальном статусе, но остальные…

Часть проектов заморозилась, часть отвалилась, РП выгнали, но задачи в Jira не почистили. У вас на руках 10-20 идущих “проектов” и нужно быстро понять где больше болит.

Сопоставив опыт участников посиделок КиФБ (клуб имени Фрэнсиса Бекона) в решении этой задачи, мы представили этот опыт в записанном виде (за что спасибо всем участникам).
Читать полностью »

Как подсидеть тимлида - 1

Пятница – самый подходящий день для того, чтобы наконец-то свергнуть власть своего тимлида. Он никогда не решит уволиться по своей воле, потому что это не работа, а сказка. Его нужно сломать и не оставить ему другого выхода. Давайте разберемся, как сделать так, чтобы он пришел к этой мысли самостоятельно!
Читать полностью »

Прим. перев.: Эта публикация британского программиста, ставшая настоящим хитом в англоязычном интернете, ссылается на Git-коммит 6-летней давности. Он был зафиксирован в одном из открытых репозиториев Government Digital Service — службы, занимающейся развитием цифровых услуг в Великобритании и поддерживающей проект GOV.UK. Сам коммит интересен не столько изменениями в коде, сколько сопровождающим их описанием…

Мой любимый Git-коммит - 1
Картинка из xkcd #1296

Я обожаю описания коммитов в Git. При правильном применении их можно назвать одним из самых мощных инструментов по документированию эволюции кодовой базы за время ее существования. Свою точку зрения хочу проиллюстрировать на примере моего самого любимого описания.Читать полностью »

Недавно, совершенно случайно, с подачи одного хорошего человека, родилась идея — к каждой статье прикладывать краткое содержание. Не аннотацию, не завлекаловку, а именно краткое содержание. Такое, чтобы можно было статью не читать вообще.
Я попробовал, и мне жутко понравилось. Но это пофиг — главное, что понравилось читателям. Начали возвращаться те, кто давно перестал читать, заклеймив меня графоманом. И другой хороший человек посоветовал написать краткое содержание для каждой старой статьи.
Я согласился и теперь, между делом, пишу эти коротышки. Назвал их шортами.
Вашему вниманию предлагаю несколько таких шортов, по нескольким публикациям. Вдруг что-то полезное для себя найдете.Читать полностью »

На последней встрече сообщества IT-руководителей мы поставили перед спикерами непростую задачу — говорить не только про успехи, но и про проблемы руководителей в IT. В итоге получился честный разговор про ситуации, с которыми однажды столкнется каждый: подбор сотрудников, увольнения, сложные кадровые перестановки. 

Как нанимать, увольнять и возвращать из менеджмента в разработку: видео с Badoo Techleads Meetup #5 - 1

Спасибо спикерам, которые откровенно рассказали, что не все получается с первого раза и многие решения имеют две стороны. И гостям, которые, кажется, могли задавать вопросы бесконечно.

Видео и презентации — под катом. Приятного просмотра!
Читать полностью »

Создаем отдел джунов в помощь основным командам, используя лишь Slack, Jira и синюю изоленту - 1

Почти вся команда разработки Skyeng, состоящая из более чем 100 человек, работает удаленно и требования к специалистам всегда были высоки: мы искали синьоров, fullstack-девелоперов и мидлов. Но в начале 2019 года мы впервые наняли трех джуниоров. Сделано это было по нескольким причинам: найм только супер-специалистов не решает всех проблем, а для создания здоровой атмосферы в разработке нужны люди разного уровня профессионализма.

Когда вы работаете удаленно, то крайне важно, чтобы человек пришел на проект и сразу же начал приносить пользу, без каких-то долгих процессов обучения и раскачки. С джуниорами так не получается, плюс, кроме обучения, требуется еще и грамотная интеграция новичка в команду, ведь ему все в новинку. А это уже отдельная задача для тимлида. Поэтому мы были сконцентрированы на поиске и найме более опытных и уже состоявшихся девелоперов. Но со временем выяснилось, что в командах, состоящих только из синьоров и fullstack-разработчиков, есть свои проблемы. Например, кто будет заниматься рутинными, но обязательными задачами, которые не требуют супер-квалификации и каких-то особенных знаний?
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js