Pregunta

Acabo de terminar mi maestro y estoy empezando a profundizar en el mundo de los laborales, es decir, aprendiendo cómo los equipos de programación y las empresas de tecnología funcionan en el mundo real. Estoy empezando a diseñar la idea de mi propio servicio o producto en función del software gratuito, y requeriré un equipo bien acoplado, entusiasta y fluido para construir y la idea. Mi problema es que no estoy seguro de cuáles serían las mejores habilidades para pedir un equipo de programación de 4-5 miembros.

Tengo muchos amigos y conocidos, con quienes he trabajado durante mis estudios. Debe de aquellos que tengo en mente son personas muy capaces e inteligentes, con una buena lógica y base de programación, aunque algunas de ellas tienen algunas características que creo que podrían influt negativamente en el grupo: falta de comunicación, miedo a debatir ideas, Difícil de dar al debatir, falta de programación estructurada (pruebas, buenos comentarios, diseño y análisis previos).

Algunos de ellos tienen estas características negativas, pero deben tener mucho entusiasmo, buenas habilidades de trabajo (desde un punto de vista individual) y la capacidad de ver la imagen completa.

La pregunta es: ¿cómo elegir el mejor equipo para un proyecto a gran escala, con mucha programación? ¿Cuál de estas habilidades negativas crees que son demasiado influyentes? ¿Qué se puede suavizar con un buen liderazgo? ¿Qué buenas habilidades son de esperar? Y cualquier otra opinión sobre habilidades sociales y de programación de un equipo de programación.

¿Fue útil?

Solución

La química del equipo es algo difícil de predecir. Cuánto tiempo llevará un proyecto a terminar es difícil de predecir. Realmente, la vida es difícil de predecir. Su mejor opción es elegir a las personas que siente que funcionarán bien juntas, comenzarán y verán qué sucede. A continuación, ajuste a su equipo según sea necesario. Será obvio qué áreas deberán mejorarse y qué va bien, si solicita comentarios sobre estos elementos de su equipo.

El método científico es generalmente la mejor manera de lograr resultados. No pases demasiado tiempo hipotetizando, adelante y observa, para que puedas tomar medidas.

Otros consejos

Joel Spolsky dijo:

En principio, es simple. Estás buscando personas que estén

  1. Inteligente y
  2. Terminar las cosas.

A Steve Yegge le gustó ese principio y se expandió un poco con Hecho y hace que las cosas son inteligentes.

He administrado equipos durante 5 años, después de 15 años de desarrollo. Mi propio principio es muy parecido a Spoelsky, solo no tan elegantemente redactado. Los programadores son solucionadores de problemas que usan software para resolver los problemas. En ese sentido, un buen programador usará cualquier herramienta que sea la mejor para el trabajo, aunque eso a menudo significa que uno de los pocos que conocen mejor (buena suerte para encontrar un desarrollador de .NET que crea que LISP es la mejor herramienta para un trabajo).

Si bien todas mis entrevistas tienen algunas preguntas específicas para el desarrollo, tienden a ser genéricas y no basadas en herramientas. Prefiero tener personas que entiendan OO (nuestra suite de aplicaciones actual es OO) y muestran la capacidad de entender, aprender y abrazar.

Dicho todo esto, necesitan demostrar que tienen la capacidad de escribir lógica de sonido en algún idioma. He encontrado demasiados desarrolladores que pueden hablar pero no pueden caminar por la caminata.

Un gran miembro del equipo tiene una serie de características, como en la lista a continuación. Esto no es específico para la programación, pero se aplica a todos los tipos de equipos donde se espera que ocurra la colaboración:

  • Reconoce y trabaja a través del conflicto abiertamente
  • Considera y utiliza nuevas ideas y sugerencias de otros
  • Fomenta los comentarios sobre el comportamiento propio
  • Comprende y está comprometido con los objetivos del equipo.
  • Comparte abiertamente y auténticamente con otros con respecto a los sentimientos personales, opiniones, pensamientos y percepciones sobre problemas y condiciones.
  • Involucra a otros en el proceso de toma de decisiones
  • Fideicomisos, apoya y tiene una preocupación genuina para otros miembros del equipo.
  • "Posee" problemas en lugar de culparlos a los demás
  • Al escuchar, intenta escuchar e interpretar la comunicación desde los puntos de vista de otros
  • Influye en otros al involucrarlos en el tema (s)
  • Fomenta el desarrollo de otros miembros del equipo
  • Respetos y es tolerante a las diferencias individuales
  • No participa en actividades de ganar/perder con otros miembros del equipo
  • Tiene habilidades para comprender lo que está sucediendo en el grupo

Use esta lista como una forma de medir los miembros potenciales del equipo.

Este es más o menos el miembro del equipo perfecto, alguien con quien me gustaría trabajar. Si puedes encontrar personas como esta y que además sabe una o dos cosas sobre la programación, entonces tienes un equipo ganador.

Más información aquí.

Licenciado bajo: CC-BY-SA con atribución
scroll top