Un programador que no llega a programar: ¿a dónde acudir?

En primer lugar, te has encontrado con una triste realidad de la industria del software. La mayor parte del trabajo no es programación. La programación es la parte divertida. Si pasa más del 20% de su tiempo escribiendo código nuevo, le está yendo mejor que a mucha gente, incluidos algunos muy bien pagados. Sin embargo, el trabajo de trabajo no programado tiende a pudrir tu cerebro después de un tiempo. Puede hacerlo durante un período de “pago de cuotas” si hay una razón estratégica para ello, pero no desea quedarse atrapado durante años.

Tienes dos opciones.

  1. Si tiene un jefe de apoyo y una buena reputación dentro de la organización, probablemente tenga una buena cantidad de autonomía. Así que mira el trabajo aburrido y descubre qué lo está causando. Si tiene el tiempo y la autonomía, vea si puede automatizar las cosas aburridas. Trátelo como un problema de ingeniería. Su objetivo es agregar valor al reducir el costo de tiempo de gran parte del trabajo de mierda que la gente tiene que hacer. Si se necesitan 10 minutos para hacer un pequeño cambio desde el lado comercial (por ejemplo, el texto en un botón), su objetivo debería ser reducirlo a 10 segundos. Encuentre una solución elegante que sea un placer usar para sus usuarios y los programadores de mantenimiento. Dedique algo de tiempo a hacer las cosas bien para que el mantenimiento no sea una carga tan pesada. (La mayoría de los programadores no tienen suficiente autonomía para hacer esto, o trabajan en entornos burocráticos restringidos donde ya se han tomado demasiadas decisiones. Si ese es el caso: pase al # 2).
  2. Encuentre maneras de escabullirse el tiempo suficiente para aprender las habilidades (que pueden no ser técnicas) que requerirá su próximo trabajo. Ponga sus fines de semana y noches (o mañanas) en esto. “Roba” una educación de tu jefe si el trabajo es tan malo como tú lo haces parecer. Actualice su trabajo para obtener un trabajo más interesante.

Nunca he usado PHP, así que lo sé solo por su reputación, pero es posible que desee examinar la programación funcional (FP). La FP y el aprendizaje automático / ciencia de datos parecen ser dos marcas reconocidas consistentemente de programadores de élite, pero el problema con ML es que es difícil obtener experiencia en ML sin demostrar que eres un buen programador (no uno de los desarrolladores de productos básicos para quienes el ambiente de trabajo típico poco inspirador está orientado). Por lo tanto, subir de nivel en la programación funcional es una muy buena idea si sabes que quieres ser un programador a largo plazo. Scala es un gran lenguaje para uso profesional real, pero le recomiendo que comience con Haskell para tener una idea, y luego Clojure para una toma muy diferente (escrita dinámicamente, siendo un JVM Lisp) en FP.

Otro consejo: tomar trabajos como oportunidades para aprender habilidades sociales también. Algo molesto pero probablemente insoluble en la industria del software es que incluso los buenos ingenieros tienen que pasar tanto tiempo estableciendo credibilidad para conseguir el trabajo interesante como lo hacen realmente. Cuanto mejores sean sus habilidades sociales, menos tiempo tendrá que dedicar a ese tipo de trabajo de “prueba”. De hecho, creo que crecerás mucho más rápido, técnicamente, subirás de nivel socialmente ahora, porque eso te quitará mucha holgura de tu carrera.