Los Roles Escritos del Gerente de Desarrollo de Software [cerrado]


62

Todos sabemos lo que hace un gerente de desarrollo de software, pero me temo que solo lo sabemos vagamente . Creemos que sabemos lo que está haciendo, pero enumerar exactamente cuál es el alcance del trabajo es un poco difícil.

En su opinión, ¿cuáles son los roles de un gerente de desarrollo de software?


1
Excelente resumen para recordarle a uno lo que hace un gerente de ingeniería. Póngalo en su escritorio y vuelva a visitarlo cuando tenga dudas o se encuentre en una situación difícil mientras administra su equipo.
jkk

Respuestas:


100

Hablando como alguien en el trabajo (que también ha sido desarrollador), las cosas clave que tengo que hacer son:

  • Mantenga al equipo de desarrollo encaminado (y contento siempre que sea posible) : elimine las cosas que le impiden trabajar donde sea posible, explique por qué no es posible que no puedan moverse para intentar reducir el estrés resultante (las personas son más probablemente acepte cosas si al menos las entienden). En última instancia, si hay un conflicto entre el proyecto y el equipo que no se puede resolver, normalmente el proyecto ganará. Eso no necesariamente lo hace popular con el equipo, pero se le paga por entregar proyectos / productos, no como líder sindical. La habilidad obvia es minimizar la frecuencia con que esto sucede.

  • Asegúrese de que el equipo se comunique con el cliente la cantidad correcta . Esto tiende a ser partes iguales que mantienen al cliente alejado del equipo y se aseguran de que el equipo le pregunte al cliente sobre cosas que no comprende completamente (en lugar de simplemente hacer suposiciones que pueden ser incorrectas). Los desarrolladores son muy importantes para asegurarse de que el cliente no los moleste y ocasionalmente olvidan que el cliente podría tener algo útil para agregar.

  • Planificación de proyectos y priorización de conflictos de recursos, demandas de los clientes, problemas de soporte y similares. Tiendo a ser la persona que dice que este cliente tiene prioridad sobre ese, o que este error tiene que repararse antes de que se envíe, pero ese puede salir como un problema conocido.

  • Administre el lado comercial del desarrollo , es decir, asegurarse de que las cosas se deben cobrar y cobrar y que no estamos tratando de cobrar por las cosas que deberían estar cubiertas por el soporte.

  • Sea la voz del equipo en el negocio y del negocio dentro del equipo : ayude a todos a comprender la posición del otro y ayude a resolver las diferencias donde surjan. Esto tiende a cubrir conflictos culturales entre las necesidades / deseos de los equipos y las organizaciones más grandes, y los asuntos presupuestarios. Esto es realmente una mierda, ya que cuando hay desacuerdos eres el enemigo de todos.

  • Trabaje con el equipo para garantizar que existan suficientes procesos y herramientas para cumplir con los requisitos de la empresa y los clientes . Asegúrese de que estos procesos se sigan y ajusten según sea necesario. Algo de esto es asegurarse de que el equipo defina procesos (por ejemplo, para cosas técnicas que entienden mejor que yo), otra es definirlos yo mismo (para cosas que entiendo mejor que ellos: planificación, estimación, etc.). La palabra importante aquí es suficiente: no desea el proceso por el bien del proceso, pero hay cosas que tienen que suceder y el proceso es la mejor manera de lograrlo de manera consistente.

  • Asegúrese de que cada miembro del equipo esté trabajando al menos a un nivel razonable , e idealmente más allá de eso. Trabaje con ellos para ayudar a resolver cualquier problema que les impida alcanzar este nivel. Me encantaría decir que mi papel es hacer que sean lo mejor que pueden ser, pero si bien esto es cierto hasta cierto punto, otras demandas (proyecto, presupuesto, tiempo) significan que esto casi siempre se verá comprometido en mayor o menor medida.

  • Hacer toda la administración y las cosas que la organización (y la ley) exigen

En general, es parte de tutoría, parte de secretaría, parte de gestión de proyectos, parte de gestión de cuentas y parte de relaciones públicas (para el equipo). Hay un montón de cosas que los desarrolladores no necesitan pensar o no piensan hacer, y algunas se aseguran de hacer las cosas que deben hacer pero que no quieren hacer.

De lo que no se trata es de ser el mejor desarrollador (por lo general, eres demasiado independiente para mantenerte actualizado durante mucho tiempo, por lo que debes aceptar que las personas sabrán más que tú; la habilidad está en saber dónde es más relevante tu experiencia más larga pero desactualizada que su experiencia más corta pero más reciente) o ser algún tipo de dictador. En ese sentido, la mejor manera de pensarlo no es que sea más alto, sino que tiene responsabilidades diferentes. A veces, esto implicará hacer una llamada final sobre algo (que puede ir en contra de las opiniones del equipo), pero más a menudo debería ser sobre consenso o compromiso.


3
A finales de +1 para una gran respuesta me pareció útil.
Dan McGrath

3
Esto se ha agregado a mi lista de "Para leer" con la nota "una y otra vez". Sabias palabras.
Andrew Ashbacher

1
Me gustaría hablar un poco sobre algo que usted ha dicho, a saber: "en general, usted está demasiado lejos para mantenerse al día por mucho tiempo". Tengo una idea ligeramente diferente de lo que se trata un gerente de desarrollo, pero a este respecto creo que un gerente de desarrollo debe al menos ser consciente de lo que es lo último y lo mejor y entenderlo a un alto nivel. Soy el primero en admitir que beber de la manguera de fuego sin derramar una gota es inviable, pero el hecho es que hay muy pocos conceptos nuevos que nos afecten día a día.
Eric Smith
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.