No soy una “persona de negocios”, por supuesto, pero conozco bien a un desarrollador senior.
Creo que lo que más le resulta frustrante al tratar con los profesionales de negocios es que no entienden lo que motiva a los programadores y lo importante que es para ellos lograr y mantener un “flujo” para cumplir con los plazos de sus proyectos. Si el día de un programador se divide con 3 a 4 “check ins” y reuniones además del almuerzo, y otras interrupciones, está disminuyendo su productividad. Tener un informe de estado al final del día, y tal vez una proyección al comienzo del día sobre lo que esperan lograr realmente debería ser suficiente.
Si su oficina utiliza software para que los programadores verifiquen el código y proporcionen actualizaciones de estado en los elementos de trabajo individuales, por amor de Dios, USE. Aprende a leer los informes por ti mismo. No haga que los programadores participen en una reunión de 45 minutos todos los días, de modo que todos puedan CONTARLO individualmente, lo que ya existe para su visualización EN el software de seguimiento.
Además, la gente de negocios (“Gestores de personas”) no parece entender cómo salir a la calle en una caminata de 10 o 15 minutos cuando NO ESTÁ fluyendo es realmente beneficioso para el desarrollador y el proyecto. Estar de pie en su oficina durante tres horas un viernes hablando sobre el fútbol, aparentemente “crea camaradería” y no se ve como debería ser … una interrupción y una distracción para las personas que ESTÁN DETENDIENDO REALMENTE TRATAR QUE HAGAN ALGUNOS TRABAJOS. Desaparecer durante 15 minutos para despejar la cabeza y obtener algo de aire fresco al aire libre es, en comparación, mal visto.
- ¿Cómo podemos identificar los psicólogos?
- ¿Cuál es la diferencia entre ser denso y no tener sentido común?
- ¿Por qué tanta gente ‘se lamenta’ por la muerte de las celebridades?
- ¿Qué tan mala puede ser la naturaleza humana?
- ¿Por qué algunas personas desean obtener un título en escritura de Quora mientras pueden hacer cosas más productivas?
Demasiados gerentes (tanto los “gerentes de proyecto” como los “gerentes de personas”) tienen una idea equivocada de que “estar encadenado a su escritorio” es la forma en que el trabajo se realiza de manera más eficiente, efectiva, económica y puntual. Eso puede ser cierto para algunos tipos de trabajadores, hacer algunos tipos de trabajo … pero la programación no es uno de ellos.
Gran parte de la lluvia de ideas y la resolución de problemas que implica el diseño e implementación del código necesitan tiempo para ser preparados antes de que estén listos para ser implementados. Investigar y pensar mucho antes de comenzar a crear la arquitectura o de escribir el código es realmente importante. Pero eso no es realmente reconocido y acomodado adecuadamente en la Planificación Agile / Sprint. Y la realidad es que el no darle tiempo en la parte delantera de un proyecto agrega días o incluso semanas de mantenimiento, resolución de errores y se vuelve a escribir en otros sprints posteriores. La industria debe dejar de presionar tanto para el desarrollo “rápido” y volver a considerar la idea de hacer que las cosas sean buenas / estables / seguras en el primer paso.
Hay tanto una ciencia como un arte. Necesitan aprender a reconocer y apreciar ambos lados del proceso.
PD. Al programador también le disgusta en gran medida que la compañía decida externalizar la creación de nuevos productos y códigos a los programadores en un país extranjero, “porque es más barato en una base por hora”. No le pida a sus desarrolladores experimentados que dominan el inglés pasan los próximos cuatro años de su vida tratando de “mantener sin reescribir completamente” un producto escrito en cuatro semanas por un puñado de rumanos. Cuando realmente observa el ciclo de vida completo del producto, no está ahorrando dinero y está privando de derechos a su equipo de desarrollo y clientes en el corto plazo al forzar una solución inadecuada para todos ellos.