Los dos tipos de negocio de desarrollo de software

a dilemma (Julia Manzerova)

Muchos informáticos están amargados. La mayoría. Tienen un mal equipamiento, no se les reconoce el montón de horas que trabajan, continuamente deben estar aprendiendo cosas y tienen que solucionar problemas con tecnologías en las que no son expertos, porque llevan sólo unos meses con ellas y las propias tecnologías muchas veces no están consolidadas.

Eso, los que trabajan en una empresa cuyo negocio es vender líneas de código, ya sea en la forma de productos o de horas/hombre en casa de un cliente. Los que trabajan en una empresa cuyo negocio principal es otro y la informática es sólo una función de soporte son los que ya conocen el infierno. El dueño de la empresa tolera a esos informáticos que tiene que aguantar por allí y que gastan tanto dinero porque necesita que los ordenadores funcionen o que su web siga operativa. Pero si pudiera prescindir de ellos, lo haría.

Si hablamos de los primeros informáticos, los que trabajan en empresas de base tecnológica, veremos que están amargados en mayor porcentaje los que están en una empresa que vende servicios y no desarrolla productos. Son empresas que venden “Proyectos”, con la P mayúscula, ejecutados mediante su “Metodología” (con la M mayúscula, también), que dicen aplicar los principios del PMI y que te obligan, o no, dependiendo de la moto que vendan, a ir vestido de traje de chaqueta a programar. Es imprescindible que mis compañeros comprendan los dos modelos de negocio y las decisiones económicas que hay detrás de cada uno, ya que si no se comprenden no se entienden las decisiones técnicas y operativas que toman “esos que mandan que no tienen ni idea”, y que vienen motivadas por las primeras.

Hay dos tipos de empresas: las que venden servicios y las que venden productos. Y, por supuesto, en toda fase de una empresa que empieza se suele tener una mezcla de ambas. Cuando tuve mi empresa, Elelog, pasé por ambas fases. Yo era defensor de vender servicios, que es lo fácil, lo que sabía hacer. Ahora no quiero vender servicios ni en pintura. Bueno, salvo la formación, que me apasiona demasiado y es casi un vicio. Me pagan por hacer algo que me gusta mucho. Hablemos de las empresas que venden servicios.

Vendedores de carne

camel butcher, by Paul Keller

Básicamente, las empresas que mandan a sus trabajadores informáticos a solucionar los problemas del cliente, son ETTs con ínfulas. Vistan de traje de chaqueta o no, llamen a la venta de carne “Asistencia técnica”, “desarrollo in-house”, “atención personalizada en casa del cliente” o “porno-chacha a domicilio” este tipo de trabajo comparte unas características comunes:

  • el empleado pierde casi todo contacto con la empresa que le manda. De vez en cuando recibe una llamada de su jefe o le ve cuando visita al cliente (si es que se acuerda de su nombre y le saluda). Una vez al mes ve el nombre de su empresa en la nómina.
  • es el cliente el que decide el día a día de su trabajo. Su jefe “de verdad” es el Cliente, no su empresa. Es el que le explica el trabajo que debe hacer.
  • lo que ocasiona esto es un desarraigo de la empresa, una no-identificación con su empresa, ya que el informático se da cuenta de que su empresa actúa como un mediador, como un vendedor de esclavos. El cabreo aumenta el día que se da cuenta de que, cada mes, su empresa gana dinero “por no hacer nada”, sólo por tenerlo allí.
  • un día uno de los mejores programadores que estaban con él trabajando en un proyecto para el Cliente se va a otra empresa. No le han aplicado una mísera subida de sueldo. “¿Cómo han podido dejar escapar a este crack?”, se preguntan. Y ven que el más inútil sube de programador a analista. “¡No lo entiendo, debe ser un enchufado!, ¡esta empresa se va a pique, no tienen ni idea!”. Pero los contratos siguen llegando. La explicación más normal: estos son unos enchufados y seguro que tienen un chanchullo, si no no se entiende cómo se han tragado a esos dos becarios nuevos que no tienen ni idea.
  • la formación que se les da va exclusivamente dirigida a ser más “productivos” en el proyecto en el que están ahora mismo trabajando. La sensación de “gallinita ponedora” aumenta. No hay carrera profesional. No preguntes, porque no hay respuesta.

