¿Por qué el mercado de informática está roto?

En el mercado de desarollo de software hay mucho movimiento últimamente. Por una parte, una fuerte demanda de mano de obra; por otra, bastantes candidatos, muchos de ellos insuficientemente cualificados, y en medio, montones de intermediarios y mercachifles. Entre todos ellos, el mercado de TI está roto. En este post voy a comentar el porqué de las ineficiencias del mercado.

En economía se sabe y está más que demostrado que el que gana dinero es bien quien controla un recurso escaso, bien quien saca provecho de una imperfección de mercado. En informática, los recursos escasos son: a) el acceso a cuentas y b) los programadores. Y las imperfecciones son: a) cómo resulta de difícil seleccionar a un candidato y b) cómo resulta de difícil gestionar un proyecto.

Acceso a cuentas

El acceso a cuentas en el mercado informático está severamente restringido por una serie de medidas diseñadas para evitar la concurrencia competitiva real. Esto es debido principalmente a que a los proveedores en una posición dominante no les interesa que un proyecto esté abierto a propuestas de todo el mundo. Pero también es debido a que un cliente sólo puede razonablemente considerar como máximo de cinco a ocho ofertas diferentes para cada proyecto o de diez a veinte candidatos para un puesto.

Lo que sucede es que las consultoras acceden a diferentes niveles de la estructura de mando de los clientes y bloquean el acceso mediante diversos mecanismos, entre ellos:

– Acuerdos marco que restringuen la provisión de recursos a determinados proveedores.
– Procesos de homologación que dificultan la entrada de nuevos proveedores.
– Contratación por parte de la consultora de personas de confianza del cliente.
– Recolocación de recursos de la consultora como empleados del cliente.
– Venta de plataformas cerradas sobre las que otros proveedores no pueden trabajar.

El efecto práctico de esto es que en cada cliente hay un “amo del calabozo” quien se queda entre un 20% y un 40% de la facturación por “gestionar” la cuenta y asesorar al cliente.

Además, la naturaleza de la demanda ha cambiado en la última década. Durante la primera burbuja punto com la mayoría de los clientes no sabían ni lo que necesitaban verdaderamente ni cómo gestionar los proyectos. Entonces compraban carísimos productos bajo licencias privativas y contrataban proyectos a precio y plazo cerrado. Estos proyectos eran como una caja negra en lo referente a su estructura interna de costes lo cual proporcionaba pingües beneficios a los implantadores. Con el paso del tiempo, los clientes han ido dándose cuenta de que la mayoría de las veces es posible reemplazar los productos privativos por soluciones de software libre, pero además han ido aprendiendo a gestionar ellos mismos los proyectos o a subcontratar la gestión a una empresa diferente de la que desarrolla e implanta el software. Esto ha erosionado el margen de las consultoras, que obtienen menos comisiones por la reventa de software y están más controladas en cuanto a los costes de mano de obra que le repercuten al cliente. En otras palabras, el mercado se ha tornado mucho más “cárnico” con clientes menos interesados en comprar valor añadido, pues creen que ya lo añaden ellos mismos, y más interesados en obtener el recurso escaso que es la mano de obra experta.

Escasez de programadores

Los buenos programadores escasean. En mi opinión, esto es debido a que se requieren al menos diez años de tediosa práctica diaria para llegar al nivel senior, más luego mantenerse actualizado.

Agravando aún más el problema, en los paises con más demanda de programadores bien retribuidos: EE.UU., Reino Unido, Suiza y Países Nórdicos, los más veteranos se han dado cuenta de que no les compensa estar en nómina. En Inglaterra calculo que el 80% de los programadores senior que saben algo de Scala o de Big Data son autónomos, para las empresas encontrar uno que quiera aceptar una nómina es como buscar una aguja en un pajar. Esta negativa a aceptar un salario se ha producido en parte como respuesta a los abusos laborales de algunas empresas. Con horas extra interminables no retribuidas o, peor aún, retribuidas en stock options basura, justificadas porque “somos un equipo” o porque “hay que sacar la release”. Históricamente, la unión sindical de los programadores ha sido prácticamente inexistente y como resultado muchos han acabado yendo por libre cazando recompensas como buenamente pueden.

Los autónomos son bienvenidos en algunas empresas, porque trabajan a destajo y no alteran el status quo (al menos en teoría). Pero en la mayoría de las organizaciones suelen incomodar porque no forman parte de la “mafia departamental”. Las empresas intentan sistemáticamente convertir a los autónomos más capaces en empleados, y suelen fallar miserablemente porque les ofrecen los incentivos equivocados. Así que a la postre acaban contratando en plantilla a los autónomos que simplemente no tenían un lugar mejor al que mudarse en el próximo proyecto.

Ineficiencias en el proceso de selección

