¿Cómo evitan los ingenieros experimentados en las startups el estancamiento debido al exceso de problemas operativos?

Vuélvase más efectivo quitándose de la ruta crítica. Existe una idea errónea común entre las culturas de grandes empresas y nuevas empresas de que ser el único ingeniero responsable de un proyecto es importante para aumentar su valor en la empresa. Después de todo, si menos personas saben lo que usted sabe, entonces la escasez de su conocimiento aumenta su valor para la empresa, ¿verdad? El problema es que estar en el camino crítico reduce su flexibilidad en la elección de lo que puede hacer.

Asumiendo que no está demasiado preocupado por la seguridad laboral (si lo fuera, probablemente no estaría trabajando para una startup), crear una cultura donde otros en su equipo puedan sustituirlo en el manejo de problemas operativos es clave para permitirle más centrarse efectivamente en otras actividades de alto apalancamiento. Lograr esto puede requerir una gran inversión de tiempo en tutoría y capacitación de ingenieros junior, pero es una inversión saludable para su carrera porque le da más libertad para elegir lo que quiere hacer.

Cuando trabajaba en Ooyala, solía liderar la tecnología del equipo de análisis. Debido a que las analíticas tenían varias piezas móviles, durante mucho tiempo, fui el único ingeniero responsable del procesador de registros que ingirió y procesó todos los archivos de registro de analíticas para producir informes para los clientes. Cualquier problema no trivial que nuestro SRE no podía resolver fácilmente se convirtió en una alerta de buscapersonas para mí. La peor semana fue buscada dos veces en medio de unas vacaciones en Hawai.

Desde entonces, la organización de ingeniería en Ooyala ha adoptado una metodología ágil que enfatiza fuertemente la propiedad compartida del código, las responsabilidades y los problemas operativos. Cualquier persona en un equipo determinado puede ser llamado y ser responsable de los problemas que surjan: los ingenieros senior tienen más tiempo libre para trabajar en otros proyectos y los ingenieros junior tienen la oportunidad de aumentar la infraestructura y la base del código.

En realidad, también le interesa a la compañía asegurarse de que el conocimiento crítico no esté compartimentado para usted, por lo que no debería ser demasiado difícil decirle esto a su gerente, por estas razones:

  • Si decide irse o enfermarse, estarán más capacitados para adaptarse a su ausencia. Asegúrese de que su factor de bus [1] – el número de ingenieros que pueden ser golpeados por un bus antes de que un proyecto falle por completo – es alto.
  • Tener más de un ingeniero capaz de manejar problemas operativos hace que la distribución de personal para proyectos sea más flexible.
  • Si eres más feliz y aprendes más, es probable que seas más productivo, lo que es mejor para la producción general de la empresa.

El otro aspecto complementario de este problema, que es más fácil de hacer con más ingenieros y más mentes, es automatizar los procesos tanto como sea posible . Haga un seguimiento de la frecuencia con la que se activan las alertas de buscapersonas y con qué frecuencia los servicios dejan de funcionar. Recorte agresivamente todas las alertas de buscapersonas que son falsas alarmas. Escriba scripts que puedan reiniciar servicios fallidos o recuperarse automáticamente.

Ambas inversiones para capacitar a otros miembros del equipo y escribir scripts de automatización pueden requerir más trabajo inicialmente, pero a la larga, seguramente valdrán la pena.


¿Busca más formas de sobresalir como ingeniero de software? Obtenga un capítulo de muestra gratuito de mi libro, The Effective Engineer . Es el único libro diseñado específicamente para los ingenieros de software de hoy en día, basado en entrevistas extensas con líderes de ingeniería en las principales empresas de tecnología, y repleto de cientos de hábitos y técnicas accionables para acelerar su carrera.

[1] http://en.wikipedia.org/wiki/Bus…

Cuando está con una empresa desde el principio y ha intervenido en cada pieza de infraestructura de ingeniería y TI, será el camino de menor resistencia para resolver problemas operativos. Cuando algo sale mal, comienza a costarle dinero a su empresa, por lo que si puede resolver estos problemas lo más rápido posible, habrá mucha presión para que lo haga.

Desafortunadamente, no hay una manera fácil de salir de este rol sin alguna intervención de la gerencia. Lo que deben hacer es reconocer que su tiempo se gasta mejor en ingeniería y establecer una organización de soporte para diagnosticar y solucionar tantos problemas como sea posible antes de que lleguen a usted. En una empresa como Facebook, esta es la norma ya que el CEO es un ingeniero y él también preferiría centrarse en la ingeniería que en el soporte / operaciones. Lo mismo vale para Google. Si la gerencia no puede empatizar, entonces tiene que convencerlo.

Quiero decir, tampoco quieres que tu empresa se arruine si te vas mañana. Piense en lo que tendría que hacer para evitar que eso suceda y probablemente tendrá una buena manera de detener este problema de operaciones.

Esto sucedió hace algunos años y encontré una solución por casualidad:

Planifique un permiso de ausencia de dos meses, dentro de seis meses:

Te vas a ir por dos meses. Como en fuera de la red, en el desierto, de verdad desaparecido.

Esto fuerza el problema: la empresa nunca quiso hacer que su día a día dependiera de una sola persona, simplemente sucedió. Siempre intentaron arreglarlo, nunca fue urgente. Ahora es. Hay seis meses para hacer la transferencia de conocimiento, etc.

Cuando llegue el gran día, confiese que realmente va a hacer un nuevo desarrollo en su viaje, sin conexión a Internet. Quieres juntar algunas cosas nuevas para mostrar. Obtenga su opinión sobre las cosas que quieren ver.

Cuando regrese, con suerte, habrá surgido un nuevo status quo, donde la compañía siente que no necesita que pelee, y una vez más está entusiasmado con el nuevo trabajo que está llevando a cabo.

More Interesting

¿Cuál es la mejor herramienta de prueba de software?

¿Hay algún sitio web donde pueda obtener entrevistas de software reales con empresas tecnológicas mediante la resolución de problemas de codificación?

¿Por qué tantos campos de entrenamiento enfatizan la programación de pares?

¿Cómo funciona el escalado automático en términos de servicios en la nube como AWS y GCP?

En cuanto a las computadoras, ¿cuánto código hay en el software?

¿Es válida la compresión si los datos después de la compresión no son útiles? Podemos recuperar los datos originales por descompresión.

¿Qué profesores o estudiantes están haciendo las cosas más emocionantes en aprendizaje automático e ingeniería de software en CMU?

¿Cuál es el CGPA mínimo requerido para una maestría en ingeniería de software en Canadá?

¿Cuál es la tarifa por hora para un ingeniero de software?

¿Cuáles son las ganancias típicas de productividad al refactorizar un producto web a medida que madura?

¿Cuáles son las certificaciones que debo hacer para mi carrera en banca y finanzas como ingeniero de pruebas de software?

¿Está TDD en el centro de todas las metodologías de desarrollo ágil?

¿Explicar las diferencias entre los estados en el diagrama de gráfico de estado y las actividades en el diagrama de actividad? Muestra las diferencias entre dos usando un diagrama de ejemplo

¿Cuál es el futuro de las pruebas de selinio como una opción de carrera? ¿Es mejor unirse como probador?

¿Qué debe hacer si ve que su colega está cometiendo un código realmente malo para el proyecto y a su gerente no le importa?