interés
Opiniones controversiales sobre la programación

Opiniones controversiales sobre la programación

En muchas áreas de la vida hay ciertas cosas que están estandarizadas y que son comunes dentro del área en sí, que todo el que entra en esa área conoce a lo que se está enfrentando y mínimamente todos lo que ya están relacionados con esa área saben que eso funciona así aunque no sea la manera más moderna o más eficiente de hacer las cosas, pero se siguen haciendo porque “así se ha hecho de toda la vida”.

La programación no se salva de esto y es que hay ciertas cosas dentro de esta profesión que son comunes y se han hecho desde siempre o al menos desde hace ya varios años y sin embargo no todas me parecen lo suficientemente útiles o efectivas. Así que hoy te voy a decir cuales son algunas de mis opiniones que van en contra de lo común del mundo de la programación.

No todo es pasión por la profesión

Este creo que es el eje central de este artículo y es que casi todo lo que opino que va en contra de lo estándar está relacionado con esto. Pero ¿por qué me enfoco en esto primero?

mucha gente dentro y fuera del mundo de la programación asume que los programadores amamos lo que hacemos, que sentimos placer y cariño por la profesión y que por lo tanto nos encanta y queremos hacerlo toda la vida. Pero la realidad es muy distinta, y creo que no mucha gente habla al respecto, hoy en día, hay tantos programadores por el siempre hecho de que es una profesión que paga muy bien, aunque no nos guste hacerla necesariamente. En mi caso, por ejemplo, me colocaría en un punto medio. No diría que siento pasión, pero si me gusta lo que hago y disfruto de un buen desafío. 

Pero ¿cuál es la diferencia entre una persona que le gusta como yo y una persona que le apasiona? la diferencia es que al que le apasiona intentará aprender nuevas tecnologías constantemente, estará siempre al tanto de las mejoras de su tecnología favorita, se quedará horas extras en el trabajo con tal de terminar su código y dejarlo lo mejor posible. Y sobre todo pondrá un buen desafío y aprendizaje sobre un buen salario.

Si me preguntaran porque me dedico a esto, mi respuesta sería porque tiene mucha demanda laboral, porque no se me hace tan complicado de hacer y entender, porque no requiere mucho esfuerzo físico ni moverme demasiado y por sobre todo. Porque tiene uno de los mejores salarios del mercado. Y ahora que hablamos de salarios, eso me lleva al siguiente punto:

Tener interés por el salario no te hace peor programador

A lo largo de mi carrera habré participado en más de 50 entrevistas laborales y en todas las entrevistas hacen la siguiente pregunta: ¿Cuál es tu motivación para cambiar de empleo? les voy a decir primero las respuestas que pasa por mi mente:

  • ¿Mi motivación? tu me contactaste asi que tu dime, ¿que puedes ofrecerme para que yo cambie de empleo?
  • Me motiva tener un mejor salario que el que tengo ahora.
  • Quiero conseguir un trabajo más tranquilo donde no me estresen tanto
  • Quiero una empresa con mejores beneficios.
  • No quiero morirme de hambre

Pero saben algo? esas respuestas son tabú en una entrevista, no puedes “querer” buscar esas cosas o al menos no deben ser tu motivación principal porque está mal visto. Lo gracioso es que las empresas creen que responder así es negativo porque, entonces si aparece una empresa con mejores condiciones, el programador se iría. Pues déjenme decirles algo, el programador se irá de todas maneras independientemente de la respuesta que de en la entrevista. 

¿Por qué no dejar las cosas claras desde el principio? si una empresa me garantizara que el salario que voy a tener va a ser el más competitivo del mercado siempre, pues yo me quedaría en esa empresa y ni siquiera miraría para otro lado. Porque mi motivación es el dinero. 

Pero en lugar de eso me veo obligado a responder con lo siguiente:

  • Estoy buscando nuevos desafíos
  • Estoy buscando crecer profesionalmente
  • Quiero tener un nuevo aire y nuevos proyectos

Por supuesto que eso puede ser verdad, pero eso la mayoría de las veces es secundario. Rara vez he conocido a un programador que deje un puesto de trabajo por “buscar nuevos desafíos” y decir eso en entrevistas a estas alturas se convirtió en una respuesta automática, tanto el entrevistador como el entrevistado saben que esa será la respuesta aunque saben que no es cierta.

Hablando de entrevistas la siguiente es una que me ha molestado toda la vida:

Los Live Coding Test son basura

