¿Qué factores estresantes encuentran los programadores en el trabajo y cómo los manejas? [cerrado]

74

Aprender a manejar el estrés es vital para mantenerse saludable mientras trabaja en cualquier trabajo. Una subtarea necesaria es aprender a reconocer y limitar las fuentes de estrés.

Pero, en medio de la rutina diaria, puede ser difícil reconocer las fuentes de estrés (especialmente para una persona intensa y enfocada, como un programador).

¿Qué tipos de estresores deben tener en cuenta los programadores y cómo se pueden manejar?

usuario8
fuente
2
Pregunta relacionada con la meta discusión: ¿Debería dejarse abierta la
Los codificadores son personas optimistas que se centran en las posibilidades, no en los momentos estresantes.
Independiente
seguro que hay una gran cantidad de wiki de la comunidad en este sitio. abucheo. También esta pregunta es muy constructiva.
Garet Claborn

Respuestas:

100

Estas son las cosas que encuentro que me causan más estrés a mí y a los desarrolladores que me rodean:

  1. Ambigüedad : objetivos, requisitos u otras expectativas declarados de manera ineficaz. Muchas empresas tienen empleados que tienen una actitud de"I don't know what I want, but I'll know it when I see it. Oh, and by the way I need it tomorrow."
  2. Plazos inadecuados : la mayoría de los plazos los establece la empresa y no las capacidades realistas de los desarrolladores del personal. Además de esto, las expectativas para el requisito se incrementan pero el presupuesto / recursos no.
  3. Malos supuestos / expectativas : los programadores tienden a tener una alta opinión de sus capacidades (no un rasgo no ganado), y por eso esperan que otras personas puedan igualar sus capacidades, comprensión y expectativas. A menudo se supondrá que algo es "common knowledge"o similar, y esto puede ser catastrófico en la categoría de estrés. Ahora, no solo el experto en negocios no cumplió con las expectativas del programador, sino que es un completo incompetente para arrancar. Por el contrario, si el programador no cumple con las expectativas del negocio, el programador queda frustrado porque no recibió la información que necesitaba para continuar.
  4. Falta de respeto : muchas personas tienden a creer que el hecho de que alguien sea débil en su disciplina significa que es débil en la suya. Hay una razón por la que todos tenemos diferentes trabajos / capacidades / expectativas, y es importante respetar que la otra persona es muy capaz en las tareas que se les pide. El hecho de que alguien no tenga tus capacidades no significa que sea incompetente o incapaz.
  5. Falta de autocontrol : esto se puede manifestar en muchas cosas. Quizás eres un holic que se niega a tomar los descansos adecuados. Esto conduce a la acumulación de estrés y es malo. Quizás eres un bebedor de Jolt Cola que bebe más cafeína de la que debería cuando se acumula el estrés. Esto es malo para su salud y empeora su respuesta al estrés. Debe conocer sus límites, saber qué desencadena sus respuestas específicas al estrés y, lo más importante, saber cómo aliviar esa respuesta al estrés. Deshacerse de sus compañeros de trabajo o colegas no es apropiado y solo servirá para aumentar el estrés.
  6. Falta de habilidad de comunicación : a menudo no hablamos el mismo idioma, y ​​no estoy hablando de inglés, alemán o indio. Estamos usando las mismas palabras, pero no estamos diciendo las mismas cosas. Las personas deben ser específicas y abiertas sobre cosas que no entienden. Incluso si crees que entiendes, no está de más aclarar. Recuerde que una métrica empresarial puede significar algo diferente para los diferentes departamentos de una organización.
  7. Sangrado de límites : mantenga el trabajo en el trabajo y el hogar en casa. El hecho de que su hijo de 7 años deje sus zapatos en el medio del piso y no esté limpiando después de su desayuno no significa que deba evitar que Tiffany contabilice uno nuevo porque no le ha dado la hoja de cálculo de los requisitos de facturación. . La misma señal, solo porque Tiffany está aflojando con la hoja de cálculo no significa que su esposa merezca ser tratada mal en el viaje a casa. (por cierto, la pobre Tiffany tampoco merece ese tratamiento)
Joel Etherton
fuente
17

Creo que el mayor estresante para cualquier programador es la falta de confianza .