Si los hospitales reclutasen médicos con el mismo proceso que las empresas reclutan informáticos a todos los pacientes se le ofrecería la extremaunción antes de someterse a cualquier tratamiento. En informatica, el 99% de las veces el intermediario no tiene capacidad para evaluar el talento real del candidato y en el caso de projectos llave en mano el gerente de cuenta no entiende nada sobre los detalles de implementación de lo que está vendiendo.

Adicionalmente, los propios clientes se equivocan en lo que buscan. Siguiendo las creencias de que: a) la inteligencia es el factor que mejor predice el éxito de un candidato y b) se necesitan cononocimientos técnicos muy específicos. Los clientes se han lanzado en masa a contratar por los criterios erróneos. En primer lugar, se asocia la inteligencia únicamente con la capacidad del candidato para resolver problemas algorítmicos. Es verdad que empresas como Google o Facebook son legendarias por la complejidad de los algoritmos y estructuras de datos que emplean y, por consiguiente, necesitan algunos programadores extraordinariamente bien dotados en problemas del estilo de ordenar grandes listas de cosas, buscar y contar subcadenas, etc. Pero la mayoría de las empresas no desarrollan algoritmos complejos. Lo que tienen son sistemas de información grandes y complejos, lo cual es un problema diferente. Existe un desdén absoluto por cualquier cosa que no sea la capacidad de los candidatos para escribir subrutinas de código o recitar los detalles de los APIs de programación. Como resultado, se contrata a menudo a candidatos que no encajan. Según los propios incumbentes, parece ser que tanto como el 70% de los candidatos fallidos lo son por inadaptación a la cultura de la empresa y no por falta de suficiente talento profesional.

El grado en el que los seleccionadores pueden llegar a ser retorcidos durante el proceso es difícilmente imaginable si no se conoce. Por ejemplo, a continuación la lista de algunas “mejores prácticas” recomendadas según el artículo Top Tech Companies’ Secrets to Hiring the Best People. Traduzco:

1. Empezar la entrevista telefónica media hora tarde o media hora temprano, o incluso decirle al candidato que le llamarás y no llamarle.
2. Hacer la agenda de la entrevista tan caótica y confusa como sea posible.
3. Provocar que algo vaya mal durante la presentación de la empresa.
4. Hacer un montón de suposiciones incorrectas durante el diálogo.
5. Pedirle al candidato que resuelva un problema específico sólo del cliente.
6. Moverse de una sala a otra durante la entrevista.
7. Hacer la misma pregunta una y otra vez.
8. Jugar a “poli bueno, poli malo” durante la entrevista.
9. Hacer una pregunta y empezar a teclear muy fuerte mientras el candidato responde.
10. Llamar al candidato 3 meses después para ofrecerle un empleo que no solicitó.

y etcétera, etcétera.

Teniendo en consideración lo anterior, y cosas aún peores que no voy a contar, al autor no le parece extraño que muchos candidatos serios manden directamente a tomar por el culo al entrevistador. De hecho, conozco varios programadores quienes ni siquiera se ponen al teléfono si les llama un head hunter sea lo que sea que pretenda proponerles.

Dificultades en la gestión del proyecto

La mayoría de las empresas son seriamente disfuncionales en su dinámica interna. Usan Agile, si, esa adaptación de Kaizen ideada para exprimir a los programadores como limones. Pero es que Agile no es una metodología de gestión de recursos humanos y además muchos lo usan mal.

Llevo 20 años como desarrollador, consultor y empresario. He estado en contacto con más empresas de las que puedo enumerar. He visto a gente despedida por incompetente o incluso por alcohólica. Pero la razón principal por la que he visto a personas capacitadas “saltar” del puesto ha sido por desalineación con una línea de gerencia completamente demencial. Los problemas suelen estar relacionados con:

– Blindar la posición de alguien en el organigrama.
– Acosar y eliminar a cualquier rival potencial (si es mujer, o negro o GLTB mejor).
– Subcontratar a determinados proveedores.
– Defender a ultranza la ortodoxia de una metodología.
– Evitar sistemáticamente cualquier riesgo.
– Mantener o elevar artificialmente la valoración de la empresa.

Conclusión

El resultado del cóctel anterior son un montón de clientes desesperados y un montón de programadores quemados. Y en un mercado que debería funcionar con gran dinamismo y elevados salarios, ambas partes se desgastan arrastrando piedra sobre arena en lugar de usar ninguna rueda.

Post relacionados:
Cómo hacer entrevistas de selección.
Consejos para elegir un candidato o un puesto de trabajo.
Porqué el talento no importa en las empresas.
Contratar a un Space Cowboy y no a un hacker.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Bookmarks
Esta entrada fue publicada en Mercado y Oportunidades de Negocio, Tecnología y Empleo. Guarda el enlace permanente.

Una respuesta a ¿Por qué el mercado de informática está roto?

  1. Pingback: Impasse Mag

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *