2010-04-07 7 views
6

Me gustaría configurar un ROWE para mi equipo de desarrollo: entorno de trabajo de solo resultado.Resultado solamente Entorno de trabajo

Básicamente, las personas trabajan cómo quieran, cuando lo deseen, siempre que el trabajo esté terminado. Este entorno ha sido un gran éxito para Best Buy: aumentar la productividad y reducir la facturación.

¿Alguien tiene algún consejo para hacer que esto funcione para un equipo de desarrollo?

Editar:

Más detalles: estaré liderando un equipo de desarrolladores de otros 3 bastante experimentados. Planeo estandarizar los procesos básicos, como control de versiones, seguimiento de errores, revisión de códigos, planificación, pruebas, etc. "Cómo quieren trabajar" más se refiere a cómo administran su tiempo: es decir, programar reuniones, programar un par.

+1

He oído hablar de entornos de trabajo como ese. Los resultados suenan muy bien, pero mi lado cínico cree que esto solo funcionará con el tipo de desarrollador adecuado. No tengo ningún consejo para usted pero me encantaría saber cómo fueron las cosas dentro de seis meses y lo que aprendió. ¿Algún plan para un blog o artículo sobre la experiencia? – TLiebe

+1

¿Cuán literalmente quieres hacer esto? es decir, ¿quieres darle libertad a tus desarrolladores para que elijan sus propias herramientas de control de versiones y de seguimiento de defectos? ¿o simplemente la libertad de usar las herramientas existentes de la forma que crean mejor? – Bevan

+0

Buen punto. Voy a crear una estructura básica, y tendrán libertad dentro de esta estructura. La mayor libertad será cuándo y dónde hacen el trabajo. Libertad sin estructura = caos. Vea la edición anterior para más detalles. – Jacko

Respuesta

4

Si tiene otros departamentos en su organización, considere administrar sus expectativas también. Será difícil convencerlos de que su proyecto va a llevar más tiempo (arroje toda la jerga técnica que pueda pensar) de lo que pensaba cuando se dan cuenta de que su equipo nunca está cerca (a sus ojos).

Aún tendrá que tener expectativas realistas en su planificación. ¿Realmente está permitiendo tiempo flexible cuando tienen 10 horas de trabajo para hacerlo en 10 horas? ¿Cómo va a manejar los problemas de resolución de problemas que se escalan al equipo de desarrollo?

Un desarrollador podría ser consistentemente mejor que el resto/tomar menos tiempo, pero el equipo puede sentir que esta persona tiene una carga de trabajo más ligera. Prepárate para aplastar algunos egos.

Supongo que la programación de pares está terminada?

+0

La programación de par no está necesariamente fuera. Solo necesita encontrar un socio que también valore el enfoque de XP. No hay nada que impida que alguien mantenga un horario de 9-5 en la oficina, si así lo desean. Es solo que el tiempo de cara no será obligatorio, porque no funciona para mucha gente. – Jacko

+0

Creo que encontrará que otras partes de la organización se quejarán cuando sus trabajadores tengan que estar allí y usted no. Y con razón. Está brindando un beneficio que no pueden tener y podría generar problemas legales cuando el secretario de contabilidad demanda los mismos derechos. No me puedo imaginar que esta idea volaría en cualquier tienda que no sea desarrollo puro. – HLGEM

+0

@HLGEM - ¿Dónde dibujas la línea? ¿"NO tener que viajar" es un beneficio que los vendedores deberían tener? ¿Qué tal estar de guardia? ¿Todos aparecen cuando el servidor falla a las 3:00 AM? Ponga a todos en el altavoz del teléfono, para que todos podamos ser criticados por un cliente irracional. – JeffO

2

La respuesta a esta pregunta variará según el tamaño y la cultura de la organización. Algunos también argumentan que el proceso puede ser importante, y usted no desea que su gente adopte un enfoque para lograr un resultado a expensas de algo que no consideran tan importante.

¿Puede proporcionar más información sobre el tamaño de la organización y sobre cómo funciona actualmente?

1

CUANDO lo desean será más fácil de lo que quieren. No le daría tanta libertad a los desarrolladores. En mi humilde opinión, esto llevaría a un desorden total de código.

Hoy en día existen muy pocos desarrolladores muy buenos y aquellos que son lo suficientemente buenos deben convertirse en líderes de desarrollo y tomar decisiones globales. Otros simplemente deben seguir las instrucciones o todos los infiernos pueden desatarse.

+0

¿Sabe 'por qué' esto está sucediendo en su organización? ¿Cuál es la causa raíz de este comportamiento? –

+0

Es solo algo que tiene que ver con qué tipo de personas tienes a tu alrededor, para que esto funcione (dando a todos tanta libertad para que puedan tomar sus propias decisiones sobre problemas reales) que necesitarías tener personas excepcionalmente dedicadas. Pero la mayoría de las personas no son dedicadas, solo buscan trabajo 9-5 y codifican "algo" que funciona. – mare

