¿Cómo mantener un equipo bien entrenado? [cerrado]

11

Actualmente estoy asesorando a un pequeño equipo de 4 desarrolladores junior en una pequeña empresa de software. Son muy inteligentes y a menudo logran sus tareas con un trabajo de alta calidad, pero estoy seguro de que aún pueden hacerlo mejor, de hecho, tengo exactamente la misma sensación para mí :). Además, algunos de ellos son más "junior" que otros.

Por lo tanto, me gustaría encontrar una forma divertida de mejorar sus habilidades de CS (diseño, codificación, pruebas, algoritmos ...) además de la experiencia que adquieren en su trabajo diario. Por ejemplo, estaba pensando en organizar sesiones semanales, de no más de 2 horas, donde pudiéramos reunirnos para trabajar en ejercicios desafiantes de CS. Un poco como un dojo de codificación.

Estoy seguro de que el equipo lo disfrutará, pero ¿es realmente una buena idea? ¿Sería eficiente en un contexto profesional? Ya pasan toda su semana codificando, entonces, ¿cómo debo organizar eso para que puedan obtener algunos beneficios?

Cualquier comentario bienvenido!

PierrOz
fuente
3
SEÑOR. NOLAN ~ Sociedad de los Poetas Muertos: "¿A la edad de estos muchachos? ¡No en tu vida! Tradición, John. Disciplina. Prepáralos para la universidad, y el resto se encargará de sí mismo". No podría resistirse: P +1 para una buena pregunta.
Matthieu

Respuestas:

9

Aquí hay algunas ideas.

  • Club de lectura, lea los libros como Programador pragmático u otras cosas centradas en la carrera.
  • Codificando Dojo, puede comenzar con un problema simple fuera del proyecto y luego extenderlo al Proyecto o, de lo contrario, si lo desea.
  • Retrospectivas o reunión de retroalimentación, para obtener ideas del propio grupo para mejorar el desarrollo del proyecto en el que cada uno participa
  • Una reunión de grupo de usuarios en la que una persona designada presente esto mejoraría la presentación / habilidades blandas del equipo

  • de vez en cuando haciendo una tarea no relacionada con el trabajo, como ir a Dave & Busters para divertirse un viernes o algo así ... para mejorar la química del equipo

Cualquiera de las tareas o reuniones debe durar menos de 45 minutos para que todo el grupo se interese. Cualquier cosa que vaya más allá y la hora recaerá completamente sobre los hombros del presentador o líder del grupo.

Srikanth Remani
fuente
Secundo el club de lectura. Ni siquiera estaría cerca de un buen desarrollador si no leyera los libros que tengo sobre programación y desarrollo de software. Los libros te permiten ver cómo lo hacen los expertos, para que tú mismo puedas convertirte en uno.
Brian D.
1

Es posible que las personas tengan sus propias ideas sobre cómo quieren aprender. Personalmente, preferiría tomar un curso o trabajar en un proyecto en mi propio tiempo, y he hecho ambos. Si todos los miembros del equipo están de acuerdo con las sesiones de entrenamiento, adelante, siempre y cuando las personas de su equipo no empiecen a tratarlo como "trabajo" con el tiempo ...

Justin Ethier
fuente
Entiendo que necesitan una "atmósfera" diferente para aprender, pero me gusta el enfoque colectivo de la codificación del dojo. Todos pueden beneficiarse de las mejores ideas y pueden entender cuál fue el enfoque para encontrarlas ...
PierrOz
Es justo, aunque si va a reunir a todos, es posible que desee involucrar más al grupo. Por ejemplo, traiga sus propias ideas a las primeras sesiones, pero luego haga que una persona diferente traiga el ejercicio cada una de las siguientes semanas. Además, considere hacer otras cosas, como revisar un fragmento de código semanal, hacer que las personas presenten tareas en las que han trabajado (o áreas técnicas en las que están aprendiendo, como WPF, TCP, etc.), y así sucesivamente ...
Justin Ethier
1

Creo que la única forma de mantener un equipo bien entrenado es contratando desarrolladores que quieran continuar aprendiendo.

Si no viene desde adentro, no dará resultados duraderos.

si desean aprender, entonces si las actividades de aprendizaje en equipo son efectivas o no dependerá principalmente de los intereses y estilos de aprendizaje.

