Какое распределение по часовым поясам в команде
Что проверяют
Этот вопрос чаще задаёт сам кандидат, и правильно делает: от ответа зависит, во сколько у вас созвоны и сколько ждать ревью. Если же его задают вам, интервьюер хочет понять, работали ли вы в распределённой команде и умеете ли договариваться асинхронно. Следом обычно спрашивают, как вы строили работу, когда пересечения по времени почти не было.
Как отвечать
Если спрашиваете вы, уточните то, что реально влияет на ваш день:
- разброс поясов: от и до, где основная часть команды и где тимлид;
- пересечение: есть ли общее окно, например 3-4 часа, и во сколько по вашему времени стендап;
- ревью и релизы: сколько обычно ждёт pull request в GitHub или Azure DevOps, в чьё время идут деплои;
- дежурства: есть ли on-call и как он делится между поясами.
Если спрашивают вас, расскажите про свою команду: сколько человек, какие пояса, как устроили общее окно для синка и что вынесли в асинхронный режим (подробные описания задач, запись созвонов, решения в тикетах, а не в личке). Цифры и примеры берите свои. Если работали только в одном поясе, скажите прямо и объясните, как организовали бы работу.
Для .NET-разработчика тема часто перетекает в код, и это хороший момент показать опыт:
- хранение времени: в базе UTC или
DateTimeOffset, а не локальныйDateTime, у которогоKindлегко теряется; - пояса:
TimeZoneInfo.FindSystemTimeZoneByIdначиная с .NET 6 принимает и Windows-, и IANA-идентификаторы на всех платформах; - тесты: абстракция
TimeProviderиз .NET 8 вместо прямых вызововDateTime.UtcNow.
Где спотыкаются
Отвечают «со всеми работал, проблем не было». Звучит так, будто разницы вы не замечали, а значит, никак её не учитывали.
Не задают этот вопрос работодателю вовсе, а после выхода обнаруживают стендап в десять вечера.
Путают удобство с продуктивностью: предлагают всем подстраиваться под созвоны, вместо того чтобы сократить их число и перевести решения в письменный вид.