Ответ
Я рассматриваю удалённый (remote) или гибридный формат (с редкими визитами в офис, 1-2 раза в месяц/квартал). Для меня ключевыми являются:
- Эффективные процессы коммуникации: Чёткие async-каналы (Slack, email), синхронные встречи с записью и agenda, хорошая документация. В C++-проектах это особенно важно из-за сложности предметной области.
- Качество инструментов и инфраструктуры: Доступ к мощной рабочей станции или облачным билд-фермам для компиляции больших C++ проектов, налаженный CI/CD (например, на базе GitLab CI или Jenkins), система code review (Gerrit, GitHub PRs).
- Фокус на глубокой работе: Возможность концентрироваться на сложных задачах (оптимизация, отладка многопоточных гонок, проектирование API) без постоянных контекст-свитчей.
Мой прошлый опыт в распределённой команде над opensource-проектом на C++ показал, что такой формат может быть очень продуктивным, если все участники дисциплинированы в коммуникации и используют правильные инструменты (например, clang-format и clang-tidy для единого стиля кода, автоматические билды на каждый коммит).
Ответ 18+ 🔞
Слушай, давай я тебе начистоту, как есть. Про удалёнку или этот гибридный пиздец, где в офис раз в квартал приезжаешь, как на экскурсию. Я за, но с оговорками, которые в рот мне чих-пых, если их не соблюсти.
Вот смотри, первое и главное — коммуникация. Если у вас там в слаке бардак, встречи без повестки, а документация писалась, когда на дворе был 2002-й год — это пиздец, а не работа. Мне нужны чёткие каналы: вот это для срочного, это для обсуждения архитектуры, а сюда можно писать хоть в три ночи, ответят утром. И чтобы на созвонах не лили воду час, а за 15 минут решали вопрос и расходились. В C++-то проектах, если архитектуру на пальцах объяснять, можно до завтра проговорить, а толку — ноль ебать.
Второй пункт — инструменты. Это, блядь, святое. Если мне для сборки проекта из сотен тысяч строк на плюсах дадут слабенький ноутбук, который компилит полдня, я просто с ума сойду, терпения ноль ебать. Нужна или мощная станция под рукой, или доступ к облачной билд-ферме, где всё параллелится за минуты. И чтоб CI/CD был настроен не абы как, а чтобы на каждый чих автоматически прогонялись тесты, линтеры вроде clang-tidy и статический анализ. Чтобы не получилось, что ты неделю пишешь код, а потом выясняется, что он нихуя не собирается у остальных. Code review — обязательно. Без этого — распиздяйство.
И третий момент, самый для меня важный — возможность погрузиться. Понимаешь, о чём я? Чтобы не отвлекали каждые полчаса то вопросом, то бессмысленной планеркой. Когда копаешься в ядре, ищешь причину гонки данных или проектируешь новый API, нужно, чтобы голова варила в одной кастрюле, а не металась между десятью задачами. Вот эта тишина и глубокая работа — они на удалёнке либо есть, либо их нет. Если менеджмент этого не понимает и считает, что ты должен быть всегда онлайн в чате — это путь в никуда.
У меня уже был опыт в распределённой команде над одним open source проектом на C++. Так вот, когда всё по уму: у всех единый стиль через clang-format, билд падает — сразу приходит алерт, ревью кодера с опытом, а не мартышлюшки какой-то, — то работается, блядь, как по маслу. Продуктивность — овердохуища. А если начинается бардак и «ой, а давайте быстро созвонимся без темы», то хоть волком вой. Так что да, формат рабочий, но только если все, включая руководство, не идиоты и понимают базовые принципы.