Puede que si eres un programador Junior nunca hayas pasado por esta situación o mejor dicho, nunca hayas tenido el siguiente pensamiento, pero las pruebas de código en vivo solo sirven para medir tu habilidad de resolver pruebas de código en vivo. Recuerda cuando hice mi primera prueba de código lo mal que me sentí por no poder resolverlo todo y pensé que no era lo mío porque no había manera de que yo pudiera resolver ese tipo de pruebas sin mucha más práctica. Luego de que quede en la empresa me di cuenta que nunca usé el tipo de preguntas que me ponían en esas pruebas, de hecho en todos los años que llevo haciendo esto nunca he necesitado encontrar la posición de 2 números dentro de un arreglo que sumados den un número mayor a 10.

Lo que me molesta de este tipo de pruebas es que plantean unas situaciones completamente improbables que requieren plantearse cuál es la mejor manera de resolver este tipo de problemas, y si la realidad es que este tipo de problemas evaluan tu habilidad para escribir código, pero ya que las situaciones son improbables, entonces nunca te vas a encontrar con esa situación en tu vida, por lo tanto el hecho de que sepas resolver ese problema o no, es irrelevante por lo tanto, ¿cuál es el punto de saber resolverlo para empezar?

No me malinterpreten, no digo que sean del todo inútiles, pero usarlas como criterio único para determinar si un programador sabe o no de algún tema me parece un error. En su lugar prefiero los coding challenge que plantean un ejercicio más realista y también te da un tiempo más realista para resolverlo.

La diferencia entre uno y otro es que el coding challenge que plantea una situación de la vida real permite que las personas entiendan el tipo de problemas que se le presentarán en el trabajo y puedan determinar si tienen las habilidades necesarias para resolverlo. A diferencia de una prueba con un ejercicio super específico que solamente sirve para probar a la persona más que para probar sus conocimientos generales.

Los roles de gerencia media son inútiles en ciertos trabajos

Los roles de gerencia media son todos los roles que están entre el programador o líder técnico y el jefe de tecnología de la empresa. Son esos roles como el Scrum Master el Product Manager y otros roles de gerencia con nombres variados. El motivo por el que son inútiles es porque no aportan nada al proceso de desarrollo ni al crecimiento de la empresa, y su única función es vigilar que los programadores están haciendo su trabajo y que están trabajando todo el tiempo. El problema con eso es que salvo contadas ocasiones, los programadores somos muy responsables y nos encargamos de llevar a cabo nuestro trabajo sin necesidad de vigilancia. 

Así que un rol de este tipo solo sirve para entorpecer el trabajo del programador, pidiendo reuniones, pidiendo estatus, y constantemente molestando al programador para saber como va el trabajo. Lo peor del asunto es que la mayoría de las veces la respuesta de “¿en qué andas? o ¿cómo vas? será la misma. Es más, la mayoría de las veces al principio del proyecto, piden una estimación de cuánto tiempo va a tardar en entregarse. Así que preguntar cómo vas todos los días, no solo me parece innecesario, sino también molesto. 

No me interesa si tu compañía tiene 3mil empleados y 50 sucursales.

A medida que he recibido propuestas laborales, me he dado cuenta de un factor común y es que las empresas más grandes tienden a vender como “ventajas” el hecho de que son empresas grandes, presumiendo de la cantidad de empleados o la cantidad de sucursales que tienen. La realidad es que estos son factores irrelevantes y de hecho si te pones a pensarlo detenidamente no son “ventajas” sino más bien “desventajas” porque si llegaras a quedar en la empresa, serias una pequeña hormiga dentro de un hormiguero gigante. Así que el hecho de que la empresa sea muy grande, nunca va a jugar a favor del programador por más que lo quieran hacer ver de esa manera. 

Los “beneficios” de las empresas solo benefician a sí mismas

Muchas veces las empresas ofrecen otros beneficios como “mesa de ping pong” o “membresía de gimnasio paga” o cosas como “desayunos con frutas” o “cerveza después de las 6pm” estos beneficios son una trampa mortal, porque no están pensados realmente para beneficiar al empleado, sino para beneficiar a la empresa. Por supuesto que el empleado se ve beneficiado por ellos, pero el problema de estos beneficios es que los obtienes a costa del salario. Te recomiendo que revises propuestas laborales y veras que mientras más beneficios proporciona la empresa, menos salario bruto recibirás al final del mes. Obviamente cada empresa es distinta y sus compensaciones salariales pueden varias, pero en general la regla se mantiene.

Conclusión

La profesión del programador al igual que cualquier otra sufre de ciertas suposiciones impuestas por el mercado que al final, pueden ser buenas o malas, pero terminan estableciéndose como “normales” y aunque con el tiempo se pruebe que no necesariamente son buenas o positivas aun así se seguirán haciendo porque la moda o el “siempre se ha hecho así” lo imponen. ¿Tienes alguna otra opinión que quieras compartir? déjamelo saber en los comentarios.

Leave a Reply

Your email address will not be published. Required fields are marked *

en_USEnglish