Сколько задач в день ты решал на прошлой работе?

Ответ

Нагрузка варьировалась в зависимости от сложности задач и этапа проекта. В среднем, за рабочий день удавалось качественно завершить от 2 до 5 задач.

Что учитывалось при оценке:

  • Сложность задачи: Небольшой баг-фикс или рефакторинг можно сделать за час, а на реализацию нового сложного функционала или исследовательскую задачу (spike) могла уйти пара дней.
  • Полный цикл работы: Задача считалась завершенной не после коммита, а после прохождения код-ревью, тестирования (как авто-, так и ручного, если необходимо) и мерджа в основную ветку.
  • Нетехническая активность: Планирование (stand-up, планирование спринта), обсуждения с командой, менторинг.

Пример типичного дня:

// Задача 1: Быстрый рефакторинг для улучшения читаемости (30-60 мин).
// Было:
public decimal CalculateDiscount(bool isPremium, int years) 
{ 
    return isPremium ? (years > 5 ? 0.2m : 0.1m) : 0m; 
}
// Стало:
public decimal CalculateDiscount(Customer customer)
{
    if (!customer.IsPremium) return 0m;
    return customer.LoyaltyYears > 5 ? 0.2m : 0.1m;
}

// Задача 2: Исправление бага в логике обработки заказа (2-3 часа).
// Задача 3: Участие в проектировании нового API (1-2 часа, обсуждение + наброски).

Главным приоритетом было не максимальное количество закрытых тикетов, а качество, поддерживаемость кода и достижение целей спринта командой в целом.

Ответ 18+ 🔞

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

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

А теперь, блядь, смотри, что в эти цифры входило:

  • Сложность: Это ж не хуй собачий! Одно дело — поправить запятую в сообщении об ошибке (сделал, пока кофе пил). И совсем другое — влезть в легаси-код, который писал какой-то полупидор десять лет назад, и не сломать всё к хуям. На такое мог и пару дней уйти, если повезёт.
  • Не просто написать, а довести до ума: Считалось-то не когда ты в репозиторий свой говнокод закинул. А только после того, как коллеги на код-ревью посмотрели, не обосрали, тесты прошли, и это чудо наконец влилось в основную ветку. А это, поверь, время тоже ебало.
  • Всякая хуйня помимо кода: Эти ваши стендапы, где каждый рассказывает, что он вчера делал (а все и так в тикетах видят), планирования, обсуждения. Или когда к тебе стажёр пристаёт, как маньяк — это всё силы и часы жрёт, будь оно неладно.

Вот смотри, как примерно день проходил у нормального человека:

// Задача 1: Быстренько причесать код, который писался на коленке (30-60 минут, если не отвлекали).
// Было — пиздец, глаза кровоточат:
public decimal CalculateDiscount(bool isPremium, int years) 
{ 
    return isPremium ? (years > 5 ? 0.2m : 0.1m) : 0m; 
}
// Стало — теперь хоть видно, что тут происходит:
public decimal CalculateDiscount(Customer customer)
{
    if (!customer.IsPremium) return 0m;
    return customer.LoyaltyYears > 5 ? 0.2m : 0.1m;
}

// Задача 2: Починить баг, из-за которого заказы нахуй пропадали (2-3 часа, если повезёт найти причину быстро).
// Задача 3: Послушать, как менеджер с проджектом спорят про новое АПИ, и вставить свои пять копеек, чтобы потом не переделывать (ещё час-два жизни на ветер).

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