Eric Wilson
fuente
1

Creo que el sistema dojo suena bien y les permite continuar en casa si lo desean. Agregar algún tipo de recompensa podría ser útil, pero podría enfatizar la cometación y no creo que sea bueno para el trabajo en equipo. De todos modos, un lugar increíble para buscar problemas informáticos es su Juez Esfera en línea . Define un problema, un conjunto de resultados esperados y le permite cargar un archivo con la solución al problema. Si lo haces bien, tus puntos suben.

¡Buena suerte con eso!

Guiman
fuente
1

Hay una serie de habilidades que necesitamos como desarrolladores que no están necesariamente relacionadas directamente con el código. Un ejemplo es presentar y explicar cosas técnicas a personas no técnicas de una manera que puedan entender. Algo que puede ser efectivo mientras lleva a su equipo a donde quiere es darle algo como tarea.

Cada semana, les das a tus muchachos un problema para resolver. Para que sea más beneficioso para la empresa, mantenga los problemas en algo relevante para lo que está trabajando. Preferiblemente algún punto de dolor que aún no ha descubierto la solución para usted. Cada uno de sus miembros junior se turnaría para presentar (preferiblemente uno por semana) mientras desempeña el papel del cliente. Esencialmente, tiene dos objetivos con este enfoque:

  1. El acto de enseñar / presentar requiere que el chico en el piso tenga un conocimiento más profundo que solo hacer ejercicios. Es una forma indirecta, pero muy efectiva, de enseñarle un tema a alguien.
  2. Si pueden convencerlo de que es una buena idea, podrían convencer a un cliente de la misma manera. Asegúrese de incluir preguntas que les hagan pensar sobre el impacto comercial de lo que están proponiendo.

Por supuesto, comience cada sesión con un recordatorio de que va a hacer preguntas puntuales, y el propósito no es ser malo, sino prepararlos para un cliente difícil.

Berin Loritsch
fuente
1

Como gerente o senior, me esforzaría por seguir presentando desafíos en el trabajo 'real'. Intenta darle a la gente cosas para trabajar que estén un poco fuera de su alcance o al menos los desafíen. Envíe a uno de sus compañeros para que lo ayude y tutore si es necesario.

Después de que alguien termine algo, desafíelos a probar un enfoque nuevo / diferente.

Enséñeles a resolver las cosas en el acto en lugar de trabajar en cosas que aún no saben cómo hacer.

Integre el aprendizaje en el trabajo mismo, los proyectos paralelos para el aprendizaje tienden a saltarse con plazos en el horizonte.

A veces, indicar directamente la necesidad de una especialización determinada puede ayudar como motivador.

Joppe
fuente
1

Déles 3 horas a la semana para investigar / piratear lo que les interese para la programación. Idealmente, esto sería más, pero creo que 3 horas es un buen comienzo. Podría ser todo en un trozo, podría dividirse en pequeños segmentos de 30 minutos en el camino. Parece que estos programadores están lo suficientemente motivados como para poder mantener las cosas bajo control.

Pero permitirles explorar sus propios campos de interés volverá a ayudar al equipo también. Una persona a la que realmente le gustan los datos puede buscar y escribir una pequeña aplicación utilizando una solución NoSQL que podría ayudar a un proyecto que se presentará en unos meses. Otra persona podría corregir una pequeña aplicación de utilidad para una necesidad trivial (como analizar archivos de registro) que se convierte en una aplicación básica en su equipo. Incluso el conocimiento adquirido al leer sobre lo que están haciendo las grandes empresas puede ayudar a evaluar las opciones para el próximo proyecto que se presente.

Estamos en un entorno que cambia constantemente, y estoy seguro de que cada miembro de su equipo aporta algo único a la mesa, así que deles la oportunidad de expandirse en sus propios términos. Apreciarán que no han sido forzados a algo (a pesar de que todas las intenciones son buenas) y obtendrán una buena diversidad de comentarios.

Dillie-O
fuente
0

Otra técnica que he visto que funciona es una presentación de almuerzo de un desarrollador / consultor senior una vez al mes más o menos. Y no te olvides de proporcionar el almuerzo. La mayoría de los desarrolladores que conozco adoran comida gratis. Puede preguntarles si prefieren algún tema específico.

SnoopDougieDoug
fuente