Как стать автором
Обновить
157.81

Управление разработкой *

Планирование, отслеживание и контроль

Сначала показывать
Порог рейтинга
Уровень сложности

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

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 3.5K

Какое-то время назад мы столкнулись с проблемой: сроки нашей разработки и темпы реализации начали сильно стопориться. При запуске фичей команда сталкивалась с отсутствием прозрачности при отображении объема задач в спринте. У одного разработчика в работе могло находиться сразу несколько задач, поэтому было непонятно над какой из них он трудится сейчас. Кроме того, задания при переводе обратно на разработчика никак не маркировались, что повышало риск того, что они не будут замечены вовремя.  В итоге, разработчики “буксовали” на одних и тех же задачах в ожидании ценных указаний, а важные доработки терялись. Исправить ситуацию нам помог новый подход к визуализации задач на командной доске.

Как и большинство команд разработки, наша команда пользуется доской для систематизации, приоритезации и разбивки по этапам всех задач. Мы выделяем для задач шесть этапов.

Когда мы только берём задачу в работу, она попадает в Tech Design, затем задача перемещается в Development — основной этап разработки. После того, как разработка фичи окончена, задача отправляется на Review, где мы проверяем написанный разработчиком код. Затем два этапа тестирования, и, соответственно, две колонки — QA (Quality Assurance) и UAT (User Acceptance Testing). Финальная колонка — Ready to Release, то есть, фича, попавшая в неё, уже готова к выпуску в прод.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 7

Новости

Шаблонизируй это или Как ускорить разработку при помощи одного документа

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 4.4K

Привет! На связи лид команды аналитиков Magnus Tech Владислава Никитина.

В заказной разработке каждый проект начинается со сбора бизнес-требований к будущей системе. Это важный этап, ведь именно здесь определяются контуры задач, которыми займутся разработчики. И с ним связан вечный проблемный вопрос: как лучше собрать и зафиксировать эти требования, чтобы оптимизировать разработку?

Подходы у всех команд разработки в целом общие, но есть профессиональные хитрости, которые отражаются и на процессе сбора информации, и на том, как оформляются бизнес-функциональные требования. У нашего подразделения — свои подходы. Это не истина в последней инстанции, но у нас они работают достаточно хорошо. Мы хотим поделиться своим видением того, как собрать требования в единый документ, и покажем пример структуры шаблона. Используя его, можно сфокусироваться на качественном сборе требований, не тратя время на придумывание и реализацию оформления.

Начинающие бизнес- и системные аналитики найдут в этой статье что-то полезное для себя, а заказчики лучше поймут, как проходит этот этап работ, и это понимание поможет продуктивному сотрудничеству с аутсорс-разработчиками.

Читать далее
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 0

Хороший, плохой, никакой: почему важно проектировать дизайн и как это делать?

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 1.8K

Всем привет! Меня зовут Владислав Шиханов, я ведущий программист в CDEK. В этой статье я хочу рассказать о том, как мы пришли к проектированию и review плана разработки до начала реализации задачи, что это дало и как повлияло на скорость и качество разработки. Также поделюсь практическим руководством: как проектировать и проверять технический дизайн, чтобы это было быстро и удобно. Статья будет полезна разработчикам любой квалификации, но особенно тимлидам и менеджерам для внедрения практики в командах.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 2

TabNine: проверка на практике функционала и новая реальность разработки с ИИ

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 935

Привет, Хабр! На связи команда Work Solutions. Мы попросили нашего фронтенд-разработчика Александра Шапорова поделиться опытом работы с функционалом AI ассистента TabNine на реальном проекте. Саша расскажет, ускоряет ли утилита разработку, повышает ли качество кода и делает ли процесс программирования более продуктивным. А также объяснит, почему ассистенты на базе искусственного интеллекта не могут стать незаменимыми помощниками разработчиков в написании кода, и почему ИИ в ближайшее время не сможет полностью заменить программистов.

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

Армия ассистентов и утилит на базе искусственного интеллекта пополняется с каждым днем. Готова поддержать разработчиков в их нелегком деле. Среди ассистентов также появился TabNine. Разберемся, может ли этот «джинн в лампе» стать незаменимым помощником разработчиков в создании кода. 

