Leyendo de nuevo esta respuesta, recorrí todo el lugar. No tengo idea si responde la pregunta original completamente o no. Parece que la pregunta original está preocupada por quedar atrapado en un trabajo sin salida. Entonces,
TL; DR: en gran medida, usted tiene el control de dónde trabaja, cuánto trabaja, si mantiene sus habilidades actuales o si se especializa en un conjunto de habilidades verticales y se ve obligado a tomar un trabajo de programación deficiente (o trabajar como saludos de Wal-Mart). Esto no es exclusivo de la programación, pero mantenerse actualizado ciertamente requiere un trabajo significativo en este campo (incluso si cava zanjas para ganarse la vida, puede haber una pala mejor). Los malos jefes definitivamente no son exclusivos de la programación, pero siempre puedes buscar un nuevo trabajo.
Respuesta completa:
- Voy a realizar una pasantía en Google este verano y quiero convertirme en un puesto de tiempo completo, pero no podré terminar mi maestría el próximo año. ¿Cuál es la mejor estrategia para obtener un puesto a tiempo completo?
- ¿Cuál es la vida del oficial de la Armada de la India si está casado con otro oficial de la Armada de la India, como un oficial masculino con una oficial médica femenina?
- ¿Cómo puede PHD ayudar a una persona que tiene 2 años de experiencia en la enseñanza de las matemáticas de ingeniería que es buena en la enseñanza pero nunca quiso seguir una carrera docente?
- ¿Cuánta óptica necesito saber para ser investigador (gráficos por computadora)?
- ¿Cómo es el curso BTech en informática e ingeniería?
Los programadores no hacen solo una cosa.
- Parte de mi día está ocupado respondiendo correos electrónicos y mensajes instantáneos.
- Parte se toma escribiendo documentación de algún tipo u otro.
- Parte de esto es investigar tecnologías nuevas (o cambiantes) para estar informados sobre dónde podríamos tener que ir en el futuro.
- Parte de esto es escribir un nuevo código.
- Parte de esto es diseñar interfaces de usuario.
- Parte de esto es diseñar estructuras de datos.
- Parte de esto es diseñar esquemas de bases de datos.
- Parte de esto es depurar el nuevo código que acabo de escribir y el código escrito por un tipo que ya ni siquiera trabaja aquí.
- Parte de esto lo paso discutiendo las partes anteriores con mis compañeros de trabajo.
- Parte de esto es aprender algo nuevo que no tiene nada que ver con mi carga de trabajo actual (nuevos idiomas, nuevas técnicas, nuevas bibliotecas, etc.).
OK, en realidad no hago todas estas cosas todos los días. Pero podría ser cuál es la parte genial de este trabajo y la parte desagradable de este trabajo. Los programadores novatos en un gran equipo probablemente puedan salirse con la suya haciendo solo dos o tres de los elementos de esta tabla y aún así mantener su trabajo. A medida que se vuelvan más hábiles, comenzarán a agregar elementos a esta lista (rara vez puedes quitarlos). Desafortunadamente, a menudo los programadores novatos omiten elementos en esta lista para ahorrar tiempo (como documentación y aprender cosas nuevas), pero solo están robando a Peter para pagarle a Paul.
La programación es difícil. Simplemente es. No hay forma de seguir siendo empleado a largo plazo en esta industria si no aprende cosas nuevas todo el tiempo. No tiene que ser cosas grandes como un marco completamente nuevo o un nuevo lenguaje, puede ser cosas pequeñas como lo que se agregó entre la versión del marco que estamos usando actualmente y la que acaban de lanzar. Puede estar aprendiendo una nueva forma de resolver un viejo problema.
He trabajado en compañías muy grandes de Fortune 200, y he trabajado en pequeñas empresas de nueva creación, y compañías firmemente en el medio. He tenido grandes jefes y jefes de mierda en todos los niveles. No tengo una forma real de saber si mi experiencia es normal o no, pero de las conversaciones con otros creo que sí. En las grandes compañías es fácil permitirse convertirse en un engranaje en la gran máquina (y puede ser muy tentador ya que a menudo se le pagará lo mismo que el engranaje de estrella de rock mientras hace mucho menos trabajo), y si si permites que eso suceda, puedes ser reemplazado tan fácilmente como ese engranaje. En general, cuanto más pequeña es la empresa, más probable es que tenga que usar más sombreros, pero también es más fácil detectar a los mocasines y mentirosos, ya que no hay otros engranajes para esconderse (es decir, el estrés). Por otro lado, en una empresa grande a menudo hay muchos trabajos laterales a los que puede mudarse, y es raro que un gerente o compañero de trabajo sienta que los está despreciando al pasar lateralmente a un trabajo más interesante o desafiante (son a menudo con la esperanza de hacer eso por sí mismos).
En cuanto a los malos jefes y compañeros de trabajo, rara vez puedes elegir a todas las personas con las que estás trabajando, a menos que estés construyendo tu propia empresa y seas súper rico (e incluso entonces puedes encontrar que tus opciones no están tan bajo control como te gustaría ) El mundo está lleno de imbéciles, pero también hay mucha gente genial allí (a menudo parece que los imbéciles están ganando). Desafortunadamente, a menudo no hay una forma segura de identificarlos sin pasar mucho tiempo con ellos.
La programación es frustración. Línea de fondo. Si no puede manejar la frustración, está en el negocio equivocado. Las computadoras están construidas a partir de capas, capas sobre capas (son tortugas hasta el fondo), y puede haber errores en cualquier capa. Los errores son la razón por la que la programación es lucrativa. Resolver acertijos es la razón por la que la programación es divertida.
Nunca tomaría un trabajo que se anunciara como diez horas diarias. Eso no quiere decir que no haya trabajado, en ráfagas cortas, diez horas diarias, pero si no tienes una vida que acompañe ese trabajo, ¿qué estás haciendo? El agotamiento es algo real y la única persona que puede evitar el agotamiento eres tú. Si toma un trabajo que supuestamente debía ser de ocho horas al día, cinco días a la semana y resulta ser 10 horas al día, seis días a la semana, busque un nuevo trabajo. Si permanece en el trabajo, no tiene a nadie a quien culpar sino a usted mismo (ya sea por dejar que el empleador se aproveche de usted o por no planificar el futuro manteniendo sus habilidades actualizadas).