¿Cuáles son algunas de las mejores prácticas que empleó al liderar un equipo de ingenieros de software?

  1. Empoderar a todos para tomar decisiones y tratar a todos como un líder. Dele a las personas la propiedad de una parte del producto, pero también rote a las personas para que las personas no tengan visión de túnel.
  2. Genere la mayor colaboración posible: fomente la programación de pares, requiera revisiones de código.
  3. Reserve tiempo para hackatones y proyectos divertidos. Fomentar la innovación y el desacuerdo respetuoso y el debate.
  4. Hacer entrevistas difíciles, pero divertidas. Asegúrese de que todos formen parte del proceso de entrevista. Asegúrese de que el proceso esté claramente definido y que todos entiendan su papel en cada ciclo de entrevista.
  5. Definir objetivos reales y medibles. Haga que las personas rindan cuentas solo de aquellos objetivos sobre los cuales tienen un control real.
  6. ¡Asegúrese de que todos trabajen y respeten profundamente a nuestro equipo de soporte! Son nuestros mejores amigos y el mejor canario en la mina de carbón que jamás tendrás.
  7. Asegúrese de que todos trabajen y respeten profundamente a nuestro equipo de documentación.
  8. Asegúrese de que todos trabajen y respeten profundamente a nuestro equipo UX.
  9. Asegúrese de que todos trabajen y respeten profundamente a nuestro equipo de operaciones. Sin ellos, solo somos un grupo de poetas muy analistas.
  10. Si no tiene pruebas, no entra. Escriba las pruebas primero.
  11. Si no hay escenarios claros y casos de uso y objetivos comerciales, el proyecto no se inicia.
  12. Refactorización! Pero solo si hay un valor comercial claro, no porque no le guste el código.
  13. No te preocupes por las cosas que no importan. Por ejemplo, si alguien usa espaciado y tabulación ligeramente diferentes, no dejes que nadie se asuste. Dicho esto, coloque herramientas que coloquen advertencias / automatice el formateo consistente. Los debates sobre detalles tan pequeños son tolerados pero desalentados. Elige un estándar, automatízalo y sigue adelante.
  14. ¡La administración funciona para las personas que les reportan! Es un trabajo de servicio. Los gerentes deben adelantarse al equipo y asegurarse de que el equipo tenga un buen camino por recorrer, donde los requisitos sean claros, otros equipos estén bien alineados y sepan cuáles son sus solicitudes, se entienden los detalles operativos y se cuenta con recursos suficientes, se entienden las dependencias , documentado y contabilizado, y las medidas y paneles están en su lugar para las cosas que importan.
  15. No le digas a la gente qué hacer, pero haz las preguntas difíciles e impulsa el consenso.
  16. Asegúrese de que haya una definición clara de “hecho”.
  17. Asegúrese de que las personas se tomen un tiempo libre.
  18. Asegúrese de que las personas siempre tengan tareas para hacer ese desafío y hacerlas crecer.
  19. Asegúrese de que todos tengan una carrera profesional y que comprendan cuál es esa ruta y qué deben hacer para ascender.
  20. La transparencia, la honestidad y la comunicación son el alma de un equipo. Asegúrese de que todos entiendan la misión y cómo y por qué son importantes.

Si nos metemos en problemas de arquitectura puramente técnicos, o problemas de codificación, se podrían agregar otros cientos de puntos, pero el equipo líder realmente no se trata principalmente de problemas técnicos.

Usé Agile SCRUM, que es una muy buena manera de colaborar.

  1. Al comienzo del sprint, pondré la tarea en la pizarra y dejaré que los miembros del equipo elijan sus tareas. Como los miembros del equipo eligen sus tareas ellos mismos, se sienten bien y positivos y se hacen responsables de la tarea.
  2. Para las tareas que no están asignadas o que son demasiado complejas para completar, me presentaré o pediré ayuda a un miembro del equipo senior.
  3. Comunicarse claramente sobre las tareas y el cronograma a la alta gerencia y a los dueños de negocios. Mantener expectativas reales.
  4. No presurice a los miembros del equipo por ningún error e intente resolver todos los problemas juntos como equipo.
  5. Elogiando por la finalización exitosa de las tareas. Decir gracias por trabajar juntos.
  6. Recordando los objetivos del proyecto y los plazos para mantenerlos informados.
  7. Sin microgestión. Si las tareas se entregan a tiempo. Vete o diviértete. Si quieres brillar, toma más tareas y ayuda a los miembros del equipo.
  8. Transparencia sobre la retroalimentación y la comunicación diaria sobre los bloqueadores.
  9. Fomentar la programación de pares para bloqueadores y problemas de producción.
  10. Almuerzo o cena en equipo después de cada lanzamiento. En caso de recesión, bombones y galletas.

Básicamente, sé amable y no hagas que tu equipo se sienta mal por los proyectos y tareas.

No tome las cosas personalmente y sea transparente.

Si la cultura laboral es buena, el equipo cumple. Nadie quiere ser tratado como un esclavo.