Programador rico, programador pobre

Julio César Guevara
KarmaPulse Developers
10 min readAug 14, 2015

Alguna vez leí el libro “Padre rico, padre pobre” y si bien nos soy fan de la idea que todo mundo puede y debe invertir en bienes raíces y volverse millonario también es cierto que pueden aprenderse cosas muy interesantes sobre el manejo de tus finanzas y bueno creo que no soy el mejor ejemplo para hablar de finanzas sanas pero como programador si puedo hablarte sobre un cambio de mentalidad que pude llevarte de ser el programador pobre a ser el programador rico.

Como administres esa riqueza ya es otro tema del que yo no podría aconsejarte XD

Hace poco platicaba con un colega programador acerca de los proyectos en los que se encontraba trabajando y durante esa platica surgió el tema de que tan bien le iba monetariamente hablando, no podía creerlo ¡ No ganaba ni 5 mil pesos ( mexicanos ) mensuales! Eso no esta nada mal los primeros años que comienzas a trabajar y a poner a prueba tus habilidades como desarrollador pero el, él tiene mas de 8 años de experiencia y en mi opinión es uno de los mejores programadores que he conocido y sin duda en ciertos momentos lo considere «mi maestro del código»

Después me puse a pensar cual era la razón de que él tuviera un sueldo tan bajo siendo tan bueno en lo que hace y no encontré razón alguna ¡En verdad es bueno! Así que me puse a pensar, a lo largo de estos años ¿que había hecho yo cada vez que me había logrado progresar en mi carrera como desarrollador de software? y entonces fue evidente, y es la razón por la que decidí escribir este post; porque se que hay programadores brillantes allá afuera perdiendo la oportunidad de ganar un mejor sueldo solo por falta de un pequeño cambio de mentalidad.

Cuando comienzas a escribir tus primeros programas ( una calculadora, la secuencia fibonacci o unos mas prácticos como un formulario de contacto en un sitio o un reloj checador ) sabes que has empezado en el divertido y retador mundo de la programación y que habrá muchos obstáculos y cosas por aprender, pero eso te emociona. Y si ha sido así es prueba de que este post es para ti! Porque el entusiasmo por los retos es la primer cualidad de un buen programador lamentablemente es esa misma cualidad la que te hace creer que la única manera de progresar es aprender mas cosas, resolver problemas más complejos, dominar los lenguajes con los que trabajas y evidentemente… ninguno de esos puntos es discutible ¡Son necesarios!

Pero entonces ¿que estoy haciendo mal? Ó ¿Que puedo hacer mejor para que mi progreso se vea reflejado en mi sueldo?–Te preguntarás .

Bueno, la realidad es que aprender nuevos lenguajes, dominar los métodos, librerías, frameworks de los lenguajes con los que trabajas, aprender recursividad, recorrer búsquedas binarias, lenguaje ensamblador, etc ¡No te harán ganar mas! Al menos no por si solos.

Recuerda que la gente es remunerada según el valor que aporta a la sociedad y en un equipo de trabajo tú serás remunerado con base al valor que aportes al equipo y a los proyectos en los que te involucres, pero es justo aquí donde la mayoría de programadores fallan, se equivocan, tropiezan, tienen bugs, terminan errando y ganándo menos de lo que merecen, menos de lo que esperan ¿Por qué?

Por que no son capaces de transmitir el valor que aportan al equipo, el valor de sus conocimientos y trabajo en el proyecto en el que están

Déjenme repetirlo por lo importante que es:

No son capaces de transmitir el valor que aportan al equipo, el valor de sus conocimientos y trabajo en el proyecto en el que están

Y es por esta razón que programadores brillantes pero introvertidos están «atorados» con un sueldo mucho menor del que podrían tener y es la misma razón por la que hay programadores que sin saber tanto pero vendiéndose muy bien están liderando proyectos y ganando el triple de la gente que llevan a su cargo que llevan la carga más pesada.

