En CS, ¿es un signo de debilidad / inexperiencia trabajar muchas horas?

Me puedo relacionar con lo que Michael O. Church estaba discutiendo (la parte sobre los programadores de 22 años, su percepción, ambiciones, objetivos y su flaming).

Y por experiencia, les contaré la siguiente historia corta:

Trabajando horas extras en una compañía donde:

1. Su superior directo proviene de una formación empresarial y nunca tuvo experiencia práctica en la práctica.

2. Tu superior directo siempre teme por su posición.

3. Su superior directo no tiene idea de los estándares de desarrollo adecuados y no tiene un camino y una visión claros para su división de desarrollo.

4. Su superior directo solo tiene una cosa en mente, que es aumentar el rendimiento al comprometer la calidad del código.

5. Su superior directo le pide copiar literalmente \ pegar ciegamente de otro proyecto porque ahorra tiempo.

6. Su superior directo no realiza análisis de costos del proyecto, planificación adecuada del proyecto, negociaciones agresivas con los clientes y actúa de manera reactiva ante cualquier correo electrónico que reciba en su bandeja de entrada.

7. El más joven del equipo es el más calificado técnicamente (hay excepciones) simplemente porque ha hecho lo mismo 100 veces.

8. Tu superior directo te mantiene a la sombra sobre la totalidad del proyecto y cuando la mierda golpea al ventilador, de repente estás involucrado.

9. Su superior directo es un hombre SÍ.

10. Todo lo que aprendió sobre el desarrollo y la ingeniería adecuada provino de Google.

11. Pasas más horas limpiando el código de mierda de los demás.

12. Pasas más horas pirateando el código sin un diseño adecuado.

13. Pasas más horas averiguando qué estaba pensando ese otro tipo cuando implementó este horrible código no comentado \ indocumentado.

14. Trabajas horas extra porque “este proyecto” como muchos otros antes es una excepción y nunca volverá a suceder.

15. No está involucrado en un proceso de diseño y arquitectura adecuado y en el que usted es el único responsable de la toma de decisiones durante el proceso de desarrollo.

16. Eres “libre” de hacer lo que creas necesario para llevar a cabo el proyecto de la mejor manera posible.

17. No tienes una visibilidad clara de tu carrera profesional.

18. Obtiene un título elegante inmerecido que no cumple con sus requisitos de trabajo diarios.

19. Puede posponer las cosas y perder el tiempo sin la responsabilidad adecuada.

Y la lista continúa …

Es una garantía de que hoy no seas un mal desarrollador, ¡ pero definitivamente estás en el camino correcto para convertirte en uno!

Sin embargo, la realidad no es tan oscura y hay luz al final del túnel.

Hay excepciones, no todas las compañías están diseñadas para operar de manera reactiva, y hay muchas pequeñas y medianas empresas que tienen una estructura sólida y un modelo de operación eficiente ya en funcionamiento.

Modelo de operación eficiente, no burocrático. Esta es su bandera para saber si debe invertir su tiempo / talento en un lugar determinado o no.

Si un lugar es disfuncional por naturaleza, y esta disfuncionalidad no se debe a un problema temporal reciente, las palabras de su Jefe y las promesas de un mejor futuro cercano pueden irse por el desagüe, no tienen sentido ni sentido.

El cambio rara vez ocurre en cuestión de semanas o meses y probablemente no ocurra durante su estadía en la empresa.

Para resumir todo lo anterior:

Desarrollador malo (brillante) = Estructura mala + Mala operación + Negocio malo \ Equilibrio de ingeniería + Amplio énfasis en ingresos + Mala visión + Procrastinador.

Con la suposición de que el desarrollador: tiene la capacidad técnica y mental de adquirir nuevos conocimientos y habilidades, tiene una sólida base teórica.

Esta es una discusión muy larga y vaga que requiere un estudio y una respuesta más exhaustivos, pero lo anterior debe ser un buen consejo de orientación.

Depende de lo que quiere decir con “trabajar largas horas”.

Hay un montón de ansiosos de 22 años de edad, que creen en la publicidad sobre sus empresas y sus puestos en ellos y se sacrificarán mucho por el bien de sus trabajos. Eventualmente, esto obtiene lo mejor de ellos. Ellos ponen 70 horas de trabajo en el trabajo que les da su jefe, son despedidos de todos modos por razones políticas, y se dan cuenta de que esto fue un montón de sacrificios sin sentido. Podría tomar dos o tres fracasos flamígeros antes de que dejen de hacer excepciones para las compañías y gerentes “geniales” que “parecen ser tipos realmente agradables”.

La mayoría de los jefes siempre dirán que todo es un riesgo “urgente” y existencial para la compañía o el equipo, porque es libre para ellos usar esa palabra mágica que hace que las personas trabajen más arduamente. Ya sabes cómo los programadores no calificados aprenden acerca de “en línea” y comienzan a usarlo agresivamente porque “hace que el código sea más rápido”. (Esto no siempre es cierto, no debe asumir que puede ser más listo que el compilador porque a menudo está equivocado). Los gerentes usan “urgente” de la misma manera. Debes desarrollar la habilidad de saber cuándo están realmente en lo cierto. Hay momentos en los que hay que esforzarse y trabajar 70 horas a la semana, ya sea porque existe una amenaza existencial para la empresa, o porque tiene un límite de tiempo y una importante ventaja en su carrera, pero son raros. Por lo general, el beneficio de la carrera para ese tipo de esfuerzo es mínimo. De hecho, puede perjudicarte, porque la calidad de tu trabajo disminuirá y porque serás socialmente desagradable. Encajar socialmente es extremadamente importante, competir en horas no lo es. En la medida en que las personas son despedidas por un bajo esfuerzo, no es la falta de esfuerzo lo que las atrapa. Más bien, es el hecho de que su esfuerzo es tan bajo que a nadie le gusta. Usted quiere permanecer fuera de la gama de piker donde el grupo lo señala como un flojo, pero mientras esté por encima de ese umbral, no obtendrá mucho aumentando el esfuerzo a menos que tenga una propiedad real sobre lo que está produciendo. Recuerda que no tienes que escapar del oso; solo tienes que escapar del otro tipo.

Solo se necesita mucha experiencia para saber cuándo sus horas extra pueden marcar la diferencia y cuándo se le ha vendido una fuente de exageración y lo que realmente tiene es solo un trabajo, no un camino hacia el inmenso éxito de su carrera. Recuerde que, en muchas compañías, todos piensan que son los primeros en línea para la gran promoción, pero muchos no lo son. Si su próxima promoción es probable que sea externa, es mejor que haga un esfuerzo promedio para que (a) tenga tiempo para invertir en metas profesionales y de educación a largo plazo que lo ayuden a conseguir ese próximo trabajo, (b) puede mantener una presentación social positiva, lo que le ayuda a establecer contactos donde se encuentra, y (c) se desempeña bien en su próxima búsqueda de trabajo, sin necesidad de un período de descanso.