10 consejos para encontrar y contratar a los mejores desarrolladores

Si tenemos un empresa y queremos tener éxito en un proyecto, deberíamos saber que la elección del equipo de desarrollo es vital para hacerlo.

contratar ingeniero

Un empresario que triunfa sabe que la diferencia entre el éxito y el fracaso de un producto reside en gran parte en tener un equipo de desarrollo sobresaliente. Hacerse con tal equipo es una de las tareas más difíciles a las que el empresario se puede enfrentar, ya que en muchos casos no puede hacer una evaluación directa de las cualidades del individuo.

A continuación os voy a mostrar una serie de consejos que Taso Du Val, CEO de Toptal (una red de profesionales de la ingeniería en la que sólo el 3% de los candidatos es seleccionado) nos da a cerca de cómo evaluar para contratar a los mejores desarrolladores:

1. Habilidades generales y cultura específica

Anota todas las características que la persona que tiene que ocupar el puesto debe tener, y todas los aspectos deseables que el candidato ideal poseería. Nadie va a ser el candidato perfecto, pero puedes acercarte. Si quieres contratar a un desarrollador en iOS, y el o ella debe saber Objective C, storyboards y multi-threading, deberas evaluarlo en la primera llamada.

Si fuera bueno que conociese Java para backends o Sockets, pero no es básico para el día a día, no descartes a candidatos por no tener esa experiencia. Son resultados muy meticulosos en un largo cilo de selección, las empresas buscan «unicornios» de la ingeniería.

Es importante tener clara tu cultura de empresa a la hora de la contratación. Por ejemplo, si se trabaja con equipos que no comparten espacio físico (donde las personas no tienen una relación directa) pueden surgir problemas al mezclar a alguien dedicado al hacking con un equipo extremadamente profesional. Conoce tu cultura empresarial y haz preguntas del estilo ¿en qué ambiente profesional prefieres trabajar?

2. Conocer el precio del mercado

Se debe acabar con la tendencia de muchos empresarios a pensar que pueden encontrar un equipo de gran talento por un bajo coste. Los ingenieros están bastante demandados, y la demanda va en incremento. Los ingenieros tendrán un rango de precio por hora en función de sus habilidades. Tienes que conocer el precio del mercado o puedes perder grandes oportunidades por menospreciar el talento, o pagar de más porque los propios ingenieros saben que eres inexperto. El coste de contratación puede ser caro porque son los mejores o porque saben que eres un ingenuo y se aprovechan de la situación. Haz un presupuesto y establece el conjunto de habilidades que quieres obtener por el mismo.

3. Busca a jugadores de equipo

Una característica general de los ingenieros es la de ser lobos solitarios que prefieren trabajar individualmente. Esto está bien cuando están todo el día picando código pero no necesitan responder a peticiones de manera oportuna y no pueden quejarse de la participación en reuniones Scrum semanales o diarias obligatorias. Asegurarse de que tienen una buena comunicación y un espíritu colaborativo con los compañeros que van retrasados es importante para el proyecto.

4 ¿Cumplen sus plazos?

Los entregables del producto y el ciclo de iteraciones son los propulsores del desarrollo software, y estos están directamente vinculados con los plazos. Haz preguntas sobre el cumplimiento de plazos, ¿qué ocurre cuando no cumplen los plazos establecidos y qué van a hacer para solventarlo?

La peor pesadilla es un ingeniero que dice ser puntual, para luego descubrir que el día de la entrega no tiene hecha ni la presentación. Ésto retrasará a todo el equipo y perjudicará a la empresa entera. Asegúrate de que el ingeniero no sólo es capaz de cumplir los plazos, si no de comunicar los posibles retrasos al resto del equipo con antelación.

Esto se nota especialmente cuando se externalizan nuestros trabajos de desarrollo a empresas subcontratadas gestionadas por agencias. Pasan por alto los plazos y no consiguen casi nunca tener el trabajo a tiempo. Esto lleva a pensar que la externalización en agencias debe evitarse y plantea la búsqueda de recursos en otros lugares.

5. Estándares

Hay que determinar los estándares que sigue un ingeniero a la hora de programar para averiguar si ocasionará bugs y errores o no. Deberás asegurarte también de que no están perjudicando a los próximos desarrolladores que se involucren en el proyecto, por lo que asegurarse de que complementan el código con buenos comentarios podría ser vital. Hay que implementar estándares consistentes con todos los aspectos de tu negocio y asegurarse de que se cumplen para poder garantizar la calidad.

6. Habilidades instructivas

Uno de los grandes problemas que un empleado ve en un empleo es la falta de retroalimentación. Un buen empleado con un buen instructor, y que muchas veces desea instruir a otros, es un empleado que tendrá viabilidad a largo plazo en cualquier empresa.

7. Revisar su portfolio

Algunos ingenieros te enviaran links a su portfolio con orgullo, pero sorprendentemente esto puede resultar ser un motivo para no contratar. Pide ver las demos de su portfolio y comprueba siempre que las referencias son fiables para asegurarte de que realmente trabajó en ese proyecto.

8. Pruebas de prototipado rápido

El prototipado rápido de una característica permite ver si un ingeniero es experto en un conjunto de habilidades, pero esto suele ser común hoy en día. Algunos directores de tecnología de grandes empresas han observado durante horas a los desarrolladores para confirmar que realmente tienen un conjunto de habilidades, incluso sentándose a revisar correos y mirando el reloj de vez en cuando. Mirar el código del desarrollador y pidiendo que te guíe a través del proceso, preguntar qué es lo que hace algo en concreto y por qué debe hacerlo te ayudará a saber si es un buen candidato.

9. No te apresures

Apresurarte te llevará casi siempre a realizar una mala elección. Crea procesos que incluyan una conferencia telefónica, una entrevista en persona, una entrevista por parejas y una prueba de prototipado rápido. Estos pasos te permitirán determinar si una persona está realmente cualificada, algunos aspectos culturales para la compatibilidad en tu equipo y otros aspectos importantes antes de la contratación.

10. ¿Tienen una buena red de contactos?

Por último, pero no menos importante, ¿tiene el candidato relación activa con otros desarrolladores? La contratación es un aspecto muy caro, y un ingeniero con la capacidad de convencer a otros para que se unan a su equipo tiene potencial de liderazgo, es un jugador de equipo que es una característica muy deseada y se le puede sacar gran partido.

¿Qué os ha parecido?¿hacéis las entrevistas correctamente?, o por la otra parte, ¿dais el perfil de desarrollador premium?

Fuente: Entrepreneur.