¿Qué hacen los ingenieros con roles gerenciales en las principales compañías de software?

Esta no es una pregunta de respuesta corta, pero trataré de responder lo más brevemente posible. La administración se trata principalmente de planificar, organizar, monitorear / controlar, medir y garantizar que se entreguen los productos. Sí, existe el aspecto de recursos humanos (contratación / despido), además de asignar tareas, documentar roles y responsabilidades, evaluar el desempeño, colaborar con otros elementos de la organización (contabilidad, recursos humanos, marketing, contratos, operaciones, etc.).

No es una tarea simple de solo asignar tareas y verificar resultados. Por mi parte, delego la mayor parte del día a día a los líderes de mi equipo. Después de eso, me aseguro de que todo esté sucediendo, normalmente en una reunión de estado del proyecto de equipo.

En algunas organizaciones, los gerentes de profesionales de ingeniería de software escriben código o verifican el código de sus equipos. En algunas empresas, el gerente, que a menudo es un ingeniero de software o sistemas, también realizará algunas funciones de arquitectura técnica, pruebas e incluso acciones correctivas. En empresas más grandes, esto no es normal.

Otra tarea importante para los gerentes que son ingenieros es el desarrollo de la estrategia del producto. Por lo general, estos gerentes son mayores, tienen muchos años de experiencia en el desarrollo de productos y están muy familiarizados con las tendencias de la industria, los requisitos del cliente y el historial del producto. Estas son personas con visión que pueden crear metas y objetivos a largo plazo para la empresa.

Y nuevamente, como se sugiere en la pregunta, es el rol del gerente asegurarse de que los recursos de la compañía se usen sabiamente. Desde una perspectiva de ingeniería, el gerente determina que las personas adecuadas con las habilidades adecuadas, los mejores recursos, procesos claramente definidos, excelente capacitación y capacidad son parte de los valores organizacionales.

Ampliaré la respuesta de Chuck, pero a menudo veo que se colocan en lugares donde hacen poco código, a menos que sean clientes potenciales (incluso entonces) o desempeñen un papel más de I + D.

A menudo los veo:

  • Ordenar y organizar la infraestructura en torno a sus respectivas responsabilidades.
  • Determinación y redacción de requisitos o documentos de nivel superior.
  • Implementación y supervisión de cambios en el procedimiento, como el proceso de desarrollo.
  • Arquitectura de coordinación como actividades
  • Decidir qué tecnología nueva o antigua se puede incluir, a menudo asistiendo a cosas como IETF, seminarios, etc.
  • Contratación, despido y evaluaciones de empleados, etc.
  • Tratar con clientes (a veces)
  • Programación, cronogramas, revisiones de puertas, clasificación de errores

Hay mucho más, pero está mucho más orientado a las habilidades blandas.

No manejo el control de versiones, a menos que yo quiera.

Es más una cuestión de gestionar las expectativas de los clientes y mis gerentes, y motivar a todos los demás. Recordar a las personas que lo que hacemos es divertido y desafiante. Llamar a un pato un pato.

Se trata de corregir las deficiencias en la capacitación, las definiciones y el uso de los estándares, y lograr que las personas sigan el proceso.

Se trata de decirles a los clientes si desean una nueva función / función A que no estaba en el alcance original, y desean la misma fecha límite (algo tiene que dar), horario u otra función / función.

Se trata de preocuparse lo suficiente como para preguntarle a la gente qué quieren hacer en el futuro, a corto y largo plazo, y ayudarlos o al menos permitirles lograrlo.

Se trata de darles a las personas la tranquilidad que necesitan y de animarlos, y de reinar en los píos que están dando vueltas en una tangente sin ninguna razón en particular.

Se trata de elegir abordar proyectos en los que nadie parece particularmente interesado y hacerlo yo mismo, y hacerlo interesante y compartirlo con mi grupo. Se trata de ayudar a las personas a entender que saben algo que todos los demás no saben, y ayudarlos a sentirse cómodos presentándolo al grupo.

Es proteger a los desarrolladores, amarlos como si fueran familia y estar allí. Si hay un problema, quiero que mis amigos vengan a mí para ver si puedo ayudar a resolverlo antes de que RR.HH. intervenga o antes de que alguien sea despedido por hacer algo realmente estúpido.

More Interesting

Debería un B Tech. ¿El estudiante de tercer año prefiere prácticas / capacitación en TI y cuál es el mejor campo para hacer lo mismo?

¿Cómo es la seguridad laboral de los analistas financieros senior?

¿Por qué tantos millennials se van de Deloitte?

¿Cómo tantos estudiantes indios completan su maestría en Estados Unidos con autofinanciación? ¿Toman un préstamo estudiantil y consiguen un trabajo después de completar su maestría allí?

Cómo exprimir 4 horas en un día para estudiar mientras trabajas a tiempo completo de 9am a 6:30 pm

¿Debo dejar mi trabajo para caminar y hacer mochila (desierto) todo el verano?

¿Cómo son vistos los MBA de Rotman por las empresas consultoras de alta dirección?

¿Cómo debería un recién graduado de CS buscar trabajo en Dubai?

Ley de empleo: trabajé por contrato durante 244: 55 horas a $ 110 / hora como consultor de prueba. Si no me han pagado un centavo, ¿qué recurso tengo?

Cómo conseguir un trabajo como crítico de comida, blogger de comida o como escritor de contenido

¿Es un gerente de producto responsable del crecimiento del usuario?

Como ingeniero de software fullstack (BE & FE), ¿cómo puede equilibrar sus habilidades para no inclinarse hacia un lado, es decir, mantener los dos lados progresando al mismo ritmo?

¿Por qué alguien querría trabajar en el banco mundial específicamente en la Corporación Financiera Internacional?

Contadores Públicos (CA): Terminé con mi BCom, actualmente estoy buscando una CA y quiero seguir estudiando a partir de entonces. ¿Qué curso debo seguir?

¿Es bueno para un más fresco ir a Big Data o minería de datos?