A este panorama desolador se enfrentan todos los días excelentes programadores al ir a su puesto de trabajo. Se quejan tomando café, y no acaban de entender el porqué de las decisiones de sus jefes. Y están frustrados, porque suponen que hay una respuesta lógica, pero se les escapa. Piensan que si aprenden nuevos lenguajes de programación, o nuevos trucos para gestionar la base de datos Oracle, o formas de que ese servidor Tomcat no se quede sin memoria, serán mejor valorados dentro de su empresa. Y temporalmente puede que así sea, pero el esquema anterior se repite inexorablemente.

Click para ver el autor

Pues bien, la culpa es del modelo de negocio de venta de servicios, y el culpable último es el Cliente.

El Cliente, por ejemplo un Ayuntamiento, una gran empresa o una administración autonómica, tiene que arreglar una serie de problemas: su portal web debe mantenerse, hay que añadirle capacidades de firma digital, quiere mejorar sus servidores, lo que sea. Tiene una estructura de presupuestos fija y algún lumbreras ha decidido que a un programador se le paga, como mucho, a 50 €/h, a un analista a 60 €/h, y así.

Y ésta es la raíz de todos los males: no se puede pagar lo mismo a todos los programadores porque los programadores no son intercambiables. A ver si nos enteramos de que, en los trabajos mecánicos, en los que no hace falta creatividad, trabajos que se han convertido en commodities, los trabajadores son intercambiables. Respeto profundamente a las personas que recogen las bolsas de basura por las noches, es un trabajo muy duro y necesario. Pero si quito a uno cualquiera y pongo a un robot capaz de lanzar bolsas a un camión no se va a notar. Sin embargo, dos abogados no son intercambiables. Está claro que uno especializado en código penal es lo que quieres cuando te van a mandar a la cárcel por alguna trastada. No es intercambiable con uno especializado en divorcios. Lo mismo pasa con los médicos: todos sabemos que un buen médico es 100 veces más efectivo curando que otros de sus compañeros y le llamamos por su nombre: “me está tratando el Dr. Fulano”. Igual sucede con arquitectos, o cocineros. No es lo mismo que te cocine Ferrán Adriá que Pepito el de los Palotes.

Pues con los informáticos, no hay manera, parece que somos intercambiables. Pero un buen programador, el que de verdad es bueno, ese al que sus compañeros admiran, probablemente será diez veces más productivo (y por tanto rentable) que el resto. Pero ¿va a valorarlo el cliente? No. El Cliente seguirá ofreciendo por sus horas 50 €, ni un céntimo más. Y así se crea la espiral marrón del trabajo informático subcontratado:

  • el Cliente establece de antemano el precio máximo que está dispuesto a pagar por cada hora de trabajo. Lanza así una señal de que todo el mundo trabaja más o menos igual, cuando sabemos que en este tipo de trabajo eso es falso.
  • la empresa vendedora de carne contrata a algún becario, ilusionado y con ganas de aprender. Incluyendo todos los costes laborales le cuesta 12 €/h. Buen negocio.
  • a menos que el personal enviado se coma las mesas, el Cliente siempre los acepta. Ya que no es capaz de determinar la validez del trabajo de los que tiene a su cargo, no es capaz de premiar/castigar a los que le llegan. Mientras el proyecto avance, no hay quejas.
  • pasan los años. El programador bueno lee libros, aprende nuevas técnicas, prueba cosas, sigue ilusionado. El malo va a trabajar sus 8 horas y punto. Ambos cobran lo mismo. El programador bueno piensa “este esfuerzo tendrá su recompensa, a fin de cuentas yo programo bastante bien y ayudo a mis compañeros”
  • los sueldos suben. Ahora a la empresa el programador bueno le cuesta 30 €/h. Pero siguen vendiendo sus horas por 50 €. Ya no hay el mismo nivel de beneficios. Se le ofrece una de dos salidas: o asciendes (por ejemplo a Analista) o te buscas otro sitio. El perverso “up-or-out”.
  • el programador, que era feliz programando, pasa a una espiral de marrón superior, la del analista. Luego vendrá el Jefe de Proyecto, Consultor, o cualquier otro título que su empresa Dilbertiana tenga preparado.
  • se sustituye al programador bueno con un becario malo. El cliente no lo nota. Los márgenes son los adecuados. Todos felices, salvo el recién ascendido, que sólo quería un mejor sueldo y el reconocimiento de sus jefes. Y seguir programando.