В этой статье проанализируем примеры кода, сгенерированные AI ассистентом TabNine. Наше исследование не простая теория. Проверим результаты в контексте реального проекта и выясним, насколько код ИИ рабочий. Ответим на вопрос, можно ли использовать ассистента на реальных проектах. Расскажем о своих впечатлениях и результатах. 

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 4

Истории

Нужно ли разработчикам проектирование?

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 5.4K

Такие схемы на проектах готовят наши архитекторы. Достаточно ли их чтобы оценить состав и сложность каждого модуля, объем и трудоемкость работ в целом. Поможет ли такая схема при планировании работ?

В статье рассуждение о том что могло бы помочь.

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 17

Керниган и Пайк были правы: делай что-то одно и делай это хорошо

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 19K
Роб Пайк и Брайан Керниган

В октябре 1984 года два идеолога опубликовали радикальный манифест… ну, или что-то вроде того.

Легенды computer science Брайан Керниган и Роб Пайк сформулировали в Program Design in the UNIX Environment паттерн архитектуры ПО, за сохранение которого оба боролись долгие годы.

Как и следовало ожидать от манифеста, в нём два этих канадских инженера максимально решительны. Самый резкий удар в статье — это запомнившаяся многим строчка из аннотации:

Старые программы покрываются коркой сомнительных фич.

Суть статьи часто сводят к аббревиатуре DOTADIW, или «Do One Thing And Do It Well» («Делайте что-то одно и делайте это хорошо»). В Unix и его потомках есть множество программ, в которых воплощена эта мантра: ls просто создаёт список файлов, cat просто выводит содержимое файлов, grep просто фильтрует данные, wc просто подсчитывает слова и так далее. У каждой программы есть несколько опций, меняющих её поведение, но не слишком сильно. Например: wc можно сконфигурировать для подсчёта строк или слов, но не для подсчёта количества абзацев или вхождений какой-то фразы.

Мощь Unix, защищаемая Керниганом и Пайком, заключалась в возможности соединения этих простых программ в цепочку для создания сложных поведений. Зачем добавлять сопоставление регулярных выражений в wc, если с этим уже способна справиться grep?
Читать дальше →
Всего голосов 55: ↑52 и ↓3 +49
Комментарии 44

Релизный цикл без компромиссов: надежно для клиентов, удобно для разработки

Уровень сложности Средний
Время на прочтение 11 мин
Количество просмотров 1.4K

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

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

О том, какой путь проходит релиз и какие инструменты обеспечивают его надежность, расскажет engineering manager Mindbox, Бадал.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 5

Архитектура — всё. Да здравствует архитектура

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 4.2K

Привет! В одном из прошлых постов мы рассказывали вам, что в МКБ пришел Главный архитектор (ГА), Клецких Дмитрий. Проанализировав и оценив состояние дел, новый руководитель занялся изменениями, внедрением новых процессов и методологии. Собственно, об этом и будет пост.

Читать далее
Всего голосов 14: ↑10 и ↓4 +6
Комментарии 5

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

Время на прочтение 5 мин
Количество просмотров 1.1K

Привет! Меня зовут Дима Курамшин, я директор по бизнес-процессам в AGIMA. Недавно мы заметили, что некоторые задачи на наших досках застревают на приемке у заказчиков. Например, задачу с нуля мы делаем 10 дней, но потом в колонке Review она может лежать еще столько же или даже больше. Мы решили разобраться, в чем проблема, а в итоге довольно сильно поменяли воркфлоу.

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 0

Clickhouse: прогулки по граблям

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 7.2K

Добрый день, Хабр! 

Меня зовут Олег, я являюсь Backend-разработчиком в IT-компании «Философт» последние полтора года. Мы занимаемся разработкой платформы для жителей, подключённых к нашей системе, которая призвана помочь взаимодействовать с различными «умными» устройствами, коммуницировать с управляющей компанией, оплачивать счета ЖКХ и т.п.

