Estructura de la organización en el inicio

Me dieron el rol de administrar 5 equipos diferentes (iOS, Android, Backend, Firmware y Hardware (electrónica)). Todos estos equipos consisten en no más de 4-5 desarrolladores. También hay un equipo de control de calidad (2 ingenieros) y están probando todos los componentes, ya sean funciones o firmware nuevo.

Todos los equipos solían trabajar por separado con sus propios tableros, trabajos pendientes y sprints. El mes pasado comenzamos a trabajar en funciones dividiéndolas en historias y movimos iOS, Android y el backend a una placa de desarrollo. Actualmente, tenemos 1 o 2 equipos de funciones dinámicas, ya que algunas funciones pueden tener una vida útil diferente y requieren diferentes pares de desarrolladores (por ejemplo, iOS+Android+Backend o FW+Backend, etc.) y personas que trabajan en pequeñas tareas/tecnología. deuda u otros artículos.

Necesito entender: - ¿Cuál sería la mejor estructura organizativa de los equipos anteriores? Actualmente, no tengo otra idea que continuar trabajando como pequeños equipos de funciones. - Cómo estimar la productividad de cada miembro del equipo dentro de un tablero donde estamos rastreando funciones o tareas individuales. Entiendo que sería mejor hacer un seguimiento de la velocidad del EQUIPO, sin embargo, los equipos están cambiando de una característica a otra y no son lo suficientemente estables como para confiar en la velocidad.

¡Gracias de antemano!

Me parece que está haciendo dos preguntas distintas: una sobre la estructura organizativa, otra sobre el cambio de estimación de tiempo a puntos. Es posible que desee elegir uno para esta pregunta.
@Sarov gracias por resaltar esto, revisé mi pregunta y eliminé una sobre la estimación, ya que necesito organizar una estructura de equipo de primera mano.
Falta un poco de historia: ¿algún objetivo o punto débil que puedas compartir? Tal como lo describe, la configuración del equipo reorganizado actual parece funcionar, entonces, ¿por qué "cambiar un caballo ganador"?

Respuestas (1)

Basado en lo que estoy viendo, te daré dos respuestas. Si estuviera en persona y pudiera hacer algunas observaciones de primera mano, probablemente podría hacer una sugerencia más refinada.

1- Mejor caso: Su mejor caso es tomarse el tiempo, ahora, para mover a los miembros de su equipo hacia una mejor funcionalidad cruzada. En lugar de tener un desarrollador de iOS, un desarrollador de Android y una persona de control de calidad, desea tres desarrolladores ágiles donde uno es más fuerte en iOS, uno en Android, uno en pruebas.

El desafío es que esto generalmente no puede suceder de la noche a la mañana, aunque se sorprendería de lo rápido que puede pasar de los silos funcionales a los desarrolladores de pila completa si todos están de acuerdo con la idea.

2- Solución rápida: cambie a un flujo de trabajo Kanban, con un fuerte enfoque en los límites del trabajo en progreso. Tenga "íconos" de los miembros del equipo (imanes, calcomanías, algo así) que puedan adjuntar a las historias en la cola Listo. Cuando todas las personas necesarias para una historia Ready están en la historia y hay disponibilidad de WIP en Doing, mueva la historia.

Entonces, un desarrollador de iOS termina una historia. Ella ve que el tercer piso hacia abajo necesitará trabajo de iOS y Backend, solo que todavía no hay una persona disponible. El desarrollador de iOS luego mira las historias anteriores y ve que una persona de Android está trabajando con un ingeniero de firmware. Ella se sienta en su sesión de emparejamiento para poder aprender más sobre Android mientras espera que la persona de Backend esté libre. Al hacer esto, puede avanzar hacia la solución Best Case con el tiempo.

Tengo un flujo de trabajo de "¿Qué debo hacer a continuación?" que a menudo comparto con los equipos que entreno. Aquí está mi versión Kanban:

  1. Confiamos en ti, haz lo correcto.
  2. ¿Hay alguna forma en que pueda ayudar a alguien con una tarea actual?.
  3. ¿Puedo solucionar un cuello de botella en el flujo de trabajo (en algún lugar donde el trabajo en curso o el tiempo de ciclo sea alto)?
  4. ¿Puedo trabajar en una tarea no iniciada en una historia de usuario en progreso?
  5. ¿Puedo arreglar alguna deuda técnica pendiente o mejorar el sistema?
  6. ¿Puedo comenzar una nueva historia que esté alta en el trabajo pendiente actual?
  7. ¿Puedo aprender algo nuevo o mejorar mis habilidades?
  8. En caso de duda, consulte el n.° 1.