12704624473_f79bc9c185_k

El reclutamiento de ingenieros de software seniors a veces requiere administrar equipos de desarrollo que trabajan en forma remota. En la siguiente nota te damos ocho consejos para que realices esta tarea con facilidad.

Para nadie es un misterio que la demanda por reclutar nuevos talentos para producir software de ingeniería superior va en un completo aumento, lo que significa que mantener a los desarrolladores se ha convertido en uno de los máximos desafíos de un CIO.

Paul Graham, cofundador de Y Combinator, publicó en su blog que “si Estados Unidos tiene menos del 5% de la población mundial, y si las cualidades que hacen a alguien un gran programador se distribuyen de manera uniforme, el 95% de los grandes programadores nacen fuera de los EE.UU”.

Esto es positivo para países como Chile, sin embargo, también implica trabajar a distancia por medio de equipos remotos de desarrolladores. Si te aventuras con esta alternativa, acá te compartimos algunos consejos:

1. La comunicación es el centro de TODO

Recogiendo las palabras de Matt Mullenweg, desarrollador original de WordPress y fundador de Web Automattic, “la buena comunicación es increíblemente importante si quieres tener éxito”. Agrega además que “si quieres hacerlo bien, los equipos de desarrollo distribuidos pueden trabajar mejor que aquellos yuxtapuestos”.

¿Entonces cuál es la mejor vía de comunicación entre el equipo remoto de desarrolladores? Mullenweg advierte que no es el correo electrónico, porque no es lo suficientemente colaborativo. Él recomienda el uso de un tema de WordPress llamado P2 en vez del correo electrónico, la plataforma Slack para el equipo de mensajería y Google Hangouts para reuniones.

2. Escoge los proyectos adecuados

Es cierto, no todos los proyectos pueden funcionar con un equipo remoto de desarrolladores. Naresh Jain, fundador de la Comunidad de Software de la India Agile, explica que “si necesitas experiencia en el campo y retroalimentación de un área de negocios, es óptimo que se desarrolle de forma distribuida”.

En los proyectos de software para bancos o compañías de seguros, por ejemplo, a menudo necesitarás, de forma cercana, el dominio de expertos para asegurarte que el desarrollador entenderá lo que se necesita.

3. Contrata a desarrolladores que le guste trabajar de forma remota

Puede sonar obvio, pero es demasiado importante. Mullengew dice que “todo comienza con la contratación. Necesitas filtrar personas que no sean productivas en un entorno remoto”.

Mullengew señala que muchas compañías cuentan con personas que trabajan en roles que se distribuyen, como periodistas en una organización de noticias o vendedores en casi cualquier organización, y esas personas acostumbran a trabajar de forma remota. Sin embargo, aunque algunos desarrolladores sean los adecuados para trabajar de esta forma, no será automático para todos ellos.

4. Reúnanse regularmente

Las herramientas de comunicación electrónicas pueden ser efectivas, pero es difícil para los equipos remotos. “Nosotros lo resolvemos por medio de reuniones trimestrales”, comenta Avleen Vig, ingeniero de operaciones en el mercado de artesanía en línea Etsy.

Además, explica Vig, estas reuniones trimestrales ayudan a los desarrolladores para hacer conexiones sociales entre sí y aprender cómo les gusta relacionarse: formal o informalmente.

5. Para equipos remotos, gerentes remotos

Un buen gerente no será necesariamente bueno administrando un equipo distribuido, explica Vig. “Cuando trabajaba en la oficina solía tener un uno-a-uno con mi manager una vez a la semana durante 30 minutos. Ahora que trabajo de forma remota, mi manager me llama dos o tres veces a la semana durante una hora. Esto puede parecer como una pérdida de tiempo, pero no lo es, es como si tuviésemos más interacciones en el pasillo. El punto es que ahora se necesita más tiempo para que me llene. Los líderes deben aprender nuevas habilidades”.

6. ¡Cuidado con las zonas horarias! Pero también aprovéchalas

Claramente, las zonas horarias pueden resultar un verdadero dolor de cabeza cuando se trabaja con equipos distribuidos, dice Mullenweg. “No tratamos de poner a los desarrolladores en el mismo lugar, pero sí tratamos de mantenerlos repartidos en no más de ocho horas”.

Una mayor diferencia en el tiempo pueden hacer más difícil el trabajo, pero si necesitas mantener activo a tu equipo durante las 24 horas, los 7 días de la semana y los 365 días del año, tener un equipo en diferentes zonas horarias alrededor del mundo puede ser un gran beneficio, agrega Mullenweg.

Lo anterior, porque siempre será de día en algún lugar, lo que hace más fácil llenar los turnos de noche y si los miembros del equipo están en diferentes países, te asegura que no todos están celebrando el mismo día de fiesta nacional o religiosa.

7. El trabajo predeterminado también hazlo remoto

Muchos equipos de desarrollo distribuidos tienen un núcleo de desarrollares que trabajan en una oficina tan bien como lo hacen de forma remota. Si ese es el caso, entonces Vig recomienda tratar a cada miembro del equipo como un trabajador a distancia.

“Necesitas lograr que todos en la oficina usen correo electrónico, mensajería instantánea y otras herramientas de comunicación”, dice. “Si los trabajadores en la oficina ignoran las herramientas de comunicación de grupo, entonces los trabajadores remotos quedarán excluidos de las conversaciones, rompiendo la dinámica del equipo”.

8. Trata a todas las comunicaciones como asincrónicas

El último consejo de Vig se trata sobre cómo los desarrolladores remotos están acostumbrados a trabajar. Él dice que las herramientas de comunicación pueden ser eficaces, pero a veces requieren un ajuste para las conversaciones cara a cara con los desarrolladores. “Tienes que aprender a confiar en que alguien responderá tus mensajes. No puedes sentarte ahí a esperar por una respuesta y sentir que quedarás fuera porque no recibes una respuesta inmediata”, comenta.

Fotografía: Stacie DaPonte

Fuente artículo: «8 tips for finding and managing programmers»