Изначально разработка велась силами подрядчиков, оставивших после себя крайне посредственного качества монолит, который мы с коллегами приводим в приличный вид, постепенно распиливая на модули, а также занимаемся внедрением новых возможностей и интеграций. Одной из областей взаимодействия с пользователями является отображение показаний приборов учёта (электричество, водоснабжение и т.п.). Не так давно эта область кода была подвергнута достаточно масштабному рефакторингу и переработке, в рамках чего и состоялось наше знакомство с БД Clickhouse. 

Читать далее
Всего голосов 14: ↑9 и ↓5 +4
Комментарии 17

Автономия разработчиков. Как устроены компании нового типа

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 8.7K

Сигарная фабрика начала 20 века, фото: университет Южной Флориды

Традиционная практика физически встречаться для совместной работы в наше время иногда рассматривается как архаизм. Очевидно, она уходит корнями в аналоговое прошлое, когда для работы с техникой требовалось физическое присутствие персонала. Современные офисы появились по старой фабричной модели, как на фото.

Человек — социальное существо. Люди привыкли физически собираться вместе, чтобы действовать сообща. Но внезапно выяснилось, что для интеллектуального труда это не обязательно. Работники успешно выполняют задачи не выходя из дома… Для некоторых представителей управленческой элиты это стало шоком.
Читать дальше →
Всего голосов 54: ↑49 и ↓5 +44
Комментарии 52

Развенчание мифа о собственной продуктивности программистов

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 25K

В наше время среди разработчиков распространено убеждение, что хорошие программисты значительно лучше плохих программистов. Величина этого "значительно лучше" является предметом яростных дискуссий. Оценку в 10 раз часто называют консервативной.

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

Читать далее
Всего голосов 39: ↑34 и ↓5 +29
Комментарии 75

Проектируйте правильно

Уровень сложности Сложный
Время на прочтение 11 мин
Количество просмотров 14K

Проект это сложная история. Обычно это относительно сложное и длительное мероприятие, создать программный продукт и провести его через стадию активной разработки до первой реальной коммерческой эксплуатации. Лично я видел как этот путь, в среднем, занимал от 2 до 5 лет на проекте с большой командой разработчиков.

Фишка в том, что нужно обеспечить качество продукта. Нас за этим (как разработчиков) и нанимают на работу, чтобы мы правильно писали программные продукты и прикладывали усилия чтобы эффективно двигать продукт вперед. Но на выходе, причем иногда еще до реального большого релиза, продукт может обрасти таким количеством технического долга, что скорость разработки очень сильно падает, и кодовая база приобретает характеристики которые свойственны кодовым базам которые сложно поддерживать и развивать. И парадокс в том что все при этом действительно стараются сделать хороший программный продукт. То есть, как говорится, хотели как лучше, а получилось как всегда.

Под катом наблюдения и личные выводы почему это происходит.

Читать далее
Всего голосов 29: ↑28 и ↓1 +27
Комментарии 4

Ближайшие события

Почему алгоритмы не важны?

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 17K

Почему алгоритмы не важны?

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

В статье я рассуждаю на эту тему...

Читать далее
Всего голосов 40: ↑26 и ↓14 +12
Комментарии 44

Развитие продукта в общем цифровом пространстве

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 957

Стартапы часто сталкиваются с проблемами и вызовами, которые требуют гибкого управления. Задача руководителя – приведение организации на путь устойчивого развития.

В статье Артём Варкулевич, CEO и основатель стартапа Онтонет, руководитель отдела бизнес-архитектуры с 20-летним стажем в ИТ, расскажет, как подходы системной инженерии и онтологическая платформа поддерживают гибкие подходы к разработке в стартапе. Похожие проблемы роста существуют и в историях корпоративных команд.

Статья подводит технологический задел под существующие процессы и показывает, как обеспечить команды инструментарием управления разработкой.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 1

«Человеческая» сторона ИТ. Распространённые проблемы разработки, связанные с людьми

Время на прочтение 4 мин
Количество просмотров 2.7K

Недавно Аби Нода*, программист и генеральный директор платформы DeveloperExperience, ознакомился с исследованием The Human Side of Software Engineering Teams: An Investigation of Contemporary Challenges. В нём авторы обозначили наиболее важные «человеческие» проблемы, сопутствующие разработке ПО.

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