Voy a poner un poco de contexto. Cuando sientes algún malestar y vas al doctor no esperas que este te diga todo lo que tuvo que aprender para poder detectar cual es tu malestar o que mencione cual es el proceso de contagio de una enfermedad y presuma cuan difícil es memorizarlas todas, ¡No! Lo que tu quieres es aliviarte, quieres sentirte bien y entre más rápido mejor y esa es la prioridad y ya después te fijaras si usas el tratamiento caro o barato o si tomas pastillas o te inyectas pero lo principal es tener «una solución». De la misma manera cuando tu coche se descompone y lo llevas al mecánico no quieres enterarte del proceso que lleva diagnosticarlo, desarmar, reparar y volver a armar, no necesitas que el mecánico te cuente todos los modelos que sabe reparar ni los cursos que esta tomando en este momento lo que tu necesitas es que «repare» tu auto. Y por último para dejar bien claro este ejemplo si tu vas con un arquitecto porque quieres ampliar o construir tu casa lo que esperas de el no es que te presuma las maquetas que hizo durante su carrera o lo bien que podría construir un puente si eso le encargarán, ¡No! Lo que esperas es un «estimado» de cuanto dinero necesitas para hacer tu sueño realidad y cuanto si este fuera mas pequeño o grande de lo que es ahora.

¿Ves un patrón en esto?

Cuando te expreses con tu equipo acerca de tu trabajo, de lo que tú puedes aportar no lo hagas en términos de tu carrera, de lo que tu conoces, hazlo en términos de lo que a ellos les interesa.

Desde que empeze a escribir este post he puesto más atención a como mis compañeros programadores explican su trabajo a otras áreas dentro de la empresa y he notado como es que no son capaces de traducir el enorme esfuerzo que les llevó o llevará una tarea a algo que otras áreas como diseño, product managment, ventas puedan enteder y aprovechar. No importa si acaban de crear una función recursiva en el CMS que permita tener un menú mucho más dinámico y con anidación infinita de categorías de productos, si no lo sabes explicar para ellos solo será un cambio de «copies» en el menú. La gente que puede tomar decisiones sobre tu crecimiento no ve la diferencia entre la función que tu creaste y otro programador que en la mitad de tiempo solo edito el HTML del menú.

Así que, puedo recomendarte lo siguiente:

La siguiente vez que tengas que proponer ideas, soluciones, que tengas que exponer tu trabajo, tus avances sobre un proyecto resiste las ganas de presumir técnicamente como lo harás o lo hiciste. Esfuérzate por recordar que es lo que le importa a la gente con la que estas hablando, que es lo que entienden y les aporta valor. Recuerda los ejemplos anteriores, las personas quieren:

  • Soluciones e ideas para sus problemas
  • Reparaciones para lo que haya dejado de funcionar
  • Estimados de esfuerzo para las ideas y proyectos que tienen en mente

Se que ganan las ansias de decir que estas aprendiendo programación concurrente y que es muy difícil y no cualquiera puede implementarla de manera correcta o que lleva mucho tiempo modificar todo el código a programación orientada a objetos. ¡Pero no lo hagas! Controla tu ego. Recuerda con quien hablas, a ellos no les importa un cacahuate eso.

La próxima vez que hables con un diseñador demuestra como tu trabajo y conocimientos ayudarán a llevar a cabo su diseño tal cual el lo ha imaginado e incluso como harás para optimizar las imágenes para que carguen rápidisimo. Si hablas con el product manager explícale como tu experiencia ayudará a que logren llegar en tiempo a la fecha de entrega pues ya has trabajado en muchos proyectos similares anteriormente. Si hablas con alguien de finazas aprende a justificar porque los servidores que estas utilizando si bien son costos son la mejor inversión a la largo plazo. Si hablas con recursos humanos aprede a transimitir el perfil de las personas que quieres para el crecimiento de tu equipo. Si hablas con cualquier otra persona aprende a transmitir las cosas maravillosas y divertidas con las que trabajas nunca sabes donde puede haber una oportunidad de venta, crecimiento, apoyo, retroalimentación, etc.

Si haces esto, de pronto toda la gente con la que trabajas enderá el valor que tienes dentro del equipo, cada uno a su manera se verá beneficiado de tenerte trabajando con el y si todos ellos pueden verlo no dudes que las personas de las que depende tu crecimiento no lo verán todavía mas claro. Pasarás de ser el programador que “habla en otro idioma” , “que nadie entiende”, “que lee la matrix” a “la persona que tiene solución a muchos de mis problemas” y queda mas que claro quien de los dos es el que es considerado para subir de puesto, para ganar más; porque sin darte cuenta en efecto estas generando más valor. Tenerte en el equipo cuesta más, pero bien lo vale.

No vendas humo