¿Te suena? Este ciclo es el que hace que se vaya gente muy buena y a los jefes parezca que les de igual. ¿Para qué complicarse con ese, si pongo otro y al final no se nota? ¿Te sientes identificado con la empresa en la prestas tus servicios y no con la que te paga la nómina? Normal, porque tu empresa realmente no te aporta nada. No te enseñan nada. Sólo te pagan. ¿No cambian los ordenadores más que cada 10 años? Ya sabes la razón.

Es el mantener el margen de beneficio lo que ocasiona todas las otras aberraciones. Ojo, que no estoy en contra de que las empresas ganen dinero. Es su obligación, para no cerrar y poder crear puestos de trabajo. Pero en este modelo se crean muchas perversiones a posteriori porque todo gira alrededor de mantener un margen por culpa de un tope impuesto por el cliente, no por la calidad del servicio.

Y este tipo de negocios es sencillo de montar: sólo hace falta un buen equipo de vendedores de motos con traje de chaqueta y listo. Lo se, porque yo lo he hecho.

Creadores de productos

Pensemos ahora en otro modelo de negocio. Tengo una idea muy buena: una serie de aplicaciones para iOS que me van a hacer rico. Tengo dinero y voy a montar unas oficinas. Y pienso: “como tengo claro que un programador crack produce 10 veces más que uno malo, si tengo a un crack y hace un programa que me da 100.000 €/mes, me da igual pagarle lo que me pida. Y ponerle la mesa, la silla, el ordenador que quiera. Y una playstation 3 en los lavabos. Y comidas gratis. Y bebidas gratis. Y lo que haga falta, porque voy a invertir en gente y me van a hacer rico”. Y hay gente que no sólo piensa ésto, sino que lo hace de verdad.

La creación de productos es muy distinta a prestar servicios. Aquí los requisitos están claros, o se van descubriendo mediante prototipos y charlas con posibles clientes. Pero el responsable de que algo no esté suficientemente claro eres tú, nadie más. Los plazos los pones tú. Tú decides cuánto invertir en programadores y medios técnicos. Si tu producto realmente se va a vender, disponer de los mejores no supone tanto comparado con los beneficios que vas a obtener. Una vez lances tu producto y empieces a vender, alcanzarás el punto de equilibrio cuando lo que te has gastado durante esos meses (o años) puliendo el programa lo recuperes en ventas. A partir de ahí, virtualmente todo es beneficio, ya que la distribución hoy en día del software se hace por Internet y sólo te cobran si vendes. Eso, si usas una plataforma de terceros. Si creas tu propia web, mientras duermes estarás ganando dinero. La gente que esté despierta en la otra cara del planeta puede estar comprando tu producto.

Crear un producto es más duro que vender servicios. Debes tener la idea, buscar el problema que va a resolver tu software, en lugar de esperar a que te expongan el problema. Debes arriesgarte e invertir. Debes automotivarte, mantenerte fresco y creativo mientras el producto se va creando y no se gana dinero, ni hay clientes. Los plazos te los marcas tú. En resumen, toda la responsabilidad es tuya. Por eso la recompensa es mayor, o el batacazo. Porque, claro, siempre puede ir todo mal y no vender nada pero… ¿eso nos va a pasar? ¡No, y si nos pasa, lo seguiremos intentando!

A ver si adivinas cual de los dos modelos me gusta más :-). Y no olvides dejar tus opiniones en los comentarios.

