¿Qué puedo hacer como ingeniero de software sobre mi trabajo?

Sé que se supone que no debo responder mi propia pregunta, pero estaba pensando en una solución para dejar mi trabajo y encontrar otra cosa. Pero estoy preocupado por esto, ya que sé que en mi último trabajo también me llevó unos meses acostumbrarme a sus sistemas y a su forma de trabajar.

Como no hay mucha documentación, solicité ayuda de un desarrollador senior y él le pidió a otro chico que me ayudara. Su respuesta fue “supongo que sí” e ignoró mis problemas.

Lo único que me dieron fue una computadora portátil rota (tuve que reemplazarme en el departamento de TI) y un enlace a una página wiki que no me dieron derechos hasta ayer. Todo el equipo acaba de actualizarse a Mac y puede usar herramientas de Linux (como estoy acostumbrado). No soy exigente, y estoy perfectamente bien acostumbrándome a trabajar en Windows, ya que una nueva política los obligó a darme una nueva computadora portátil con Windows. Pero se siente tan raro. Me pagan casi 80 mil al año, pero no tienen dinero para cosas básicas para poder trabajar de manera eficiente.

Incluso no usan GIT profesionalmente. Cuando revisé la rama maestra para echar un vistazo a la aplicación, se echó a reír y dijo que no estaba seguro de que la rama maestra contuviera algo que funcionara. Simplemente implementan archivos .jar desde ramas.

Tuve que traer madera a mi lugar de trabajo, ya que mi escritorio no era lo suficientemente alto como para dejar que mis pies encajaran debajo de él. No soy una persona exigente con mi escritorio, pero creo que es un requisito básico tener mis monitores a la altura correcta y sentarme cómodamente.

Hoy también hablé con un administrador del sistema de esta compañía para darme derechos sobre una unidad de red compartida. Según esa persona, los miembros de mi equipo deben saber a qué grupo pertenezco. Pero los miembros de mi equipo no lo sabían. ¿Estoy loco, o deberían “arquitectos” y “desarrolladores senior” saber estas cosas?

Solía ​​vivir en Europa y este es mi primer trabajo estadounidense. Puedo ver que probablemente hay algunas diferencias culturales. Pero realmente no puedo creer que así sea como se debe tratar a un nuevo empleado.

Tu carrera como ingeniero de software depende de tres cosas: cuánto aprendes, cuánto puedes hacer y las relaciones con otros profesionales que haces en el camino.

Excava y aprende lo que puedas. Mira el código que está ahí. Vea cómo encajan las piezas y cómo su tarea debe encajar junto con la arquitectura existente. Luego, haga el mayor esfuerzo posible para que su primera tarea funcione. Mientras tanto, establezca relaciones comerciales con aquellos que percibe que son los motores del departamento. Si el ambiente de trabajo es tan malo como crees, serán los primeros en irse. Si da una impresión, estarán listos para hablar con su nuevo empleador o al menos darle una referencia.

No ha indicado cuánta experiencia tiene, pero si no es extensa, evitaría pasar mucho tiempo diciéndoles a los demás qué mejores prácticas deberían usar. Puede haber buenas razones por las cuales el desarrollo se realiza de cierta manera. Encontrarás esas respuestas a tiempo, pero no podrás cambiarlas hasta que tengas algo de experiencia en su cultura laboral.

Una vez fui amenazado por mi supervisor cuando comencé a documentar el código para crear una solución a un problema recurrente. Dijo que la compañía no tenía un contrato que incluyera documentación y cuando alguien tropieza porque no recuerda cómo lo arreglamos la última vez, a todos los involucrados se les paga.

Encontré un mejor trabajo.

Lea cualquier libro sobre ingeniería de software que regrese a Deming y descubrirá que escribir las cosas es rentable y admite la gestión de la seguridad, la gestión de la configuración y la prestación de servicios.

El mejor enfoque es crear un entorno en el que todos (analistas, gerentes, clientes, suegras) puedan ofrecer comentarios a un equipo cuyo trabajo es leer y utilizar todos los comentarios positivos que vienen, manteniéndolos en un estándar formato. Esto crea una base de conocimiento compartida confiable y consistente que proporciona AYUDA de autoservicio. ¡Buena suerte!