Подробнее о том, как человеческий фактор мешает работать программистам, читайте под катом.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее
Всего голосов 17: ↑14 и ↓3 +11
Комментарии 0

11 ошибок в резюме, из-за которых вас не берут в IT. Рассказываем, на что обратить внимание

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 30K

И снова привет! Меня зовут Валерия, я старший HR-менеджер веб-студии Пиробайт. Для нас тема откликов очень актуальна, потому что часто ищем новых сотрудников в штат: расширяемся, открываем новые направления, ищем замену. Эти поиски сопровождаются своими нюансами, которые осложняют работу и нам, и кандидатам. И имя этому нюансу — корявое резюме. 

Расскажу, почему кандидат не получает долгожданного оффера и как сделать так, чтобы вас точно заметили (по крайней мере мы)

Читать далее
Всего голосов 58: ↑22 и ↓36 -14
Комментарии 191

Когнитивные искажения в программировании. Часть 3

Время на прочтение 12 мин
Количество просмотров 4.5K

Всем привет!

На этот раз я предлагаю вашему вниманию третью статью о когнитивных искажениях. (Вот первая и вторая части.) Некоторые искажения мы разберем чуть подробнее, чем обычно, ибо встречаются они ну очень часто, довольно известны и занимательны.

Сегодня на препарацию у нас:

• корыстная предвзятость (self-serving bias);
• ошибка планирования (planning fallacy);
• эффект повального увлечения, конформизм (conformity);
• эффект авторитета (authority bias).

Читать далее
Всего голосов 14: ↑13 и ↓1 +12
Комментарии 2

Быстро, без стресса и лишних созвонов: как небольшая команда Kaiten работает над продуктом

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 1.3K

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

Меня зовут Артур Нек, я управляющий партнер Kaiten и Канбан-консультант. В статье на примере своей компании расскажу, как выстроить процессы в небольшой команде разработчиков, чтобы она оперативно обновляла продукт, но не выгорала.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 3

Принципы непрерывного рефакторинга

Уровень сложности Сложный
Время на прочтение 23 мин
Количество просмотров 8K

Работа со старым кодом для многих команд является частью повседневных обязанностей. За свою карьеру я видел и применял разные способы борьбы с тяжестью легаси. Они обычно сводились к одному из трёх основных сценариев:

«Работает — не трогай!»: вообще забить на чистки и ничего не менять. В некоторых случаях валидный подход. Но в коде, который приходится менять хотя бы даже эпизодически (фиксы багов, мелкие доделки, смена окружения и т. п.), со временем неизбежно приводит к катастрофе. Вам надо что‑то поменять в коде, и это оказывается невозможно сделать легко. Даже за тривиальные изменения приходится платить большой кровью.

«Я прочитал Роберта Мартина»: включаем чистки в обычный код. Надеваем галстук бойскаута и чистим код прямо по ходу работы над текущими задачами. Отправляем его коллегам на ревью и ждём несколько дней, покуда они не разберутся, где заканчиваются рефакторинги и начинаются непосредственно изменения по задаче. Или же уходим по кривой дорожке рефакторингов в тёмный лес и продалбываем к чертям все изначальные сроки. Когда начинаешь приводить код к идеалу, не всегда бывает так легко остановиться!

«Нужен порядок и учёт»: делаем отдельные коммиты с чистками, но нерегулярно — только когда в дело берётся соответствующий тикет. Правда, тикеты на рефакторинг почему‑то регулярно получают самый низкий приоритет во время планирования и маринуются в беклоге месяцами. Но что уж тут поделать?

Это всё ловушки! Все эти сценарии страдают одной общей проблемой: темп чисток неудовлетворительно низок. Код зарастает грязью и происходит неизбежная деградация. Задачи делаются всё медленнее, процент дефектов всё выше, отвращение от работы с кодом растёт, новички адаптируются всё медленнее и медленнее. Все несчастны и не знают, что делать.

За прошедший год я нащупал и отточил ещё один подход, который лишён указанных недостатков. И теперь готов поделиться им с вами.

Читать далее
Всего голосов 22: ↑22 и ↓0 +22
Комментарии 20

Вклад авторов

Работа