Sí, muchas reuniones (ciertamente no reuniones en sí) son innecesarias, pero hay muchas cosas que yo, como programador, puedo hacer al respecto. Si regularmente tengo que asistir a reuniones que, en mi opinión, no son necesarias, entonces es mi responsabilidad levantarme y decir "oye, no necesito estar en esa reunión, puedo pasar mi tiempo de manera más productiva".

Lo mismo ocurre con las interrupciones: sí, eso es una molestia. Lo he visto en bastantes compañías. Sin embargo, muchas veces, una vez más, hay varias cosas que se pueden hacer. Un programador no necesita verificar su cuenta de correo cada cinco minutos y responder a cada correo instantáneamente. Del mismo modo, si no quiero que me molesten durante un cierto período de tiempo, apago mi mensajero instantáneo y reenvío mi teléfono.

Estos son solo dos ejemplos: hay muchos más. Sí, a veces las cosas se ponen difíciles. Pero la mayoría de las veces, los problemas de los que estamos hablando podrían solucionarse fácilmente con un poco más de confianza. Dígale a la gente al otro lado del circuito de comunicaciones "sí, lo escuché y recibí su mensaje, pero lo veré más tarde".

¡Los mayores problemas son aquellos que estamos creando nosotros mismos! ;-)

perdian
fuente
2
+1 Buena respuesta. Sin embargo, probablemente podría decirlo en menos palabras. :-)
Matthew Rodatus
+1 ya que no solo es un factor estresante, sino que también puede afectar la productividad.
Covar
Entonces, ¿es esto una falta de confianza en general, o una falta de confianza para decir -no-?
Mitch
1
No es solo decir "no", eso sería demasiado fácil. Es reconocer cuándo decir "esta no es la forma en que se supone que debe ser" y ofrecer una alternativa. Decir que no es solo una parte de eso.
perdian
12

Errores de componentes de terceros

Puede ser extremadamente estresante cuando obtienes una actualización de algún componente de terceros que rompe algo. No tiene el código fuente para depurar o modificar, pero si su sistema depende de ello, puede ser bastante aterrador. Entrar una mañana para descubrir que su servidor de control de código fuente está funcionando inesperadamente y puede perder 2 semanas de registros puede proporcionarle un poco de estrés. Esta es básicamente la idea de una capa de abstracción con fugas, cuando no estás preparado para ello. Eche un vistazo a los tickets de errores abiertos en cualquier tecnología de pila de Microsoft y los comentarios ciertamente darán evidencia de esa variedad de estrés.

Morgan Herlocker
fuente
2
+1 Me encontré con el mismo problema ... estaba trabajando con una compañía externa cuyo servicio no funcionaba bien. Su código apenas funcionaba, a menudo fallaba, era lento y no producía resultados de calidad. Afortunadamente, la compañía con la que trabajo es realmente comprensiva y sabía que el problema era con la compañía (es decir, realmente escuchaba a sus desarrolladores), no a mí. Pero este no es el caso con muchas compañías, y los desarrolladores internos son los que tienen la culpa.
Wipqozn
10

Expectativas irrealistas. Veo clientes que esperan que puedan pasar 6 semanas de un período de diseño de 7 semanas para obtener el archivo que necesita para comenzar y se preguntan por qué no se hace al día siguiente. He visto personas que esperan poder entregarle una nueva tarea el viernes a las 4:30 y esperan que pase todo el fin de semana para presentarla el lunes al CEO. He visto personas que te quitan una tarea de alta prioridad para hacer una segunda tarea de alta prioridad y luego se enfurecen porque la primera no se hace a tiempo. Todas estas cosas son estresantes, incluso cuando ha hecho todo lo posible para explicar claramente desde el principio por qué sus expectativas no son realistas.

Falta de habilidad para leer mentes. (Voy a hacer una fortuna si alguna vez invento ese módulo de lectura de la mente.) Es estresante descubrir en las pruebas de usuario que lo que te dijeron que querían no era lo que realmente querían.

HLGEM
fuente
8

Muchas de estas respuestas proporcionadas son geniales, especialmente las tensiones de Joel y las relacionadas con la pérdida de dinero y la gestión agresiva que no entienden lo que están pidiendo.

