Desarrollo de software en México (Parte 2)

El día de ayer hablaba de algunas generalidades de la situación de los programadores en México. Algunas personas, profesionistas de otras áreas, podrían pensar que es una locura estar quejándose de un salario como el de los programadores siendo que ellos sufren de los mismos males. Pésimas condiciones laborales, horarios extendidos, un ambiente laboral generalmente negativo, y todo, por un salario que difícilmente rebasa la mitad del promedio del programador Java/C# común. En resumen, estoy muy consiente de que gran parte del problema es la situación laboral de México en sí, sin embargo, no quiero ahondar en este tema. Me enfocaré en cambio en la situación que atañe a los programadores.

La consultoría de software

Esta figura pretende ser (en pocos casos lo es) una empresa conformada por especialistas en el desarrollo de software que resuelven las necesidades de los clientes que contratan sus servicios. En la realidad es simplemente una empresa con liquidez suficiente para realizar un pago mensual a los desarrolladores de software y facturar después al cliente para obtener de vuelta el dinero invertido con su respectiva ganancia, la cual, se trata de maximizar ofreciendo al programador un salario que rara vez supera la mitad de lo que la empresa le paga a la consultoría por él. Si no quedó lo suficientemente claro, hablemos de números: un programador Java/C# es ofrecido a los “clientes”, de acuerdo al renombre de la consultoría y al “nivel” del programador, desde $60,000 MXN hasta $100,000 MXN mensuales.

Intencionalmente dije “ofrecido a los clientes”, porque efectivamente , como en entradas anteriores he dicho, las consultorías se han convertido en una especie de proxenetas empresariales. La justificación de estas discrepancias entre lo cobrado por la consultora y lo que llega al bolsillo de los programadores es el hecho de que existen gastos administrativos, impuestos, asuntos legales, y otros gastos asociados al buen funcionamiento de la empresa. ¿Aún así no salen las cuentas?

La promesa de una consultoría de software para los programadores era originalmente la de generar un plan de carrera para cada consultor, quien se vería beneficiado por capacitaciones, certificaciones, proyectos seleccionados a la medida de sus conocimientos y demás beneficios que claramente requieren una inversión importante por parte de la empresa. Sin embargo se dieron cuenta de que el margen de ganancia era mucho mayor si eliminaban esta parte, surgiendo así una enorme cantidad de consultorías que degeneraron el concepto a la triste situación que vivimos ahora.

Por otro lado, las empresas que contrataban el servicio de una consultoría lo hacían porque, originalmente, esta era una forma garantizada de hacerse de personal altamente capacitado enfocado en resolver los requisitos de desarrollo que surgían eventualmente en la empresa. Poco a poco esta ventaja fue degenerando en, simplemente, eliminar el papeleo de las contrataciones eventuales. Muchos de los clientes saben que no pueden confiarse de los programadores enviados por la consultoría y deben hacer su propio proceso de reclutamiento y selección sobre las personas que la consultoría les envía. Estos “consultores” generalmente carecen de cualquier tipo de relación laboral con la consultoría, quien los contratará únicamente en caso de que el cliente los apruebe.

Hasta aquí sigue sonando bastante ilógico que estas entidades existan, pues no se ve beneficio alguno para ninguna de las partes. ¿Cómo nos explicamos entonces la existencia de éstas? Podemos reducir la explicación a una simple palabra: dinero. Por un lado, los clientes tardan en facturar un poco más del tiempo en que un asalariado podría estar sin recibir pago alguno, entonces, la consultoría utiliza su liquidez para proveer ese pago y brinda una “buena” alternativa al programador común y corriente. Por otro lado, ocurre también que las consultorías proveen a la empresa que las contrata de un “alguien” a quien culpar, y cobrarle los desperfectos, por si algo sale mal, ya sea por fenómenos como la rotación de personal o el bajo desempeño de los consultores, mismos que, en un círculo vicioso, son creados o fomentados por las mismas consultorías.

