Una vez que comienzas a buscar un desarrollador independiente para colaborar, te darás cuenta de que están en todas partes. Los mercados independientes en línea están repletos de candidatos capacitados. Además de eso, seguramente encontrarás al menos uno o dos (cien) en la ciudad más cercana.

Ahora, te queda la difícil tarea de reducir este grupo de talentos a uno que funcione más eficazmente contigo. Es desalentador incluso si tienes cierta habilidad técnica, pero puede parecer casi imposible si no lo haces. Por otro lado, es fácil pensar que las consideraciones técnicas son las únicas que importan. Cualquiera que haya contratado a un genio con el que sea imposible trabajar, puede decirle cuán equivocado puede ser.

En este artículo, nos centraremos en algunas formas en que puede estar seguro de que está obteniendo el socio más compatible.

Mira su trabajo

Pida ver algo del trabajo terminado del desarrollador. Antes de comenzar a evaluar, asegúrese de comprender las partes en las que trabajó su prospecto. Dedique algo de tiempo para explorar su proyecto. Tome notas de lo que le gusta y lo que no le gusta. Tal vez crearon una aplicación web que es realmente rápida, pero impone algunas limitaciones extrañas a la contraseña del usuario. Pregúnteles qué los llevó a tomar esas decisiones.

Cualquier tipo de desarrollo de software, ya sea web, aplicaciones móviles o de escritorio, es un juego de encontrar los mejores compromisos. Escuchar las diversas concesiones a las que se enfrentó un desarrollador y su enfoque para resolver el problema es extremadamente valioso para evaluar cómo abordarán los problemas que su proyecto encontrará.

Si sabe un poco sobre el código usted mismo, puede profundizar en la cuenta de GitHub del desarrollador para ver qué han escrito y a qué proyectos han contribuido. Ver su código lo ayudará a entender si son adecuados desde el punto de vista técnico. Esto le da una idea más concreta de lo que la lista de logros de los desarrolladores realmente significa en términos de habilidad.

Aquí hay algunos aspectos del GitHub del profesional independiente que pueden no ser obvios al principio, pero debe prestar especial atención a:  

  • Idiomas: ¿el profesional independiente se adhiere a uno o dos idiomas preferidos, o se divierten en muchos idiomas diferentes? Encontrar un especialista en las tecnologías que necesita para su proyecto puede avanzar rápidamente, pero un profesional independiente con amplia experiencia puede ofrecerle sugerencias sobre otros tipos de herramientas que mejor se adapten a su trabajo.
  • Comentarios y documentación: ¿qué tan bien está documentado el código? La naturaleza del trabajo independiente significa que puede haber otras personas trabajando en el código en algún momento. ¿Será fácil trabajar con el código de este profesional independiente? Si no, eso significa que podrías comprometerte con ellos más de lo que deseas. Algunos desarrolladores creen que el código de auto-documentación significa que no necesitan ningún comentario. Si no ve los comentarios, ¿qué tan legible encuentra el código?
  • ¿Contribuyen a otros proyectos? Por contradictorio que pueda parecer, a menudo es más difícil contribuir a otros proyectos de código abierto que construir uno propio. El código de otras personas puede ser difícil de entender, pero hacerlo es una habilidad necesaria. Esto es particularmente importante si traes a un desarrollador para trabajar en una base de código existente. Si han contribuido al código abierto, es más probable que escriban código que otros puedan actualizar más adelante, ya que entienden los desafíos de hacerlo.

Descubra cómo (y qué) aprenden

Desde las mejores prácticas hasta la tecnología real utilizada, el desarrollo de software cambia a un ritmo rápido. Si termina con un desarrollador que está atrapado en las prácticas y la tecnología de hace 10 años, se perderá las herramientas y técnicas que podrían hacer que su proyecto sea mejor, más rápido y más fácil de mantener.

Pregunte a los prospectos cómo aprenden cosas nuevas y qué es lo más reciente que han aprendido que les ayuda en su desarrollo. ¿Qué ganaron al aprenderlo? ¿Qué es lo próximo que les gustaría aprender y por qué?