No sé para quién trabajas o qué hacen. Le ofreceré algunos consejos genéricos y le recomendaré que elija y elija las partes que considere importantes.

  1. Cuando todo lo demás falla, simplemente siéntate y visualiza el dinero que cae en tu cuenta bancaria. Probablemente le paguen mucho, y ese dinero no será insignificante si lo ahorra. No es una cura para un solo problema, pero puede suavizar la quemadura.
  2. ¿Es su empresa una empresa de tecnología o una empresa de servicios? La forma de ver esto es: si su empresa abre todos los códigos mañana, ¿sería reemplazado instantáneamente por la competencia o no? Si usted es una empresa orientada al servicio, no una empresa orientada a la tecnología, es probable que las prácticas de desarrollo deficientes salgan disparadas, y podría fomentarse según su modelo de negocio.
  3. Sé el cambio que quieres ver en el mundo. Lo que quiero decir con eso es que si no está satisfecho con la documentación en el código que existe, agregue documentación a su código que cumpla con sus estándares. Esto puede molestar a la gente, pero en general si está cumpliendo con sus plazos, a nadie le importará.
  4. Hable con su gerente, en privado, sobre sus problemas. Si su gerente no es una persona viable para hablar, hable con su gerente de nivel de omisión (el gerente de su gerente), en privado, sobre sus inquietudes. Puede estar sucediendo algo de lo que no eres consciente. No quieres hacer muchas olas, pero estás confundido acerca de lo que está sucediendo y parece un problema, ¿y pueden ayudarte a entender lo que deberías estar haciendo?
  5. Todos tienen una curva de aprendizaje. Probablemente sean unos meses para la mayoría de las personas en la mayoría de las empresas de tecnología aquí. Muchas cosas no tendrán sentido sin mucho contexto. La mayoría de las empresas que carecen de documentación carecen de ella porque no son buenas para compartir contexto.
  6. Si usted es un nuevo empleado y la compañía tiene una baja tasa de deserción, lo más probable es que las cosas hayan cambiado mucho desde que se embarcó a la última persona, especialmente en su equipo. Mi equipo pasó seis meses sin una nueva contratación, y entre esos períodos reorganizamos totalmente el departamento de ingeniería. Cuando contratamos a alguien, el proceso de incorporación simplemente no funcionó.
  7. Haz lo mejor para tu carrera. En este caso, aconsejaría quedarse un año y luego irse. Si no estás en un área con mucha tecnología, considera pasar a una.
  8. Recuerde que los problemas de optimización son realmente difíciles. Para una empresa de tamaño suficiente, es completamente ineficaz participar en procesos que funcionan en una escala más pequeña, porque no escalan bien. Tenga en cuenta que está trabajando para una empresa que no tiene el tamaño adecuado para usted, o al menos comprenda que optimizar el flujo de trabajo es realmente difícil.

Espero que algo de eso ayude. Lo que puedes o no puedes hacer realmente depende de la cultura corporativa. Es difícil saber desde aquí si son incompetentes o malvados.

Parece muy malo, ¿por qué no pasar a otra competencia, como el mercado necesita ingenieros, verdad?

O tal vez le guste construir un gran departamento de ingeniería desde cero, podría verse bien en el currículum, pero podría ser difícil cuando no hay ayuda o no es divertido para usted

More Interesting

¿Cómo sería la ingeniería de software si todos fueran ingenieros 100x?

¿Qué es Root Info Solutions?

¿Se puede considerar que la ingeniería de software es ingeniería real? ¿No debería llamarse 'creación de software' o algo así?

¿Qué hacen los ingenieros de software si necesitan viajar largas distancias en avión? ¿Algo relacionado con el código?

¿Cuáles son los cursos esenciales que debe tomar un ingeniero de software?

He estado programando durante 2 meses y tengo un ingeniero de software altamente experimentado dispuesto a guiarme regularmente. ¿Cómo puedo utilizar mejor su ayuda?

¿Puede un ingeniero de software experimentado hacer PMP?

Cómo evaluar la madurez de un equipo de ingeniería de software

¿Para qué tipos de proyectos 'sobre el horizonte' están los ingenieros de software inventando código, o incluso nuevos lenguajes?

¿Cuáles son las posibilidades (estadísticamente) de ser empleado como ingeniero de software después de graduarse de Hack Reactor?

¿Por qué no todo el trabajo de ingeniería de software se subcontrata a países con bajos salarios? ¿Será en el futuro?

Soy un ingeniero de software de la India y he pasado mis últimos 15 años en el extranjero en varios países. ¿Qué lugar en la India es mejor para que un NRI como yo se establezca al regresar a la India con un trabajo decente?

¿Puedes conseguir un trabajo de programador sin un título universitario (y si tu especialidad es negocios y no informática)? ¿En qué idioma debes aprender tu primer concierto de programación? ¿Y qué títulos de empleo buscarías en los sitios de búsqueda de empleo?

¿Quién es un ingeniero de plataforma? ¿En qué se diferencia del ingeniero de software y devops?

Si los ingenieros de software son más efectivos cuando trabajan solos, ¿cómo los manejan las compañías tecnológicas?