El programador promedio

Me disculpo de antemano si alguien se siente ofendido con lo que voy a decir, pero al menos esta es la realidad que me ha tocado vivir.

Ante el horrible panorama en que se encuentra el desarrollo de software en nuestro país, los programadores promedio no se preocupan mucho por cuestiones “banales” como la calidad del código que escriben, modelos de desarrollo, mejores prácticas o simplemente el gusto por la programación. El programador promedio encuentra en el desarrollo de software un medio para obtener dinero. Algunos se encuentran en una situación salarial más favorable que otros y dejan de lado su desarrollo profesional, pues lo importante es que el trabajo salga, sin importar el monstruo de sistema legado que allí quede y cuyo mantenimiento asegurará su trabajo por un buen tiempo, pues “él es el único que sabe cómo moverle a ese sistema”.

Las consultorías apoyan al no crecimiento de sus empleados eliminando cualquier plan de carrera y convirtiéndose solo en la empresa que paga mes con mes. Al abstraerse de esta manera de las actividades de sus empleados y al solo tener contacto con ellos para recoger sus reportes de horas, se fomentan las malas prácticas de programación, pues como humanos, la imitación es nuestra forma más simple de aprendizaje. Se envía al programador promedio en primer lugar a hacer mantenimiento de sistemas, muy probablemente legados y mal hechos, y de allí aprenderá a hacer, sin saberlo, todo lo que no debería de hacer. Estos vicios programáticos se verán replicados y probablemente aumentados cuando se le encargue un desarrollo nuevo con una planeación deficiente, objetivos mal diseñados y tiempos mal calculados que no le permitirán preocuparse por otra cosa que no sea “que todo salga lo mas pronto posible”.

Después de un largo tiempo de estar en este esquema, surgen algunos programadores que dan el salto a líderes de proyecto y que van repitiendo no solamente las malas prácticas de programación, sino también las maslas prácticas de administración que aprendieron de sus antecesores: “presionando a los programadores salen las cosas” y “el trabajo de los programadores me va a hacer quedar bien”. Muchos de ellos orgullosamente dirán “yo ya no programo”, pues dejan de realizar una actividad que no llegaron a comprender totalmente y pasan a aspirar a una mejor situación económica dentro de la lucrativa industria del desarrollo de software en México.

Siguiente >

2 comentarios en “Desarrollo de software en México (Parte 2)

  1. Pues no digo que sea la neta del planeta, pero coincido con varias partes de este y el anterior articulo.

    En definitiva en méxico nos falta aprender mucho en cuanto a cultura, y a ser un poco más modestos hay programadores muy buenos de manera nata algunos que tenemos que pedalearle mucho para llegar a un nivel aceptable; más sin embargo pertenezcamos a unos a otros todo se va al traste cuando no sabemos ni para donde jalar si el lider de proyecto no sabe encontrar ni piez ni cabeza al proyecto como demonios quiere que el programador adivine.

    Los programadores somos poco valorados en México, pero creo que tambien es por nuestra culpa por permitirlo y eso se debe a otras cosas mil y una razone si jalamos el hilo iran saliendo algunas que ni imaginamos pero el punto es que esto es México y esta algo enrarecido esta profesión mal pagados en algunos muy buenos en otros lugares pero al final es nuestra profesión y si queremos que mejores, pues pongamos las bases para ellos tal vez no nos toque las mieles de esto pero sabremos que pusimos las bases para que los futuros programadores no se las vean tan negras como nosotros y le den el empujon que necesite el país para pasar el bache en este sentido.

    Me gusta

    • Así es, el cambio podemos empezarlo nosotros mismos. Yo soy un poco mas positivo y creo que sí podremos disfrutar de los beneficios de un cambio en el cómo se percibe a los programadores actualmente, pues simplemente tenemos la oportunidad de disfrutar la satisfacción de iniciar el cambio.

      Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s