Incluso si no está familiarizado con los detalles de sus respuestas, puede hacerse una idea de lo curioso que es este desarrollador. Demasiada curiosidad puede llevar a que los proyectos se construyan sobre bases experimentales y no probadas, pero, en general, un desarrollador curioso puede aportar más a su proyecto.

Encuentra un comunicador compatible

La comunicación puede hacer o romper un proyecto. Asegúrese de que los desarrolladores con los que trabaja estén dispuestos y puedan comunicarse de una manera y con la frecuencia con la que pueda vivir. La mayoría de los desarrolladores tienen herramientas de comunicación en el lugar que usan con sus colegas. Mire esos y vea si funcionarán para usted. Si no, averigua si el desarrollador está bien usando las herramientas alternativas que sugieres.

Este también es un buen momento para descubrir la frecuencia con la que escuchará al desarrollador. Si la respuesta es: "Una vez al final de cada hito", es probable que no sea feliz. ¿Cuáles son las posibilidades de que el desarrollador entienda su proyecto exactamente de la manera en que lo intenta la primera vez? ¿Cuáles son las posibilidades de que cada pieza distinta que compone un hito completado esté perfectamente en su lugar tal como lo imaginaste?

Los registros regulares (al menos una vez a la semana) pueden solucionar pequeños malentendidos antes de que se conviertan en grandes.

Pruébalos con un proyecto

Aprenderá más con este método que con todos los demás combinados. Hacer preguntas de sondeo y echar un vistazo a su código solo puede darte pequeños indicios de cómo es trabajar con una persona. La mejor manera de entender cómo es trabajar con ellos es hacerlo. Una prueba también es su mejor oportunidad para pasar las cosas técnicas y las cosas que realmente importan: ¿vamos a ser miserables tratando de trabajar con esta persona?

Si es posible, rompa una pequeña parte de su proyecto y trabaje con el prospecto para completarlo. Si es posible, pagúelos para que lo hagan. Esto hace algunas cosas buenas para ti:  

  • le ofrece una forma de prueba de bajo riesgo para trabajar con el desarrollador;
  • te deja con un producto útil incluso si la relación no funciona;
  • Si puede pagar una tarifa justa, es beneficioso tanto para usted como para el desarrollador.

Menciono este último punto porque a veces las empresas se sienten tentadas de pedirles a los desarrolladores que creen un pequeño proyecto de prueba de forma gratuita a los efectos de evaluarlos y su estilo de trabajo. Esta no es una buena manera de comenzar una relación con su desarrollador. Si pueden construir algo que sea útil para usted, incluso si, al principio, no es todo el proyecto que desea construir, ¿no vale la pena pagarlo?

Probablemente es mejor que no presente esto al desarrollador como un proyecto de prueba. No necesita mentir o engañarlos de ninguna manera, pero presente esto como el proyecto. De hecho, es el proyecto por ahora. Si todo sale bien, tendrás otro proyecto para ofrecer, pero no mantengas esto sobre ellos. Afectará adversamente la relación dinámica. Nadie quiere ser sujeto de experimentación. Si todo va bien, el desarrollador querrá trabajar con usted en futuros proyectos; no tienes que usar eso al principio para mantenerlos en el gancho.

Durante este compromiso, mantén los ojos abiertos para banderas rojas. Piense cuidadosamente sobre qué tipo de comportamiento no puede solucionar.

La investigación cuidadosa vale la pena

Si su cronograma para la finalización del proyecto se aproxima y no tiene tiempo para realizar todos estos pasos, al menos realice el proyecto de prueba. Haga que su prospecto construya una parte del proyecto más grande, de esa manera su riesgo es bajo y no se desperdicia tiempo. Es una herramienta extremadamente valiosa para garantizar que esta sea una relación que desea tener. Incluso si falla y usted tiene que encontrar a alguien más, le costará menos tiempo y dinero que comprometerse con un socio de desarrollo para construir todo el proyecto solo para que no tenga éxito.

Es mucho más fácil al principio elegir a alguien que te guste y esperar lo mejor. A veces eso puede funcionar, pero, por el bien de su proyecto, debe entablar relaciones con los ojos abiertos tanto como sea posible.

Foto principal, imagen de trabajo en equipo a través de Shutterstock.