+0

Estás perdiendo a un buen programador si su papel como líder es cuidar al bebé durante todo el día. – JeffO

2

Asegúrate de contratar a las personas adecuadas, es posible que encuentres que trabajan más de lo que QUIEREN admitir X-).

La programación es más que un trabajo, es una pasión, y si encuentra a la persona adecuada para adaptarse a su entorno, las medidas de rendimiento salen por la puerta, ya que lo hacen por amor.

+0

Sí, Passion es la palabra correcta;) – mare

+0

Si se encuentra frente a la programación de PC después del trabajo ... es más que un trabajo X-) –

0

Orientado a resultados significa que debe confiar en sus desarrolladores para tomar las mejores decisiones. Algunas personas aman esta libertad. Se alegran cuando tienen la libertad de usar una llave inglesa como martillo si eso significaba resultados más rápidos, en lugar de cambiar de herramienta solo para clavar una imagen en la pared.

Pero a veces podría ser perjudicial. Los procesos están diseñados para la máxima productividad, eficiencia y efectividad, con todo tipo de medidas de seguridad.Con la herramienta de subversión incorrecta, un desarrollador puede deslizar fácilmente y eliminar todo el historial de todo el trabajo realizado por el equipo, eliminando así la función mágica de "deshacer".

En otro caso, la mayoría de los recién graduados (que yo sé) no tienen el conocimiento o la capacidad para tomar decisiones por sí mismos. Es posible que no produzcan tan rápido como podrían con alguien ladrando órdenes a él/ella. Una de las características más distinguibles de un recién graduado es cuando está perplejo o no sabe lo que está pasando, no pide ayuda.

Sus desarrolladores deben tener la mentalidad correcta para lograr los objetivos. La libertad es buena, pero supervisa y asegúrate de que sea la forma correcta de hacerlo.

+0

Buenos puntos a todos. Creo que encajar en este entorno depende más de la personalidad del desarrollador que de su nivel de experiencia. He visto a estudiantes cooperativos con mucha motivación e iniciativa, y personas mayores que son estrictamente de 9 a 5. – Jacko

1

Debe definir claramente los resultados que deben alcanzar, de manera clara y completamente inequívoca, para que entiendan lo que pueden controlar (cómo funcionan, el orden en que desarrollan las cosas, etc.) y lo que pueden ". t (por lo general, lo que se espera que entreguen, tanto en términos del producto real como de los materiales de respaldo, como los informes de progreso, y cuando todo está destinado a ser entregado). También debe hacerles saber qué recursos tienen: ¿pueden pedir máquinas de alta especificación o solicitar un nuevo software, por ejemplo, o todo está decidido?

También me aseguraré de que uno de sus primeros resultados sea un cronograma de hitos completos con los que pueda medir el progreso y acordar con ellos lo que sucederá si comienzan a faltar los hitos.

Pero estoy un poco dudoso sobre la idea de que va a definir el control de versiones, el seguimiento de errores, etc. Seguramente estas son las cosas que debería dejarles decidir? Después de todo, son parte del proceso. Personalmente, declaro que debe tener control de versión, registro centralizado de defectos y demás, pero los mecanismos, herramientas y procesos deben estar a la altura de ellos.

Se siente un poco como usted dice que quiere crear un entorno de trabajo de solo resultados pero no confía en ellos. Si estás diciendo que lo que vas a hacer es crear un ROWE, entonces debes asegurarte de que sea solo que de otra manera solo estás haciendo la mitad del proceso y esas situaciones rara vez ofrecen los beneficios que la gente espera.

Después de todo, o usted confía en ellos o no, pero si no puede confiar en ellos para averiguar cómo hacer el control de versiones, que es francamente una segunda naturaleza para los desarrolladores, probablemente no debe confiar en ellos con el horario que normalmente es un asunto mucho menos directo.

+0

Invitar a otros a ser parte del proceso es bueno, pero alguien tiene que tomar las decisiones. Elegir un sistema de seguimiento de errores para un desarrollador puede ser tedioso. – JeffO

+0

@jeff o: estuvo de acuerdo, pero si usted está diciendo que le está dando a los desarrolladores la autoridad de trabajar como quieran, entonces la pregunta debería ser "¿Desea abordar esto usted mismo o quiere que lo haga?". Sin duda, el objetivo de este enfoque es que el que toma la decisión es el desarrollador. De lo contrario, es solo horario flexible y trabajar desde casa si les apetece, difícilmente revolucionario. –

+0

Flex-time tradicional, ¿tiene que trabajar 40 horas por semana cada vez que lo desee? Resultados solo es que tiene una "X" cantidad de trabajo por hacer, y no me importa si pasa 4 u 80 horas. El problema de juzgar solo por Producto/Resultado es si no le das a los desarrolladores el control suficiente y sienten que no pueden producir porque no les han dado herramientas efectivas. – JeffO

Cuestiones relacionadas