Работа удаленно имеет ряд преимуществ как для организаций, так и для людей. При найме, у вас будет доступ к гораздому большому пулу кандидатов, имея дело с более низкими накладными расходами. Как человек, вы можете работать где угодно (и во многих ситуациях, в любое время). Соответственно, многие разработчики программного обеспечения обратились к найме удаленных команд для достижения своих целей.
Однако, если вы будете успешными Управление командой дистанционного программного обеспечения , есть некоторые дополнительные соображения для участия в уме. Удаленное разработка программного обеспечения имеет некоторые недостатки, но вы можете компенсировать их с правильным подходом.
Основные концепции для управления дистанционными группами разработки программного обеспечения
Вообще говоря, эффективное управление командой разработки удаленного программного обеспечения может быть выполнено в отношении трех основных категорий:
- Создание лучшей команды. Все начинается с сил и способностей вашей команды. С самыми квалифицированными, лучшими организованными разработчиками программного обеспечения в вашей команде вам не придется много управлять; Они позаботятся о большинстве обязанностей самостоятельно. Кроме того, с правильными текущими стратегиями по команде и стратегическим развитием вы можете сделать вашу удаленную команду еще лучше.
- Оставаться организованным. Даже самые подготовленные, самые знающие кандидаты будут бороться, если они не уверены, какие основные приоритеты являются или если они не знают, где найти информацию, которую им нужно. Организовано пребывание о создании надлежащих иерархий, организации проектов и задач, постановка целей и отслеживания отдельных обязанностей.
- Общение. Наконец, есть связь. Хорошее общение может предотвратить подавляющее большинство проблем разработки программного обеспечения, которые когда-либо возникают, и быстро разрешают все проблемы, которые остаются. Хорошая связь Правильно ретрансляционные инструкции, активно слушающие ваши разработчики и разрешающие конфликты.
Мы рассмотрим каждый из этих приоритетов в свою очередь.
Создание лучшей команды
Ваша первая работа создает лучшую команду разработки программного обеспечения, которая не будет легкой. Это начинается с процесса найма, но последоедет вам бесконечно с текущими вариантами образования и обучения.
Полное время, неполный рабочий день, внештатный или аутсорсинг?
Одним из ваших первых крупных решений будет обсуждаться, следует ли нанимать штатных разработчиков, неполный рабочий день, неполный рабочий день, независимые разработчики или должны ли использовать ваше разработка программного обеспечения для другой компании. Как вы можете себе представить, есть преимущества и недостатки для каждого.
Часть вашего решения будет зависеть от размера и объема ваших текущих проектов. Если вы работаете над низкими приоритетами, или если у вас нет много делать, неполный рабочий день разработчики или фрилансеры могут быть достаточными.
Полные разработчики дадут вам максимально возможный доступ к вашей команде, но они также будут относительно дорогими. Кроме того, если вы нанимаете неполный или полный рабочий день разработчиков, вам нужно внимательно вентировать ваши варианты, прежде чем довести их в свою команду.
Для многих проектов разработки программного обеспечения лучшим вариантом является аутсорсинг вашей работы к фирме разработки программного обеспечения. Аутсорсинг дает вам доступ к полноценной команде специалистов по разработке программного обеспечения для относительно низкой цены и дает гибкую масштабируемость, поэтому вы можете добавить больше ресурсов, сколько вам нужно.
Культура подходит
Какой бы вариант вы пойдете, вам нужно будет думать о культуре подходящей вашей команды.
Рассмотреть возможность:
- Трудовая этика. Вы захотите нанять людей, которые действительно заботятся о проектах, на которых они работают. Лучшая рабочая этика означает, что ваша команда будет более адаптируемыми, более отзывчивыми и более заинтересованными в создании наилучших возможных продуктов.
- Автономия и независимость. Работа с дистанционным средством означает, что мало не имеет прямого наблюдения. Соответственно, вам нужно найти членов команды, которые могут работать с автономией и независимостью; Они должны быть способны устанавливать свои личные цели, управлять своим собственным временем и завершать проекты без постоянных напоминаний.
- Потенциал совместной работы. Хотя некоторые работы могут быть выполнены полностью независимо, вы также захотите найти разработчиков программного обеспечения, которые хорошо работают вместе. Вы должны найти команды игроков, которые могут поделиться проектами, даже если физически удалены.
- Коммуникация. Конечно, вам также придется рассмотреть навыки общения — мы посвятили целую раздел к теме.
Вы можете судить о некоторых из этих аспектов, основанных на резюме человека; Если у них много опыта работы в составе команды, или, кажется, они, кажется, ценят командную работу в своих самоописаниях, вы можете рассчитывать на них хорошим сотрудником. Вам придется обнаружить другие аспекты во время процесса собеседования; Например, их коммуникативные навыки должны быть самоочевидными.
Рекрутинг и обучение
Поиск лучших кандидатов и подготовка их к успеху, также является вызовом для дистанционных групп дистанционного развития. Если вы аутсорсируете свою работу, вы получите почти немедленный доступ к квалифицированным кандидатам, поэтому вам не придется слишком беспокоиться об этом. В противном случае вам нужно инвестировать в Стратегия входящего рекрутинга или проактивно разведчик для кандидатов в Интернете, которые соответствуют вашим критериям.
Оттуда вам нужно дать вашему удаленному программному обеспечению лучшим возможным вероятным вероятностью успеха, обучая их в желаемых рабочих процессах и процессах. Они уже должны быть знакомы с основными лучшими практиками для разработки программного обеспечения, но вам нужно будет проинструктировать их о том, как вы хотите, чтобы они общались, ваши ожидания для их планирования и других областей, которые могут варьироваться в зависимости от работодателя/менеджера.
Teambuilding
TeamBuilding трудно, когда вы управляете удаленной командой, так как вы не будете работать в том же месте. Тем не менее, есть шаги, которые вы можете принять, чтобы укрепить вашу коллективную работу культуры, лучше познакомить своих отдельных разработчиков, а также культивировать команды облигаций для лучшего сотрудничества. Например, вы можете размещать удаленные ланчи и отдельные упражнения на строительстве команды.
Постоянное развитие
Наконец, вам нужно будет провести время в инвестировании в текущее обучение, образование и развитие вашей команды. Предоставление членов вашей команды доступа к ресурсам, поддержка в их постоянном образовании, а прямая наставничество не только сделает их лучшими сотрудниками, но также увеличит их мораль и удовлетворение. Возможно, вам не нужно учитывать этот момент, если вы аутсорсируете потребности в разработке программного обеспечения.
Оставаться организованным
Пребывание организовано все о создании иерархий, систем и сооружений, необходимых для всех в команде, чтобы хорошо функционировать.
Иерархии команды и отдельные роли
Во-первых, вам нужно будет провести время, устанавливая четкую команду иерархию. Кто будет отвечать на кого? Как будут обязанности каждого члена команды? Чем более прямые и однозначные вы находитесь в этих заданиях, тем легче работа будет течь в будущем.
Цели
Удаленные руководители команды также должны устанавливать эффективные цели, как на уровне команды, так и на индивидуальном уровне. Например, вам нужно решить, как вы хотите закончить конкретные проекты в качестве команды, а также поощряют людей в команде повысить свои сильные стороны и сбалансировать свои слабости.
Одна вызов здесь — оставаться сосредоточенными на приоритетах высокого уровня и среднего уровня; Если вы проводите слишком много времени, ориентированные на низкоуровневые приоритеты и минауты, ваша команда не сможет эффективно работать. Помните, что вы наняли людей частично, потому что вы зависите от них, чтобы работать автономно и независимо; Не получай догнал в микроумении их Отказ
Часовые пояса
Многие распространенные команды разработки программного обеспечения включают членов команды из разных часовых поясов. Обычно это не так много проблем, пока вы это признаете. Разрешить членам вашей команды работать независимо, когда это возможно, и полагаться на перекрытие между сдвигами в разных часовых зонах, чтобы расписание встреч. Большинство вопросов могут дождаться нескольких часов (или дольше), чтобы решить, поэтому полагаться на электронную почту, системы управления проектами и другими неотрезанными каналами связи для решения большинства ваших вопросов.
Прочие протоколы управления проектом и задач
Вам также необходимо будет иметь некоторые протоколы управления проектами и задачами. Кто будет нести ответственность за создание новых проектов, и кто будет нести ответственность за претензию и присвоение задач? Кто будет нести ответственность за настройки и/или обновление сроков?
Кроме того, какие данные необходимы для разработчика начать работу над проектом? Какие шаги должны брать, если детали недостаточно?
Формально документирование этих протоколов облегчит всю свою команду на одной странице.
Стили лидерства
Разные люди лучше реагируют на различные лидерские стили. Вам нужно будет использовать смесь разных тактиков, чтобы сохранить мотивацию вашей удаленной команды. Например, некоторые люди лучше реагируют на лидера с сильным видением и ясным чувством направления, в то время как другие лучше реагируют в минималистичный лидер, который поддерживает подход к практике.
Гибкость
Одним из присущих преимуществ работы с дистанционной группой разработчиков программного обеспечения является его гибкость. Вы можете позволить членам вашей команды работать из любого места и нанимать людей со всего мира. Максимизировать свой потенциал, позволяя еще больше гибкости; Пусть ваша команда работает в течение часов, которые подойдут им наилучшим образом (когда это возможно) и дать им больше контроля над их заданиями. Они будут тяготеть на работу, которая наиболее выполняет и наиболее продуктивна для них.
Общение
Возможно, коммуникация является наиболее важным фактором для рассмотрения при управлении удаленной командой разработчиков программного обеспечения. Если вы активны и ясно, ваше сообщение должно предотвратить возникновение большинства вопросов. Когда проблемы разрабатываются, вы можете использовать связь для их разрешения.
Прозрачность
Один ключевой аспект хорошего общения в удаленной команде является прозрачность; Важно объяснить ваши цели высокого уровня, мотивации и мысли, связанные с различными проектами и задачами. Например, если ваш разработчик считает, что они могут закончить проект через две недели, и вы хотите, чтобы они закончили в одном, объясните свои рассуждения за продвижением срока. Если ваш разработчик спрашивает, почему вы следите за определенным процессом управления проектами, просветите их.
Прозрачность отлично подходит для строительства доверия И поможет вашей команде разработки программного обеспечения лучше понять внутреннюю работу вашей организации.
Ясность
Детали имеют значение. Когда вы присваиваете проекты, срабатывающую область, создавая билеты на ошибку или обрабатывающую любую другую связь в команде, вы должны быть максимально ясными. Определите каждый элемент в вашем сообщении со спецификой и избегайте неоднозначных чисел, которые могут быть неверно истолкованы. Кроме того, вы должны сохранить ваши обмен сообщениями как можно простым, кратко и прямым.
Также хорошая идея наметить немного Backstory при назначении новых проектов и задач. Таким образом, разработчики смогут работать с контекстом.
Подотчетность
Хорошая связь требует того, что отдельные разработчики программного обеспечения принимают подотчетность и признают свои обязанности в разных областях, особенно при работе удаленно. Если вы отправите электронное письмо разработчику, запрашивающему их работать над заданием, они должны следить за ответом, который они работают над этим.
Точно так же вам нужно будет иметь политику на месте для наблюдения и регистрации. Даже если вы доверяете своим разработчикам справиться с работой, она платит, чтобы получить регулярные обновления.
Каналы связи
Разработка удаленного программного обеспечения возможна частично из-за чистого количества вариантов связи, доступных для команд. Вы можете отправить по электронной почте, назначать задачи на платформе управления проектами, мгновенно чат, видео чат, конференц-вызов или текст, чтобы получить сообщение.
Большая часть вашего успеха будет зависеть от вашей способности эффективно использовать эти каналы. Например, тексты отлично подходят для коротких, односторонних коммуникаций или неотложных вопросов, но конференц-вызовы и видеозвонки намного лучше для расширенных дискуссий. Убедитесь, что члены вашей команды понимают, как использовать каждый из этих каналов для их наибольшего преимущества.
Пока вы у вас на этом, избегайте трата времени с ненужными встречами и нерелевантными коммуникациями. Кумулятивно, непродуктивные встречи стоят миллиарды долларов каждый год И они часто могут быть заменены на гораздо более дешевые, более быстрые формы связи.
Разрешение конфликтов
Неизбежно, конфликты возникают в вашей команде разработки программного обеспечения. Работаю удаленно, у вас не будет возможности для разрешения лица к лицу. Вместо этого вам нужно будет использовать серию тактики для удаленного управления конфликтами. Первый шаг признает, что конфликт возникла, что может быть сложно, если вы просто изменяете тонус письменного письма, а не видеть выразительность на лице человека.
Оттуда вам нужно проактивный подход. Любая сторона, если они должны взять на себя самостоятельно решать конфликту, объяснить предполагаемую жалобу и предложить предложение о том, что может сделать его лучше. Со всеми работающими вместе, чтобы разрешить конфликты быстро, у вас должно быть мало, чтобы не было проблем с разрешением споров.
Обратная связь и улучшение
Одним из важнейших элементов в вашем подходе к общению является сборный обратную связь и оставаясь готов улучшить. Периодически (возможно, во время регулярных отзывов эффективности сотрудников), найдите время, чтобы прослушать пункты обратной связи сотрудников, таких как системы, которые могут быть улучшены или конфликты, которые могли бы быть обрабатываться лучше. Используйте их как возможности для обучения для улучшения вашего подхода для управления.
Оригинал: «https://dev.to/codevdotco/how-to-manage-remote-software-development-teams-1cbj»