¿Merece la pena hacer las cosas bien en esta profesión?
En este post Mike Hadlow cuenta cómo en uno de sus primeros trabajos estaba bajo la supervisión de un programador que hacía su trabajo bien. La persona había escrito un código prácticamente el solo y Mike tenía que ayudarle a mantenerlo. Al principio a Mike le llamó la atención que el código estaba dividido en un montón de archivos independientes pequeños, en vez de ser un gran procedimiento que lo hacía todo. Poco a poco Mike gracias a las explicaciones de su jefe, y a algunos libros que su jefe le recomendó, fue comprendiendo el código y se dio cuenta que se trataba de un buen diseño que seguía patrones software y que hacía el software fácil de modificar cuando era necesario.
Mike y su jefe no tenían que quedarse horas extra en el trabajo, ni en los fines de semana. Eran capaces de hacer su trabajo dentro del horario de oficina. Pero en la misma empresa había otro equipo que tenía una responsabilidad similar a la de ellos, y que mantenían otro proyecto. Sin embargo ellos siempre estaban quedándose por las tardes, y tenían que ir a veces a trabajar los fines de semana porque su proyecto siempre tenía incidencias y era difícil hacer cambios en el.
En un determinado momento el jefe de la empresa decidió subir sueldos a los empleados, pero decidió que sólo le iba a subir los sueldos al equipo que mantenía la base de código problemática porque "ellos trabajaban más duro que Mike y su jefe".
Mike y su jefe probablemente vivían más tranquilos por haber hecho su trabajo bien, y no tenían que hacer horas extra. Pero se quedaron sin subida de sueldo. Y es que una profesión como la nuestra, en la que es extremadamente complicado saber si alguien está o no trabajando duro o bien, no está claro que siempre sea lo mejor hacer bien las cosas.
Por ejemplo, si uno hace un proyecto bien y después este proyecto no tiene bugs ni incidencias, probablemente el cliente para el que hemos hecho el proyecto no nos necesitepara mantenerlo. Y la realidad es que probablemente te van a pagar lo mismo por haber hecho bien el proyecto, o por no haberlo hecho también.
Hace bastantes años una persona que trabajaba para una empresa de consultoría española me comentó una experiencia en esta línea bastante sorprendente. Esta persona, bastante júnior en aquel momento, estaba en un equipo de dos personas encargadas de hacer una serie de queries sobre unas bases de datos para componer unos informes para ejecutivos de Vodafone. Éste era el único trabajo que realizaban las dos personas.
Esta persona se dio cuenta que la mayor parte de las consultas que hacían seguía unos patrones determinados. Y en el trabajo a ratos libres escribió un script al cual se le pasaba un par de parámetros, y era capaz de generar automáticamente la mayor parte de las consultas que ellos creaban manualmente. No las generaba todas, pero sí la mayor parte. Empleando el script una persona a media jornada podría hacer el mismo trabajo que estaba haciendo ahora dos personas a jornada completa.
Emocionado y orgulloso por su trabajo, el autor del script se lo enseñó a su jefe (no de Vodafone, sino de la consultora). El jefe le dijo que enterrase ese script y que nunca le dijese a nadie que había hecho eso. Que ahora mismo el proyecto en el que estaba él le daba de comer a él y a su compañero, y que como se enterasen los de Vodafone que se podía hacer el mismo trabajo con media persona, pues sobraban un empleado y medio en la empresa.
¿Os habéis encontrado vosotros en situaciones en las que no merece la pena hacer bien el trabajo sino que es más beneficioso hacerlo mal? ¿Conocéis alguna anécdota más del estilo de la de Mike o la mía?
Reader Comments (47)
En una gran empresa de consultaría para la que trabajé, cuyo nombre no puedo recordar ;), se dejaban incidencias ocultas y se maquillaban otras en la fase de desarrollo junto con la promoción de malas prácticas para que luego la fase de mantenimiento (que es la que realmente les daba beneficios) pudieran sacar más dinero y mantener más tiempo el contrato (a ver quién es el majo que se hace con una aplicación de gran tamaño con errores garrafales de diseño).
raven1981: "a ver quién es el majo que se hace con una aplicación de gran tamaño con errores garrafales de diseño"
Pues yo y otros muchos, yo lo llamo "refactorización profunda" y debería ser una "especialización", el mero hecho de que no exista se debe a que con frecuencia, el peor enemigo de un cliente... es sí mismo.
Respecto al artículo: este tipo de cosas se "combaten" de una manera "sencilla" considerano:
1) RENTABILIDAD
2) CALIDAD
3) PRODUCTIVIDAD
Las 3 están INTIMAMENTE relacionadas, si jodes una al final jodes las otras, sólo alguien MUY CERCANO AL PROBLEMA puede valorar esas tres variables que son las que podrían decidir una subida de sueldo o una palmadita en la espalda.
Si una única persona puede hacer el mismo trabajo QUE TRES sin heroicismos (es decir es una persona MUY PRODUCTIVA), con un sueldo que no es ni mucho menos tres veces un suelo "medio", con una alta CALIDAD (muy pocos errores, un código predecible, gestionable, organizado, fácilmente refactorizable...), lo que influye SIN DUDA EN UNA CLARISIMA REDUCCIÓN DE COSTES Y MANTENIMIENTO DE LA PRODUCTIVIDAD EN EL FUTURO Y POR TANTO RENTABILIDAD... pues no hay mucho más que hablar, no verlo es sencillamente apostar por el suicidio económico o por la mediocridad de una forma deliberada o por ignorancia.
Este es el problema de la tecnología, que cada vez es tan lista, que necesita menos y menos gente para hacer el trabajo de antes.
En breve veremos a todos los cajeros de supermercados sustituidos por máquinas de pagalo tu mismo, directamente escanearan todo lo que lleves y te lo cobraran.
No se puede luchar contra el progreso, por eso muchas veces digo que debería hacerse como en Suiza y dar un sueldo mínimo a todos los ciudadanos, ya que llegará un día que no habrá trabajo para todos por mucho que nos esforcemos.
Y pueden ocultar el código a Vodafone, pero al final llegará un día en que ese código sea tan básico que cualquiera podrá hacerlo y mostrarselo a Vodafone y ocurrirá lo mismo, aunque más tarde.
Buenas.
Yo nunca he hecho las cosas mal conscientemente, incoscientemente, muchas.
Montar sistemas con licencias, que realmente no aportan nada al cliente, pero que a la empresa le suponen unos ingresos por ser partner, unas cuantas.
También men han dicho que si metíamos fallos a drede, lo cual nunca he hecho ni he consentido, eso suele venir solo ya que un proyecto de 1 año y 5 programadores, por ejemplo, lo haces en 4 meses con dos juniors.
Y respecto a raven1981, si el cliente es medio listo, tu empresa no vuelve a ver un duro, ni en proyecto ni en mantenimiento y, como dice jmarranz, hay qente preparada para ver la ponzoña y conseguir que la aplicación se mantenga en costes.
Un saludo.
Yo he llegado a oir a altos responsables de proyectos algo como: "¿Para qué hacerlo bien en un año, si podemos tardar tres y luego venderles el mantenimiento?". Con eso, me quedo totalmente claro como funcionan muchas veces las cosas.
El problema que se describe se reduce al timo de la estampita. En informática se vive (vivimos) de timar.
Las consultoras timan a los clientes, como se ha descrito, con malas calidades, fallos ocultos, etc... Los clientes intentan timar a las consultoras, con requisitos extra no negociados, con supuestos "que se dan por sabidos", y temas que nunca salen a la hora de hacer el presupuesto, etc..
Y muchos curritos timamos a las empresas, haciendo cosas chapuceras por diversas causas, por tener prioridades distintas a los que nos pagan, etc...
En un extremo, si se entrega un proyecto de arquitectura con fallos profundos de diseño, lo normal es ir a juício y pagar una pasta reparando o reconstruyendo esos fallos, o bien indemnizar al cliente... En informática, sin embargo, se vende como "mejoras evolutivas"...
El día que los clientes de software sean como los clientes de casas, la calidad, buenas prácticas, etc.., sí sera lo primero, porque supondrá ganar dinero, no perder la venta de más horas de carne.
Pero bueno, mirando el tema desde el acueducto de Segovia, quizás podamos seguir vendiendo software como ahora otros 250 años..., hasta que el cliente aprenda...
Saludos
OBSOLESCENCIA PROGRAMADA. Esos clientes basan su negocio en hacer mal las cosas para que duren X tiempo. Nosotros tenemos que hacer lo mismo. Esto es CAPITALISMO, solo importan los resultados económicos. A todos nos gusta hacer todo perfecto a la primera, ser coherentes, buenas personas, y pensar que siempre somos los mejores y "hacer con un junior lo mismo que otro grupo de cinco programadores (la enfermedad del ego y prepotencía de muchos informáticos)", pero este sistema económico es así.
Yo pienso que si merece la pena (por satisfacción propia), pero también pienso que no siempre será agradecido, a corto plazo, y a medio. Y muchas veces duele a morir.
A largo al final sí.
Es ley de vida.
Es normal que se den estas cosas, o bien para ganar dinero si se trata de una empresa externa, o bien para mantener el trabajo si se trata de un currito interno con una posición un poco grande para él.
Lo primero se soluciona externalizando menos. Si la gente que te desarrolla y mantiene el producto son internos, se reduce el efecto "hacerlo mal para mantener nuestro negocio" aunque no se elimina porque potenciará el segundo punto: "hazlo mal para mantener el puesto".
¿Solución? Ética y gente competente en cada puesto de responsabilidad, cosa que en este país, hoy por hoy, falta y mucho.
Esto nos ocurre a todos. Valoramos mucho más al fontanero inutil que tarda una eternidad en arreglarnos una tubería y le cuesta mucho esfuerzo que al tipo hábil que a los cinco minutos de llegar ya nos ha arreglado nuestro problema.
Al torpe lo mismo hasta le damos una propina y al hábil nos dará rabia pagarle por algo que le ha costado cinco minutos
Como dice @Javier pasa en todos lados y en todos los ambientes (no sólo en sistemas).
Todas las fábricas analizan la vida útil de sus productos y los diseñan pensando en cuanto tiempo quieren que el producto sirva.
El que fabrica un ventilador, lo hace pensando en "esta pieza la hago de plástico y cuando se rompa en un tiempo x me tienen que comprar uno nuevo".
Uno pensaría que una fábrica así cierra porque nadie va a comprarle nada, sin embargo china vende y mucho.
Es la mentalidad capitalista y empresaria, porqué nuestro rubro iba a ser distinto.
La anécdota de quedarse horas y horas y sacar los proyectos a trancas y barrancas me recordó algo que leí hace años. Allí decían lo de ser "programadores grises" o "héroes".
Adivinidad qué categoría es la "buena" ;)
Yo tengo una historia igual, yo era el programador de sony electronics en una fabrica en Mexico hace 3 años, asi pues el gerente de sistemas era un mediocre no tenia conocimientos de programacion ni de administracion le pedi aumento, ya que tenia bien definido los procesos y tenia toda la operacion de logistica controlada, pero no me quiso subir el sueldo me decia que las lineas de produccion corrian solas y que no vei la necesidad de un aumento, por lo tanto renuncie y despues contrato a una consultoria y le hicieron un mugrero, despues contrato a un programador sin experiencia porque queria ahorrarse dinero, pero no le sacaba los proyectos y contrato a otro mas, sin embargo no pudieron con el trabajo.
En definitiva, ha quedado mal en su trabajo en proyectos frustrados y todos por no subirme el sueldo y todo por ahorrarse unos pesos.
Nota: Sony le da cada año un presupuesto de 1/4 de millon de dolares para mantener la operacion.
En México, todos los trabajos de obra pública sobre todo la pavimentación de calles. También los trabajos subcontratados por gobierno, se elevan precios (doble, triple o más) para pagar comisiónes entre negociantes.
Yo trabajo para una empresa donde el producto estrella que nos da de comer a casi todos está hecho un desastre. La mayoría del tiempo nos lo pasamos solucionando problemas, programando parches y añadiendo código sin seguir "patrones de diseño" o utilizando librerías ampliamente probadas que nos permitirían ser más eficientes.
En mi caso veo que si las cosas si hubiran hecho bien y si hiceran bien, no perdería mi trabajo puesto que el tiempo que invertimos ahora en solucionar problemas o en hacer cosas "manualmente" podríamos usarlo en poner en marcha nuevos desarrollos para nuevas líneas de negocio, o seguir mejorando el producto este con el fin de poder vender más.
Creo que el desarrollo de software en España no se le mima lo suficiente. Todos queremos tener buenos puentes y buenas casas que no se hundan, pero sin embargo el software que sea rápido, bueno, bonito y barato.
Pues claro que merece la pena hacer las cosas bien. A los otros tal vez les subieron el sueldo, pero los que lo hicieron bien tuvieron tiempo, que vale más.
Lo importante sería definir qué es hacer las cosas bien, porque yo creo que uno de los principales problemas del mundillo ultimamente es la sobreingeniería, pero vete tú a decirle a alguien que tiene dos docenas de siglas en su proyecto que sus 15 formularios de altas y bajas se podían hacer con unos servlets y unos JSPs sin tanta aparafernalia...
Evidentemente merece la pena intentar hacer las cosas bien, para mi es una cuestión de etica profesional, si te importa tu profesión lo razonable es intentar hacer tu trabajo siempre lo mejor posible. Insisto en lo de intentar porque es una cuestión que tiene que ver con la actitud que adoptes como profesional y no tanto con los conocimientos que tengas y como de "bien" lo hagas realmente, que sobre eso habría mucho que discutir también.
Cogiendo el ejemplo de "vodafone", puedes elegir dos caminos, no decir nada y seguir haciendo un trabajo mediocre y estafando a tu cliente, el proyecto durara algún tiempo más, y tu habrás estado en un trabajo mediocre durante X años, probablemente aburrido, probablemente desmotivado, probablemente sin aprender nada y cuando ese proyecto acabe porque nada dura para siempre y menos en tecnología, ¿que haces?, ¿a buscar otro cliente pardillo?, el camino del mediocre no lleva a ningún sitio al que merezca la pena ir.
Puedes elegir hacer lo razonable, y si tu jefe es un inepto vas tu al cliente y le explicas el asunto y después te vas a otra parte donde valoren el buen trabajo por encima de la estafa y el trapicheo. A lo mejor el siguiente proyecto tampoco es lo que buscas, ni el siguiente, pero siendo un buen profesional terminaras encontrando un sitio donde eso sea valorado.
Y más importante que esto, deberiamos ser mucho más conscientes del impacto que tiene el software en la sociedad, y de que hacer las cosas bien o mal no sólo tiene influencia en nuestro sueldo o en nuestras horas de trabajo. Un ejemplo, recuerdo un caso que me contaba un compañero sobre un software para la admon publica que se encargaba de gestionar los tramites relaciones con la subvenciones de la ley de dependencia. La tipica consultora de turno haciendo la tipica mierda de turno, y mucha gente sin poder recibir una subvención tan necesaria como esta porque muchos (no solo los programadores por supuesto) no se están comportando como profesionales. Este es un caso extremo, pero teniendo en cuenta que cada vez más cosas dependen del software tenemos que empezar a tomar conciencia de que hacer las cosas bien no sólo tiene que ver con nosotros mismos y nuestros sueldos sino que tiene que ver con la sociedad que estamos construyendo entre todos.
Miraros esta charla de xavier gost: http://www.youtube.com/watch?v=n-l4vSVJkNY
esto es hasta que llegue un listo que sepa hacer bien las cosas y cobre un porciento mas por programar la aplicacion y le devuelva dinero al cliente por los errores cometidos una vez que la aplicacion este en produccion.
Yo creo que eso ejemplifica la naturaleza humana, hace tiempo lei lo siguiente, "Somos seres humanos y por tanto limitados en nuestra racionalidad y proclives al oprtunismo", en otras palabras somos medio brutos y medio abusivos. Lamentablemente no puedo decir que tengo las manos limpias lo que si puedo afirmar es que jamas he traspasado esa delgada linea de la ilegalidad por que para mi una cosa es tener las limitaciones antes descritas y otra muy diferente ser deshonesto, devergonzado y cinico.
Lo han comentado ya, CAPITALISMO. Vivimos en un sistema económico donde solo cuenta el dinero, nada mas. Y así va el mundo. Si superaramos esta mierda y se valoraran otras cosas mejor nos iría. Pero claro, mucho vago vividor tendría que currar en cuenta de vivir de rentas.
Como dice el Dicho, "El vivo vive del Zonzo y el Zonzo de su trabajo".
Desafortunadamente leyendo reflexiones como estas te hacen perder la fé en este país de pillos (España), que no en esta profesión
Esto es extrapolable a la vida en general y afortunadamente todavía hay gente digna, con principios, honesta consigo mismo y con los demás. A mi por lo menos me han educado así, lo siento.
Yo he trabajado en empresas que realizaban estas prácticas, he sido testigo de estafas, pero no por ello yo tengo que hacer lo mismo, eso me parece de mediocres, al final el tiempo pone a cada uno en su sitio.
Ahora trabajo en una empresa seria, orientada a producto donde lo que se vende es la CALIDAD. Con anterioridad había trabajado en empresas orientadas a servicios y he visto que hay otra forma de hacer las cosas.
Esto sólo es un opinión. Espero que nadie se moleste
Interesante articulo y no menos cierto, en el mundo de la subcontratacion el unico que sobrevive es el que consigue quedarse porque no todo esta terminado.
Estoy de acuerdo con hacer las cosas bien, pero en España se valora la PRESENCIA y no la EFICIENCIA.
He asistido a algunos cambios en lenguajes y sistemas y siempre ha permanecido la gente que conseguia hacer el sistema mas inmantenible, y asumian el trabajo de los que lo hicieron bien.Por desgracia, esto es asi.
Tambien conozco alguien que termino de interno en una empresa en la que mantenia un proyecto y lo primero que hizo fue crearlo desde cero exigiendo documentacion.
Los informaticos no vivimos de hacer programas sino de cambiarlos.
Que interesante ¡¡¡¡¡¡¡¡!!!!!!! Pero ciertamente es una pena que se premie el trabajo mediocre y no el buen trabajo pero bueno, las cosas son asi. Muy buen post.
Hola
Muy a mi pesar, me constan casos similares a los que se han comentado. Sin embargo, debo decir que, personalmente, no me he encontrado en ninguna de esas situaciones en mis 14 años en el mundo del desarrollo software (y que dure, por favor)
Generalizando, diria que estas situaciones se dan al 99% por el beneplácito de la empresa (es su política), o por un responsable de proyecto inepto (cuanto menos). Solo en un 1% es cosa del desarrollador (o el equipo de desarrollo). En estos últimos casos, no suelen durar en la empresa...
Saludos
En España, no merece la pena.
Esto me ha recordado cuando trabajé (por poco tiempo afortunadamente) en una empresa de Zaragoza donde el dueño y gerente es un "empresaurio" que por aquel entonces quería meter cabeza en la web social...
El caso es que las webs para sus clientes las seguían haciendo a pelo sin CMS ni ningún tipo de gestor que facilitara al cliente editar los contenidos (y esto ocurría hace unos 3 años tan solo), y un día le comenté al empresaurio que por qué no usaban un CMS, que ahorrarían tiempo de desarrollo y el cliente podría editar sus contenidos.
A lo que el empresaurio me contestó: Si hago eso, el cliente no me llamará para que le cambie una foto un texto.
A día de hoy, pocos años después (al borde del cierre de la empresa), lo hacen todo con CMS y se les llena boca hablando de ello.
Cambiando el enfoque, "yo cobro por no trabajar" cada vez que me llames para algo es que he cometido un fallo, por lo que el estado ideal es que me pages si que yo haga nada. Esta afirmación es validad para incidencias, los cambios por supuerto se cobran aparte
Trabajé en soporte técnico. Gran cantidad de llamadas eran porque el antivirus daba falsos positivos al tener archivos en la cuarentena. Teníamos que conectarnos por remoto y eliminar la carpeta con la cuarentena. Hice un script para eliminar los archivos de manera más sencilla y cómoda, pero en el momento que dije de ejecutar ese script al inicio de Windows me dijeron que no, que sino nuestro trabajo perdía un poco de sentido.
Yo me siento muy identificado con los casos que se explican en el artículo. En mi proyecto, hay una tarea muy repetitiva, mecánica y tediosa que consiste en cargar ficheros en tablas a partir de una estructura dada. El caso es que estas estructuras pueden tener cientos y miles de campos, y para cuando yo entré el trabajo de picar el código que leía el fichero se hacía a mano. Se podían dedicar fácilmente horas para cada programa de carga.
En mis ratos libres me piqué un programa en Java (al que luego le añadí una interfaz gráfica para hacerlo aún más sencillo de usar) que leía la estructura (de un fichero) y generaba el programa en función de los parámetros que hubieras elegido (para permitir cierto grado de flexibilidad). La aplicacioncilla era capaz de generar en un segundo lo que nosotros tardábamos horas, y encima sin errores "humanos" (errores de sintaxis, errores a la hora de trabajar con la estructura..).
Cierto es que no admitía todas las estructuras posibles (casos raros y muy específicos), pero reducía enormemente el trabajo y los errores.
También hice algún otro programilla más de este tipo. Pero, y ya termino.. ¿Qué gano el proyecto? Pues seguramente los beneficios subieran al poder dedicar más tiempo a otras tareas. ¿Qué gané yo? Nada. Subida 0%, sin subida de categoría.. en fin...
Estoy profundamente de acuerdo con el artículo y con muchos de los comentarios, pero yo añadiría una reflexión más en el caso de España:
El software de baja calidad, mal diseñado, etc genera muchísimo trabajo de gestión en fase de evolución/mantenimiento y justifica el trabajo de muchísimos managers.
Trabajo para una gran empresa de telecomunicaciones, y nunca he visto a un desarrollador programar mal a propósito. Sin embargo sí que he visto a managers poner a gente con poca o ninguna experiencia a construir el software, acordar entregas en tiempos imposibles, montar equipos de decenas de programadores, etc. Piensas que es porque menosprecian o infravaloran la importancia del desarrollo, pero luego te das cuenta que así protegen sus empleos.
Lo más triste es que en esta industria controlada por managers de este pelaje nunca se va a valorar a un buen técnico como sí se le valora en otros países anglosajones.
A menor escala que en el artículo, yo trabajaba junto con mi jefe como departamento de IT de una empresa con 4 sucursales, unas 150 máquinas y unos 10 servidores. Lo hacíamos absolutamente todo (mantenimiento de software y hardware).
Logramos optimizar casi todo, y la verdad, no estabamos las 8 horas echando humo. Como nos cuestionaron nuestra necesidad "ya que todo iba bien" (no te jode, claro que iba bien, estábamos detrás previniendo lo contrario), decidimos estratégicamente provocar incidencias que consistían en hacer que algo "fallase" en los PCs de los jefes que nos cuestionaban. Básicamente se trataba de p.ej. cortarles el acceso a la aplicación corporativa para reactivarlo una hora después, o parar algo para ponerlo en marcha luego.
Oh maravilla! Al cabo de un tiempo nos preguntaron si necesitabamos una 3ª persona para hacer frente a la carga de trabajo.
Os contaré mi caso.
Hace unos cuantos años entré a trabajar en un sitio. Una persona sin más testigos me dijo que me quería contratar para programar en Java (en lo cual tenía una experiencia de 2 ó 3 años, según como se mire) y acepté. Después de empezar, pasadas unas semanas de reuniones con el cliente para hablar sobre requisitos y demás resulta que el jefe de proyecto que me dijo que me contrataba para que programase en Java me dice que el proyecto se va a hacer prácticamente todo en otro lenguaje propietario (salvo una pieza minúscula muy concreta que si no se hacía con Java difícilmente se podía hacer de otra forma), asociado únicamente a un producto propietario (no daré más datos). Lenguaje que yo conocía, pero sólo de un curso de 2 semanas!!.
Según pasaban los meses me llegó a decir varias veces que iba lento. Cuando me lo dijo varias veces llegó un momento que hablé a solas con él: "vamos a ver, tío, sabes que tengo buena experiencia en Java y decides que se haga en el lenguaje que tú controlas, y cuando se demuestra que yo controlo menos ¿te quejas? "
El caso es que pasaron los meses y vi que casi todo eran hacer páginas web para insertar, modificar o borrar registros de unas tablas (20 ó 30) de base de datos. Y como yo sabía que los nombres de tablas, campos de las tablas, tipos de datos, etc... pueden obtenerse con consultas a la base de datos me propuse hacer por mi cuenta y en ratos libres un programa generador de código. Se lo conté al jefe de proyecto y a otros compañeros que hacían otras aplicaciones. Todo fueron malas caras. Cosas como: tío, es que con eso aquí sobramos varios. En fin, el proyecto acabó y me dijeron que ya no tenían más trabajo para mi... era contrato por obra. A la puta calle. Parece que no le moló al jefe que supiese más que él y que cuestionase sus decisiones (eso sí, en privado, tuve tacto... para ciertas cosas tengo kilos de paciencia y calma). Y no cuento más detalles pero hay mucho más. Qué paciencia.
Normalmente, si una empresa necesita X trabajadores para que todo funciones fluido y trabajen sin agobios, la realidad es que tienen un 25% menos de personal, de manera que los programadores están estresados y con una larga lista de cosas que arreglar. En ese ambiente ¿qué ganas con ser un buen profesional que hace las cosas bien y rápido? Pues lo que ganas es que te asignen más trabajo para hacer en cuanto acabes. Así que no compensa. Si tu compañero tarda dos horas y tú quince minutos, lo que te merece la pena es prolongar esos quince minutos hasta las dos horas disimuladamente.
Bueno, nada que no supiéramos los que nos dedicamos a esto. Y como he leído en un comentario y me he sentido identificado, lo mismo pasa cuando el fontanero tarda 5 minutos y te cobra sus 140 euros.
Mi consejo para los juniors es: "haz que vaya lento, aparenta que tarda".
En mi último trabajo, con bases de datos también, redujeron como el 80% de la plantilla. Adivinad quienes mantuvieron el puesto.
Lo que merece la pena es ser jefe ysin necesidad de saber nada de nada. Puedes ser lo mismo un parásito sociual que un papanatas que no sabe hacer la O con un canuto, que si eres jefe tendrás un buen sueldo.
Buenas,
Yo he sido programador durante unos 10 años y me he encontrado de todo un poco. Lo que comentas en el post es perfectamente lógico. Si haces bien tu trabajo la empresa que ha necesitado el servicio probablemente te necesitará menos. Seguramente cuando les vuelva a surgir una necesidad que quieran implementar te llamaran a ti o a tu empresa porque están satisfechos con tu trabajo, aún así, no es habitual que surjan necesidades nuevas suficientemente rápido como para darte de comer todos los meses.
El problema va un poco más allá, si pensamos en para qué se usan las soluciones que implementamos, habitualmente tienen la función de automatizar tareas que anteriormente hacían personas. Es la parte negativa de la tecnología, idealmente el desarrollo sirve para facilitar la vida de las personas, automatizando tareas, mejorando la seguridad, etc. pero el sistema económico en el que estamos no evoluciona en el mismo sentido. Las personas a las que la tecnologia ha "facilitado" la faena normalmente acaban sobrando y la sociedad no es capaz de generar suficientes nuevas tareas que puedan realizar para poder cobrar un salario y comer...
En resumen, lo que pasa en estos trabajos no es mas que un reflejo del sistema en el que estamos. En mi opinión, hay que intentar ser coherente hasta donde se pueda, es decir, si te gusta hacer las cosas bien intenta hacerlas bien, si no, no sufras; y si ello va a influir en que puedas comer o no, decide qué es lo que te interesa más.
Os cuento mi caso, empecé en un equipo de desarrollo de 5 personas, en el proyecto había tareas pendientes que acumulaban retrasos de meses, algunas incidencias llevaban abiertas y sin resolver desde hacía dos años. Los que entramos nuevos, con trabajo y eficiencia, conseguimos poner el proyecto al día. Pues bien, el resultado ha sido que ahora ya no se necesitan 5 personas y sólo quedamos 3.
En mi empresa, que fabricaba productos electróncios, perdimos un cliente porque según él como nuestros equipos a diferencia de los de la competencia, no se averiaban nunca, sus clientes no le renovaban los contratos de matenimiento que eran su principal fuente de ingresos.
Un caso curioso es la administración en la que algunos fucionarios se niegan a hacer los trabajos en plazos razonables porque entonces les encargan otro trabajo así que alargan todo lo posible lo que tienen entre manos retrasando la concesión de licencias, permisos, etc. sin que les importe el perjuicio que su actitud causa a los ciudadanos.
si haces trabajos de mierda serás un experto en trabajos de mierda.
si eres capaz de hacer un script que haga el trabajo de una persona, probablemente estés más cerca de trabajar haciendo scripts que comiéndote ese trabajo a pelo.
el jefe de esa consultora que rece para que la competencia no le ofrezca a vodafone el susodicho script, porque además de perder el trabajo, perderá el respeto de sus clientes.
moraleja : haz las cosas bien joder !
Ahí va mi caso (uno de ellos):
Hace años, trabajando en un equipo de desarrollo en el departamento de informática de una empresa pública, nos ordenaron hacer una pequeña aplicación web de gestión.
Por aquellos entonces se gestionaba un "megaproyecto" llevado por una conocida consultora. Este proyecto resultó desproporcionado en los costes y murió ante la llegada de nuestra pequeña aplicación web, que con muchos menos recursos y costes hacía lo que el usuario realmente necesitaba. Nuestros jefes estaban orgullosos del éxito y nosotros esperábamos un reconocimiento que no habíamos tenido en los últimos años.
Cuando contamos el caso a un experto compañero, nos contestó:
-¿Que habéis hecho una aplicación rentable, que se ha cargado el megaproyecto y casi gratis?. La habéis pifiado.
-¿Cómo? -le contestamos-
Efectivamente. Gente de muy arriba en la empresa no estaba nada contenta y consiguieron separarnos, apartarnos de cualquier proyecto significativo y jamás volvimos a hacer nada útil. Por supuesto nadie tuvo ninguna subida de sueldo nunca más y todos terminamos saliendo de la empresa de un modo u otro.
¿Comisiones perdidas?¿contratos pifiados?¿guerras tribales entre directores?. No sé, pero es una prueba de que es posible morir de éxito.
Pues no sé a vosotros, pero a mi me encanta encontrarme con un exjefe y que me diga: hombre! que tal?, aun seguimos utilizando tu aplicación y funciona sin ningún problema.
Respecto a lo del sueldo... hombre estaría bien cobrar más, no lo voy a negar, pero prefiero sentirme orgulloso de mi trabajo.
La cosa es sencilla: no interesa hacer un producto bueno, solo algo que pase unos test de usuario. Se vende rápido y a bajo coste para luego compensar todas las perdidas y generar ganancias a base de mantener semejante esperpento de código (por no decir una cosa). El negocio está en el mantenimiento, no en el desarrollo de un producto, de hecho, estoy convencido de que las consultoras españolas no venden productos sino servicio... y claro... así van las cosas
En referencia al compañero que comentó que "valoramos mucho más al fontanero inutil que tarda una eternidad en arreglarnos una tubería y le cuesta mucho esfuerzo que al tipo hábil que a los cinco minutos de llegar ya nos ha arreglado nuestro problema"... eso es cierto, pero con un matiz.
También he visto que se valora mucho al programador que "arregla" algo en cinco minutos... pero que ni se molesta en estudiar cómo puede afectar la "solución" empleada al resto del proyecto ni otros posibles incovenientes... que al que le pone más interés y empeño (y por lo tanto tiempo).
Visto con estos ojos :D
Y luego está el típico jefe inepto que sin tener ni idea de programar dice "¿pero tan difícil es eso?
Un saludo !
Este problema no es exclusivo de España. Llevo casi dos años currando en Finlandia y es bastante decepcionante y acojonante ver como un projecto sencillo en requerimientos ha salido fuera de control, require a 7 desarrolladures full time (todos finlandeses), van a meter a 3 o 4 más de una consultora y por otro lado se busca a otra consultora para rehacerlo todo desde cero. El responsable del desastre ha promocionado a líder de projecto. Todo ello por carecer de diseño alguno y de personal cualificado. Por otro lado, voy a completar mi tercer proyecto completamente solo, gracias a un buen consejo que recibí: do not jump into coding! Espero vuestros comentarios! Saludos.
Tal vez si esa empresa hubiese aplicado el script podría haber dedicado más recursos a buscar nuevos potenciales clientes teniendo como prueba que ya tenian en un producción un buen producto en un gran cliente.
¿Que hoy en día es dificil encontrar cliente? Pues si, no lo niego, pero cuando un producto es bueno, las empresas lo ven con mejores ojos, sobre todo si son grandes cuentas.
Hola, vengo a quejarme contando anécdotas de lo mala que es mi empresa. Estoy infravalorado, los malos son los demás. Gracias.