Cuando la gente entiende la valia de tus conocimientos notarás como cada vez más ellos se acercan a tí con diferentes preguntas porque programar es muy útil y saber hacerlo es una gran habilidad y cuando la gente te entiende, te lloverán preguntas. Es justo en esta etapa donde debes aprender a controlar tu ego más que nunca, porque es fácil creer que tú debes saber todo lo que te preguntan, y como ellos no sabrán facilmente si les mientes tendrás la opción de:

  • Reconocer que no sabes
  • Inventarte algo ( ¿Quién lo notará? )

Lo malo de la segunda opción es que fácilmente se vuelve un vicio, incluso aunque tengas una respuesta si inventarte algo representa un menor esfuerzo se te hará un costumbre tomar ese camino.

Es importante saber comunciarte con los demás pero aún más es saber controlar tu ego, reconocer cuando algo te sobrepasa o que necesitas mas esfuerzo para poder dar una respuesta e incluso guiar la pregunta a alguien que sepa mas del tema. Porque mentir al inicio dará buenos resultados te dara un status que te hará sentir bien, que te hará ganar más pero como sabemos no hay mentira que dure por siempre y mas pronto de lo que te imaginas te encotrarás huyendo de tus propias respuestas o siendo evidenciado con gente técnicamente mas capacitada y no es algo que haga nada bien a tu carrera; estarás destruyendo tu reputación con la gente menos indicada ( tus compañeros de trabajo que bien pudieron ayudarte, la gente que creía en ti y te ayudo a crecer ).

Aprende a comunicarte, a dar valor a tus conocimientos pero dales un valor justo, un valor acorde a lo que en verdad sabes y podrás aportar.

No mientas, no te aproveches de la gente que no sabe tanto del tema así como a ti no te gustaría que el doctor, el mecánico o el arquitecto del ejemplo anterior se aprovecharán de tí.

Aprende a escuchar

Nada te hará aportar mas valor a un equipo que entender que es lo que quiere ese equipo y orientar tus esfuerzos hacia ello. ¿Para que aprender JAVA si tu equipo no lo necesita a corto plazo? ¿Porqué no esforzarte en aprender ObjectiveC si los has escuchado queriendo tener una aplicación nativa en vez de un sitio responsivo ? ó ¿Porque desaprovechar la oportunidad de platicar con las diferentes áreas de tu equipo, ver que problemas tienen y encontrarles solución? ¿ No es evidente que eso te generará más valor en el equipo y por tanto mas ingresos?

Ahora es importante resaltar que el orientar tus esfuerzos a ayudar a tu equipo no significa que tu carrera tenga que volverse aburrida, si tus proyectos han estado siendo programados en PHP y tu querías aprender Python o Ruby es el momento perfecto para aprender ese lenguaje al que le traes ganas pero no te dejan implemetnar en proyectos para clientes. Que si solucionas el problema de que la empresa “Tiene un sitio web muy feo porque nunca tiene tiempo para trabajarlo y no le asigna recursos” y qué si lo solucionas desarrollándolo en ruby. Tu aprenderás, la empresa tendrá solución a unos de sus problemas ( sabrá quien lo resolvió ) y también tendrás evidencia de porque podrían porgramar algo en Ruby para el siguiente cliente. Asi que no pienses que el solucionar problemas de otras áreas es aburrido y no aporta nada, al contrario es la mejor oportunidad de aprender, de experimentar y de crearte valor.

Y lo más importante de platicar con diferentes áreas es que aprenderás cada vez mas a detectar que es lo que es importante para ellos, en que tus habilidades como programador son útiles, que cosas son importantes para el proyecto, para el equipo entero. Empezarás a tener una visión mas amplia del entorno en el que trabajas y no hay poder mas grande que puedas tener que “la información”, la información dada por escuchar a todas las áreas con las que convives y trabajas día a día.

Hazte el hábito de escuchar detenidamente y serás recompensado con las respuestas a que aprender, cuando y porque.

Y no hay manera mas efectiva de ganar de más que el que seas ese programador con el que todas las empresas sueñan tener en sus filas.

Esta es la manera mas efectiva con lo que yo me encontré de pasar de ser el programador pobre al programador rico.

Si tienes algo que quieras aportar, criticar, comentar, etc adelante!

Mas adelante escribiré “ Programador rico, programador pobre Parte 2" donde hablaré de mi experiencia con los emprendimientos, freelances y con que perspectiva los he afrontado y como esto puede afectar para bien o para mal tus bolsillos.

--

--