Algunas de las principales tensiones que encuentro provienen de

  • Inheriting Spaghetti Code

    • He tenido algunas experiencias locas donde la rueda ciertamente necesitaba reinventarse. Imagine que lo contratan después de que otro desarrollador haya construido una base de código por sí solo durante un año más o menos solo para descubrir que no tenían idea de lo que estaban haciendo, fallar miserablemente y ser despedidos. A su llegada, le dicen que su trabajo es "hacer que esto funcione". Por supuesto, hay aproximadamente una línea de notas por cada 4000 líneas de código. Falta extrema de modularidad y poca o ninguna dirección. Además de todo, todo va mucho más allá de tener nombres `` extravagantes '' (que son comprensibles y, a veces, excelentes en mi humilde opinión) en simplemente 'wth-ness'
    • Se supone que tienes dos puntos secundarios: P (el código de espagueti es malo, ¿vale?)
  • Hay un error Usted SABE para un hecho absoluto que tiene que ser el tipo que implica uno o dos cambios de caracteres diminutos. La fecha límite es mañana, tienes 3 características para terminar. Este error tarda 5 horas en encontrarse y no puede ignorarlo. ; (Ay lol.

  • Tratando de explicar lo anterior

  • Estar atrapado en un escritorio debido a limitaciones comerciales, mientras que si pudieras caminar una hora en un parque y regresar, tendrías un código dorado esperando saltar de tus dedos. Lo peor es que tengo que ver algunos árboles y cielo si quieres que haga un buen código y avance rápidamente. Al menos la mitad de la programación es un arte después de todo. Encuentra inspiración.

  • No estar atrapado en un escritorio cuando tienes que irte a casa debido a limitaciones comerciales y no puedes simplemente trabajar 20 de tus horas hoy mientras estás en la zona. A veces hago clic con lo que estoy haciendo y si no puedo pasar toda la noche en ese momento , simplemente no es lo mismo al día siguiente. Recordaré la mayor parte, pero tardaré tres veces más en conseguirlo. abajo y no ser tan bueno de todos modos.

  • A veces, los consumibles de café u otros lo empeoran y mi cerebro simplemente no escucha mi mente como yo quiero. =)

  • 15 minutos de descanso. Solo lo suficiente para desanimarme, no lo suficiente como para refrescar el cerebro. Boooooo

  • Hubo momentos en que elegí una nueva biblioteca o ... peor ... un nuevo marco. Esta ha sido una de las tareas más sorprendentemente estresantes que he encontrado. Cuando va bien o incluso está bien, es encantador. De vez en cuando cuando va mal ... oh chico. Puedes sentarte allí haciendo pruebas interminables de diferentes estilos y llenándote la cabeza de tantas interfaces que partes de mi mente simplemente comienzan a apagarse y dicen "no, no ... no haré eso. Demasiado mal. Vete ". Solo para ser forzado a vencerlos en sumisión. Le suspiro.

  • El mal tipo de errores del enlazador. No estoy seguro de cómo describirlos.

  • Importar grandes cantidades de datos desde un molesto formato de archivo a sus objetos. Esto a veces es bastante divertido y a menudo te agota muy rápido cuando no lo es. Recuerdo haber trabajado con este antiguo formato de Excel que tenía un horror de personaje de escape muy, muy complicado e indocumentado. Esto junto con el hecho de que la información en la columna real que estábamos extrayendo estaba llena de personajes funky, ... todavía me persigue. Seguí pensando "¡Ajá, funciona ahora! ...! ............ oh ... no importa ..."

Garet Claborn
fuente
6

Creo que gran parte del estrés es el resultado de las siguientes premisas:

  1. Los buenos programadores son a menudo las personas que pueden realizar alguna tarea que no sea de programación (soporte de producción / solución de problemas, documentación, responder preguntas de la empresa u otros miembros del equipo, ofrecer opiniones técnicas sobre direcciones futuras) de la manera más eficiente.
  2. La programación es una actividad que se realiza mejor en largos períodos de tiempo ininterrumpido.
  3. Comprensión de la Premisa # 1 >> Comprensión de la Premisa # 2.

Como resultado, a los programadores a menudo se les pide que hagan varias cosas diferentes, lo que erosiona su productividad y calidad de su trabajo en el oficio elegido. El gerente que hace este llamado ve esto como una "victoria", porque el problema agudo se ha resuelto de manera rápida y eficiente, y el costo no es evidente de inmediato.

