¿Los ingenieros de software contratistas están más capacitados que los ingenieros de software a tiempo completo?

Este es el patrón que he experimentado durante mi tiempo en equipos que empleaban contratistas:

  1. El equipo tiene un nuevo proyecto y la dirección dice "sólo tenéis X meses para hacerlo, pero os daremos Y número de contratistas".
  2. El equipo no está contento con esto porque han leído "The Mythical Man-Month" de Fred Brooks y/o han presenciado personalmente el fracaso de proyectos que tenían cuerpos calientes.
  3. El equipo sigue adelante con la contratación de contratistas de todos modos, porque eso es lo que quiere la dirección.
  4. El equipo se da cuenta de que el nuevo proyecto necesitará mantenimiento/mejoras después de su finalización inicial, y todos los empleados a tiempo completo tenían mucho trabajo para mantenerlos ocupados antes de que este proyecto existiera. La dirección les concede algunos puestos a tiempo completo y el equipo lleva varios meses trabajando con los contratistas para averiguar quiénes son los mejores. El mayor número posible de estas personas son convertidas de contratistas a tiempo completo.

Así que, básicamente, el ingeniero medio a tiempo completo era mejor que el contratista medio porque siendo mejor que el contratista medio fue como se convirtió en ingeniero a tiempo completo en primer lugar.

Ahora, sobre por qué la gente es contratista. Hay muchas personas que son contratistas porque son terribles y no pueden permanecer mucho tiempo en un solo trabajo como Kurt Guntheroth mencionó en su respuesta. También hay mucha gente que contrata porque lo prefiere o porque circunstancias ajenas a su competencia le llevaron a ello. Yo he hecho contratos porque:

  • Dejé un trabajo y era la forma más rápida de conseguir un nuevo empleo.
  • Fue la mejor manera de poner el pie en una empresa en la que finalmente quería un puesto a tiempo completo.

¿Por qué alguien preferiría contratar? ¿Qué te parece que te paguen por cada nanosegundo del tiempo que trabajas? Actualmente soy un empleado a tiempo completo, y pasé por un periodo a principios de año en el que estuve trabajando entre 20 y 40 horas extra a la semana durante varias semanas. Pensar en cuánto más "cheddar" tendría en mi cuenta bancaria ahora mismo si siguiera siendo contratista me pone un poco triste. ¿O qué tal trabajar en un proyecto nuevo y potencialmente emocionante cada uno o dos años? Este segundo punto es en realidad el gran argumento de por qué el contratista que acaba de entrar en tu entrevista está potencialmente más capacitado que cualquier empleado a tiempo completo de tu equipo. Muchos (¿la mayoría?) de los empleados a tiempo completo tienen que luchar contra el estancamiento mientras mantienen los proyectos heredados. Muchos (¿la mayoría?) de los contratistas aprenden nuevas tecnologías y paradigmas en casi todos los proyectos nuevos. Y no olvidemos que tienen que estar constantemente en su juego debido a esa próxima ronda de entrevistas a la vuelta de la esquina.

Por favor, no asuma que cualquier ingeniero de software contratado es más o menos hábil que cualquier ingeniero de software a tiempo completo.