27 comments

  1. Excelente análisis. Desgraciadamente, aquí todas las empresas del sector TIC son fieles representantes del primer caso, y en el fondo, están todas cortadas por el mismo patrón.

    Por cierto, ya sabía a quien ibas a poner de ejemplo del segundo caso antes de darle al enlace 😀

    • Me alegro de que coincidas. Es triste escuchar, año tras año, las mismas quejas y ver que no se comprenden los motivos. O ver a gente que es feliz programando obligada a llevar tareas de gestión de equipos. Somos más efectivos si hacemos aquello que nos gusta ¿no?
      Respecto a lo de hablar de productos… era elemental mi querido Watson, ¿no? Aunque en vender productos iOS vía Apple store soy un novato total. Bueno, siempre hay una primera vez 🙂

    • Para una gran empresa, puede. Pero las micropymes y autónomos normalmente nos cegamos vendiendo servicios, porque pensamos que es imposible crear nuestros productos. Pero sí, es posible 🙂

  2. Totalmente de acuerdo con el articulo.
    Creo que en parte todo viene motivado porque en España la mayoría de las empresas funcionan como “Tenderetes técnologicos” que pretenden ganar dinero desde el primer día y no ven el negocio a largo plazo.

    Otra cancer de toda empresa es el politiqueo interno que hace ascender al mas pelota o al que mejor se vende en vez de al mas válido.

    Espero que poco a poco cale tu idea 🙂

    • @Jose Hernández: no está mal el querer ser rentable desde el día 1. Tampoco es malo querer ganar dinero. Es una obligación. Si no, hay que cerrar. Pero como informáticos tenemos que ser conscientes de la perversión original del modelo de venta de servicios, que es el precio fijado por el cliente y no por la valía / productividad. Los pelotas al final generan (en dinero) lo mismo que los cracks (al menos de cara a facturación externa). Lo fundamental es saber que, si están vendiendo tus horas, algún día tendrás que dejar lo que te gusta (si es que te gusta lo técnico) porque serás muy caro. ¿O alguien conoce a un programador de 45 años?

      Y la tragedia es que un programador de 45 años es probablemente un crack… si se mantiene, claro.

  3. Diego, llevas razón pero… ¿donde están esas empresas que invierten en productos sin buscar que sean necesariamente rentables antes de 100 días?
    Para encontrarlas, tendremos que viajar, porque de Despeñaperros para abajo conozco muy muy pocas.
    Y lo del crack y el pelota, toda la razón. ¿Acaso no hemos conocido compañeros, incapaces de hacer nada, de solucionar un mínimo problema, pero sin embargo bien valorado? Si dices algo de él, además de que te acusan de no tener compañerismo (para mí no es eso, porque a ese no lo considero compañero, nunca da la cara por tí, eso es seguro), te dicen que gestiona muy bien al cliente. Sin embargo, los números del proyecto son nefastos… ¿nadie se pregunta que lo que hace es “engañar” a su superior y por tanto a su empresa. Es más, con el tiempo pasará a ser consultor, jefe de proyecto, comercial (incluso con responsabilidad técnica), sin ser válido para ninguno de los puestos… Y así va el país
    Saludos Diego

    • @Ángel: hombre, esto es como las meigas, que “haberlas hailas”. Algunas empresas sí que buscan crear un producto. Puede ser que al principio combinen ambos modelos para poder ser rentables, sobre todo si no disponen de un socio inversor detrás. Pero sí que existen orientadas a crear y vender un producto específico: un ejemplo sería Eneo, que hace soluciones de seguridad.

      Lo de los trepas es un problema que merece un post en sí mismo. De lo que trato de hablar aquí es de la necesidad imperiosa de mover a los técnicos hacia arriba por culpa del modelo de venta de servicios y sus márgenes.

      Una pregunta que planteo: ¿la culpa de los trepas es suya (a fin de cuentas sólo aprovechan una oportunidad usando sus capacidades) o de los que se dejan engañar sin comprobar las cosas?

  4. Diego, no te quito, pero tengo que moverme más (e informarme más) porque conozco muy pocas.

    En cuanto a los que denominas “trepas” no me refería exactamente a ellos, porque los “incompetentes” que indico pueden ser de dos tipos: los “trepas” que defines o simplemente incompetentes. La diferencia es que los primeros se apuntan trabajo ajeno como suyo (que suelen ser los que no tienen compañerismo). Los segundos suelen ser hasta buena gente, pero no válidos.

    Con respecto a lo que planteas yo lo tengo claro: La culpa no es de los trepas sino de quien se lo permite, ¿verdad?. Simplemente como son rentables, van subiendo, cuando cualquier otro medianamente preparado sacaría mayor rentabilidad y eso debería repercutir en TODOS, empresa y él mismo.

    Para despedir, otro día hablamos del intrusismo informático. Aaaaaaaaaaaaadiós

  5. Excelente post Diego. Estoy totalmente de acuerdo contigo. Personalmente, veo la elaboración de productos software como la mejor y única salida para cualquiera con un mínimo de talento. Todo lo demás es caer en la infravaloración hasta el fín de los días útiles de uno.

    De todas formas, quisiera añadir que la mayoría de las microISV que conozco comienzan ofreciendo algún tipo de servicio para poder mantenerse durante el arranque; el bootstrapping que dirían los amigos del otro lado del charco.

    Vamos, que en cierto modo, todos estamos algo “sucios”. Se tarda un poco de tiempo en escapar de la “tiranía del cliente” 🙂

  6. Un post que detalla la triste realidad en la que nos encontramos, muy bien descrita, eso si. Sólo tenemos que asomar la cabeza un poquito y ver como funciona todo. De Madrid para abajo y para arriba, el tema del chapuceo es lo que premia a la orden del día y es cierto, en parte son los clientes los que no exigen esa calidad, pero quizás donde más se note es la administración pública, puesto que el dinero no es de ellos y con poco o menos se conforman y tarifican de esa forma.

    Nuestra querida “tarifa plana”, obliga a muchas empresas a ofrecer en sus ofertas a personal muy cualificado, pero que después los que lidian con los problemas son otros que no estaban en esa oferta, técnicos de nivel 1, que en el caso de que este no de con la tecla en bastantes horas, lo llaman, pero normalmente el cualificado está en otro proyecto y es un engorro moverlo, sólo para casos muy puntuales, pero ya se han consumido por el compañero muchas horas. Sí, esas horas que son a 50€.

    Al final aunque te dediques a los servicios, es mejor y más rentable, menos personal bien formados, hacen más que muchos de bajo coste, puesto que los trabajos se aceleran más y con mejor calidad, y los analistas y jefes de proyecto deben de consumir menos horas en repetidas iteraciones para dejar algo medio aceptable para el cliente.

    Este mensaje debemos, en cierta forma, tratando de que cale en los clientes y que sepan reconocer esa calidad, que al final no creo que sea más cara, puesto que estará en menos tiempo y tendrá menos consumo de la bolsa de horas de parcheo de la aplicación.

    Me quedo con el segundo modelo, “empresa 2.0” americana 😛

    Un saludo y enhorabuena por el post.

    • @Gabri: me gusta quedarme con la parte positiva. Muchos informáticos están amargados, pero no saben por qué. Creo que este post puede ayudar a alguno a entender a su empresa y, si no le gusta, buscar otra enfocada en productos o montar la suya propia. Que además es lo que se necesita ahora mismo: emprendimiento.

  7. Pingback: Qué necesitas instalar para programar en C en Windows

  8. Mi empresa no la veo reflejada en ninguna de las dos opciones, quieren vender servicios, pero no tienen ni idea de cómo hacerlo, y quieren vender productos, pero tampoco tienen ni idea de cómo hacerlo. Además, nuestro departamento de programación carece de analista, o cualquier cargo superior. Los resultados evidentes: no entra un proyecto nuevo desde hace 1 año, y nuestro departamento sólo sobrevive gracias a las “ampliaciones” que le hacemos a los clientes que conservamos de cuando teníamos un analista – comercial. ¿Es nuestra empresa un nuevo tipo?.

    • Parece que es de un tipo que se lleva mucho ahora en España: las empresas que cierran. Al menos como lo cuentas.
      Se puede vivir bien vendiendo carne, si se ejecuta bien. Yo he querido poner de manifiesto que he vendido carne, ahora desarrollo mis modestos productos, y que me gusta más lo segundo. Ambos negocios tienen riesgo. En lo que no creo es en eso de hacer de todo. Hay que escoger.
      ¿Por qué no te propones como Analista, aunque no te asciendan? Así al menos tendréis trabajo

  9. La empresa orientada al servicio es la mas extendida, la de mas fácil acceso para empezar a trabajar y cuando ya te das cuenta de donde te has metido es tarde.
    Además el modelo económico parece que no es mantenible en estos tiempos si no es a costa de los trbajadores.
    A principios de año empecé a describir lo que para mi era El fracaso del sector del desarrollo de Software (I) para poco después sufrir las Consecuencias del fracaso del sector y terminar con el cierre de la empresa.
    A muchos les sonará la historia por haberla vivido y otros pueden empezar a temblar cuando comprueben que están en una situación similar y conocen el final.
    Me apunto también al emprendimiento, pero hay que comer …

    Un saludo.

    • Hola Javi

      Gracias por tu comentario. Efectivamente, lo más extendido aquí en España son las “cárnicas” que vivían, con montones de mandos intermedios que no se sabe muy bien qué hacen (lo se porque he sido uno de ellos) de los proyectos de la administración pública. Ahora que no hay proyectos, ni internacionalización, ni I+D ni nada. No sabían hacer más que facturar horas hombre antes y ahora se les cae el negocio.

      Respecto al tema del emprendimiento, es algo en lo que llevo predicando con el ejemplo más de 10 años, los mismos que llevo de autónomo. Se puede comer en estos tiempos de crisis si te inventas tu propio trabajo. No es fácil (nadie dice que lo fuera), pero si no hay empresas que ofrezcan empleo o bien se emigra (en el extranjero hay mucho trabajo para informáticos) o bien te lo “inventas”. Dicen que el hambre aguza el ingenio… 😉

      Un saludo

  10. Llevo tiempo dando vueltas en mi cabeza esto mismo.

    Tengo clarísimo que algún día me dedicaré a trabajar en empresa de Producto. Ya sea como trabajador por cuenta ajena o me haré mi propia empresa. Trabajar en una empresa de servicios es un infierno.

    Pero como dices, no es fácil hacer producto. Yo estoy intentando mantener una app para iOS y cuesta esfuerzo. Necesito dosis de automotivación constante.

    • Hola Dani

      Te comprendo. Especialmente en las dosis de automotivación. Cuesta mucho salir de lo que uno sabe hacer, de la zona de confort. Pero hay que hacerlo de vez en cuando (con cabeza). Nos ayuda a crecer como profesionales (y como personas). Sin retos, nos dedicamos a criar barriga en el sofá.

      Gracias por comentar!

  11. Hola,

    No podría estar mas de acuerdo con tu análisis. He pasado por las dos experiencias y la verdad es que son tal como las cuentas. Afortunadamente dejé mi cárnica para ir a parar a una empresa mas decente.
    Lo triste de esto es que tu entras con toda la ilusión del mundo y la inocencia típica del que quiere empezar a trabajar como programador, y tu cárnica de turno se aprovecha de ti a mas no poder. Cierto es que te pagan, en la mayoría de casos por debajo del precio del mercado, pero el trato que te dan es nefasto, y acabas teniendo la impresión que da lo mismo ser bueno que malo haciendo tu trabajo ya que sigues la misma “progresión profesional ” que el inepto que tienes a tu lado.

    En fin, felicidades por tu entrada en el blog, en mi opinión resume bastante bien la realidad de este mundillo.

    Saludos

  12. Mi enhorabuena Diego!!

    Sin haber comenzado aun en el “mundo laboral” me parece un análisis la mar de acertado, sabiendo lo que sé por compañeros que ya trabajan/”pican en la mina”.

    Lo comparto en mi Facebook 😉 Como digo; debería ser de exposición obligada este tipo de “análisis de mercado laboral” en la formación de cualquier persona que pretenda dedicarse, de alguna u otra manera, al mundo del software en España.

    Saludos!!

    • Rubén:
      Me alegro de que te guste. Si además te sirve de algo, ya es la repera. No trato de proyectar pesimismo: sólo que seamos conscientes de cómo funcionan las cosas, para no esperar imposibles.

      Un saludo

  13. Pingback: La programación en España | Programación en Internet

  14. Pingback: España no es un país para un ingeniero informático | Programación en Internet

  15. Pingback: Profesor Ezequiel Ruiz Garcia

Comments are closed.