Hay algunas estrategias para administrarlo, con varias ventajas y desventajas.

  1. Gestión del tiempo: dedica parte de tu día a la programación y otra parte de tu día a otro trabajo, y sé disciplinado al respecto. Una desventaja de esto es que terminé dejando que el trabajo que no era de programación tomara todo mi tiempo 8-5, e hice mi trabajo de programación por la noche, lo cual es malo para el equilibrio trabajo / vida.
  2. Educación: aquí es donde personas como Joel están haciendo el trabajo de Yeoman, haciendo correr la voz de que el costo de una interrupción de 15 minutos puede ser mucho mayor que 15 minutos. (por ejemplo, http://www.joelonsoftware.com/articles/fog0000000022.html )
  3. Desarrollo de equipo, documentación: asegúrese de que no sea la única fuente de conocimiento para las piezas críticas de la tecnología de su empresa.
  4. Personalidad desagradable: solo estoy medio bromeando. Si desarrolla la reputación de responder con un gruñido a las interrupciones, las personas tenderán a encontrar otras formas de hacer algo. Sin embargo, es mejor que seas realmente bueno para lograr esto.
JohnMcG
fuente
6

El principal factor estresante que encuentro es lo que me gusta llamar " Síndrome de Mort". Básicamente, es la actitud que algunos desarrolladores tienen de que la mediocridad está bien, y que no hay necesidad de mejorar o hacer las cosas de manera diferente. Como alguien que pasa tiempo fuera del trabajo leyendo blogs y libros, escuchando podcasts y viendo videos de mejores formas de hacer cosas profesionalmente, me parece que esto me estresa mucho porque el 95% del tiempo soy la única persona en el equipo, si no en toda la empresa, que entiende por qué, por ejemplo, escribir pruebas unitarias es bueno o por qué es es malo tener miles de líneas de código en una sola clase (o clases que hacen media docena de cosas diferentes), y tratar de educar a mis compañeros de trabajo da como resultado miradas en blanco, excusas de "No tenemos tiempo para arreglarlo "," Nunca lo usaremos porque nunca lo hemos usado antes "o" Eso 'no es cómo hacemos las cosas ", o en el peor de los casos, me muestran la puerta y me despiden por tratar de cambiar las cosas para mejor.

Wayne Molina
fuente
Después de ser despedido de un trabajo en julio del '12 por tratar de cambiar las cosas para mejor, puedo decir con seguridad que esta es la ruina de mi existencia.
Wayne Molina
4

Sería difícil obtener una respuesta general a esta pregunta. Las personas prosperan bajo diferentes condiciones.

  1. demasiado trabajo en muy poco tiempo
  2. muy pocos comentarios de los usuarios
  3. culpar a la cultura
  4. Falta de ambiente de confianza.

Tiendo a encontrar que el trabajo es la menor causa de estrés para la mayoría de las personas, no para los programadores en particular. Son los elementos extraños, como la cultura de la empresa, la atmósfera de la unidad, los problemas de comunicación que causan más estrés para la mayoría de las personas. No es que no puedan manejar el trabajo; es que no pueden manejar el ambiente en la cocina si quieres.

Una discusión más útil podría centrarse más en las soluciones a dichos problemas.

temptar
fuente
4

"Otros deberes asignados".

He tenido que contestar teléfonos. He tenido que trabajar en el almacén. He tenido que hacer un inventario. He estado en reuniones de empresa todo el día. Incluso he tenido que salir y hacer un mantenimiento limitado del césped.

No sé si alguna vez tomaré otro trabajo que tenga eso como parte de la descripción.

John Kraft
fuente
Pasé la mitad de ayer desenredando un lío de cables que inicialmente parecía que el gato de Cheshire había vomitado una bola gigante de arcoíris en el suelo. No exactamente en la descripción de mi trabajo ...
Beekguk
Esto es ciertamente cierto, especialmente en muchos entornos de oficinas pequeñas. Algunas personas encuentran divertida la variedad, pero la mayoría no.
PeterAllenWebb
Odio el hecho de que la mayoría de las compañías incluyen esa línea como un término general que significa "Cualquier cosa que el jefe te diga que hagas". No, imbécil, me estás pagando para hacer JOB X porque soy un profesional en JOB X. Eso no significa que haré nada de lo que digas.
Wayne Molina
2

Administración deficiente. No puedo decir cuántas historias he experimentado o visto de gerentes (especialmente gerentes senior y personas de la alta empresa) que toman decisiones escandalosas sin consultar a nadie que realmente sepa algo sobre el área que han decidido, o no consultan notas de reuniones anteriores antes de avanzar en la dirección opuesta como se decidió.

Tom A
fuente