¿Cuánto de su día de trabajo se dedica a la codificación? [cerrado]


He estado pensando en la estimación de software últimamente, y tengo un montón de preguntas sobre el tiempo dedicado a la codificación. Tengo curiosidad por saber de personas que han tenido al menos un par de años de experiencia en el desarrollo de software.

Cuando tienes que estimar la cantidad de tiempo que pasarás trabajando en algo, ¿cuántas horas del día pasas codificando? ¿Qué ocupa las otras horas sin codificación?

¿Encuentras que pasas más o menos horas que tus compañeros de equipo codificando? ¿Te sientes ¿como si estuvieras haciendo más o menos trabajo que ellos?

¿Cómo son sus condiciones de trabajo? Oficina privada, oficina compartida, sala de equipos? Codificación solos o en pareja? ¿Cómo ha cambiado su condición de trabajo la cantidad de tiempo que pasa codificando cada día? Si puedes trabajar desde casa, ¿eso ayuda o perjudica tu productividad?

¿Qué metodología de desarrollo utiliza? Cascada? Ágil? Ha cambiado de una metodología a otra tuvo un impacto en sus horas de codificación por día?

Lo más importante: ¿Estás contento con tu productividad? Si no, ¿qué cambio único haría que tendría el mayor impacto en él?

Author: Patrick McElhaney, 2008-08-17

9 answers

Soy un desarrollador corporativo, del tipo que Joel Spolsky llamó "deprimido" en un par de podcasts de StackOverflow. Debido a que mi empresa no es una empresa de software, tiene pocas razones comerciales para implementar muchas de las medidas que los expertos en software recomiendan a las empresas para la productividad del desarrollador.

No tenemos oficinas privadas y monitores duales de 30 pulgadas. Nuestro sistema de control de código fuente es Microsoft Visual Source Safe. Basta de palabras. Por otro lado, tengo que hacer un montón de cosas que llenan fuera de mi día y añadir algo de variedad a mi trabajo. Me involucro en análisis de negocios, gestión de proyectos, desarrollo, soporte de producción, implementaciones internacionales, soporte de capacitación, planificación de equipos y mejora de procesos.

Yo diría que tengo el 85% de mi día para codificar, cuando puedo concentrarme y tengo una tarea de programación importante. Pero más a menudo me dan alrededor del 50% de mi día para la codificación. Si el soporte de producción (no relacionado con la codificación) es pesado, solo puedo obtener el 15% de mi día para codificar.

La mayoría de los las empresas para las que he trabajado no participaban activamente en la evaluación de procesos ágiles o el desarrollo basado en pruebas, pero tampoco hicieron un buen trabajo con waterfall; la mayoría de sus desarrolladores trabajaron como vaqueros de cortar y pegar con impugnación.

En ocasiones trabajo desde casa y con niños, es horrible . Soy más productivo en el trabajo.

Mi productividad es buena, pero podría ser mejor si se eliminara el factor de interrupción y el costo del cambio de contexto mental. Producción los gastos generales de soporte y gestión de proyectos crean ese tipo de interrupciones. Pero ambas son partes necesarias del trabajo, así que no creo que pueda deshacerme de ellas. Lo que me gustaría considerar es una reestructuración del equipo para que las personas en los proyectos puedan centrarse en los proyectos, mientras que los demás podrían bloquear las interrupciones al dedicarse al apoyo. Y luego intercambiar cuando el proyecto haya terminado.

Desafortunadamente, nadie quiere hacer soporte, por lo que la otra medida de mejora de la productividad Desearía que fuera uno de los siguientes:

  • Mejores herramientas/metodologías de ensayo para acelerar las pruebas unitarias
  • Mejores herramientas/habilidades de análisis de negocios para mejorar la calidad del nuevo desarrollo y limitar sus contribuciones a la carga de soporte de producción
 20
Author: Bernard Dy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-16 22:27:35

Siendo realistas, probablemente promedia 4 o 5 horas al día. Aunque su "bulto" - puede haber días donde podría haber 8 o 9 horas de ella.

De todos los desarrolladores de software que conozco, los que escriben código de producción (en lugar de investigación) 4 a 5 parece ser el máximo de codificación real. Hay muchas otras cosas que pasan.

Y para ser honesto, hay mucha dilación. Me parece un poco como bloque de escritores. a veces es difícil empezar, pero entonces una buena sesión de 2 horas es mucho trabajo hecho. Es solo toda la preparación que tiene que pasar, la experimentación para asegurarse de que está tomando el enfoque correcto. La cantidad infinita de mirar por la ventana y revisar el correo electrónico, etc...

 15
Author: Michael Neale,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-16 21:38:59

Trabajo una semana de 37,5 horas.
30 de esas horas (80%) se supone que debo facturar a nuestros clientes.
En realidad, encuentro que uso alrededor del 60% de codificación en sistemas de clientes reales, el 20% experimentando con nuevas técnicas y leyendo blogs, y el 20% se desperdicia en la política de la oficina y la "socialización".

¿Estoy feliz por ello?
¿Me gustaría poder mirar la pantalla 30 horas a la semana codificando mis tareas asignadas?

Bueno. Ya que el 20% del tiempo se usa para mejorar mi oficio, en el 60% que es la codificación efectiva, probablemente produzca más de lo que produciría en el 90% de mi tiempo si no lo hiciera.
Por otra parte, trate de explicar ese hecho a los superiores;)

 6
Author: Lars Mæhlum,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-16 22:30:51

Bueno, generalmente entro al menos quince minutos tarde, ah, uso el puerta lateral-de esa manera Lumbergh no puede mírame, je je-y, uh, después de eso Sólo sorta espacio para alrededor de un hora.

...Sí, sólo miro fijamente a mi escritorio; pero parece que estoy trabajando. Yo que probablemente otra hora después del almuerzo, demasiado. Yo diría que en una semana probablemente sólo hacer unos quince minutos de trabajo real, real.

Para mí, cambiar entre proyectos es una gran causa de dilación. Cuando acabo de terminar un proyecto tiendo a postergar el inicio del siguiente requisito asignado a mí. Mi mente todavía se siente como en el modo de codificación, pero luego tengo que estimar los gastos para crear una especificación primero. Así que tengo que pasar de programar a llamar a clientes y cosas por el estilo, lo que me resulta incómodo.

Lo que más me ayuda a ser productivo es eliminar cualquier distracción en las primeras horas del día y comenzar inmediatamente con el la tarea más importante. Necesito entrar en el flujo lo antes posible.


Recomiendo echar un vistazo a la Piedra de los Programadores:

Sabemos que el estrés afecta algunas funciones cognitivas. La pérdida de esas funciones puede explicar con precisión por qué la programación es difícil, y mostrarnos muchas otras oportunidades para mejorar las formas en que organizamos las cosas. Las consecuencias se despliegan para tocar el lenguaje, la lógica y las normas culturales. Haga clic aquí para la Introducción...

 6
Author: binOr,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-17 00:34:27

Paso alrededor del 40% de mi día codificando. el 40% va a actividades que no son de codificación (como pelear con nuestro servidor de compilación incompleto o averiguar por qué NUnit falló sin ningún mensaje de error de nuevo o tratar de averiguar por qué nuestro código ha dejado de hablar con el servidor Oracle downstaird... basura como esa). El otro 20% se gasta generalmente procrastinando, o en reuniones.

¿Estoy contento con mi productividad? Absolutamente no. Trabajo 7 horas / día, y paso alrededor de 2.5 de esa codificación. Yo preferiría estar pasando 5-6 horas de mi día codificando, con solo una hora dedicada a todas las otras cosas (tristemente, la única cosa que haría que eso suceda that que el PM deje de bromear con los scripts de compilación todos los días every no va a suceder). Desafortunadamente, ya que soy un desarrollador corporativo, la gerencia no ve el tiempo desperdiciándose. Debido a que hago mucho más en ese 40% de mi día que la mayoría de los drones en el edificio en una semana (incluido el primer ministro), piensan que soy productivo.

 5
Author: TheSmurf,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-16 21:47:45

@Bernard Dy: Probablemente he pasado el 30% de mi carrera en entornos corporativos (no lo estoy en este momento). Por lo general, después de algún fallo (o no falló, pero se desvaneció) idea de inicio, o algún tipo de burnout/cambio. Está bien por un poco, es agradable conocer gente de orígenes totalmente diferentes (que habría pensado que los abogados y actuarios podrían ser muy divertidos para pasar el rato), pero al final, me resulta demasiado difícil levantarme por la mañana con motivación (o después de un temor de vacaciones volviendo atrás) - probablemente por razones como usted define (solo una falta de atención). Pero su buena experiencia y una fuente de ideas, al menos. Y puedes conocer gente brillante en todas partes (no solo programadores que son inteligentes, siempre traté de buscar quiénes eran los verdaderos cerebros detrás de un negocio).

Curiosamente, la única vez que he practicado agile/XP estricto fue en un entorno corporativo-en ese caso, probablemente 7 horas al día era manos reales en el código ( en un par) - Nunca he sido tan agotado después de un día de eso. no estoy seguro de si eso es algo bueno, tal vez solo soy perezoso.

 3
Author: Michael Neale,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-17 03:27:08

Para responder algunas de mis propias preguntas:

El equipo actual en el que estoy solo hace una estimación bruta de tareas, por lo que es difícil rastrear horas por día. Yo diría que, para mi carrera, el tiempo dedicado a la codificación ha estado entre el 25% (principalmente la gestión) y el 85%+ (trabajar desde casa 4 días a la semana, reunirse para una reunión durante medio día una vez a la semana). Si tuviera que adivinar, sin embargo, el promedio es probablemente en algún lugar cerca del 60%.

La mayor influencia para mí en el tiempo pasado la codificación es la presencia o ausencia de reuniones. Cuando trabajaba en proyectos ágiles con todos en la misma sala, las reuniones solían ser ad-hoc y muy cortas, por lo que el tiempo dedicado a la codificación era muy alto. También sentí que pasaba menos tiempo, a veces mucho menos tiempo, haciendo cosas sin codificación cuando estaba en una sala de equipo, porque es mucho más fácil perder tiempo, accidentalmente o de otra manera, cuando nadie tiene una vista clara de su monitor. :)

 2
Author: Brad Wilson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-16 23:05:47

Hago outsourcing y básicamente codifico todo el día, tengo dos proyectos y no tengo mucho tiempo para hacer nada más lo que significa que no puedo tomar más trabajo porque no pude terminar nada, esa es una buena política, debes tomar lo que puedas.

Recuerde también que debe tener tiempo libre y muy importante es descansar lo suficiente porque si no lo hace no será muy productivo. La clave aquí es la planificación y la disciplina.

En mi tiempo sin codificación lo pasé con mi esposa, también me gusta salir de la ciudad y tratar de no pensar en mis proyectos, cuanto más hago este equilibrio, más productivo soy.

Cuando no trabajo mucho me gusta leer blogs de programación y también me gusta estudiar programación.

Y finalmente me gustaría decir que en mi Humilde opinión nuestra carrera no debe verse como una obra, sino que debe verse como algo divertido.

 2
Author: Nelson Miranda,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-17 07:34:31

Soy un desarrollador de software en un departamento de I + D que trabaja 40 horas a la semana.

Yo gasto como... el 10% de mi tiempo en realidad codificando. En mis horas sin codificación, principalmente pruebo, evalúo, comparo y anoto los resultados. También paso mucho tiempo escribiendo especificaciones para el código que escribiré e investigando para el código que escribiré, participo en reuniones de lluvia de ideas para los proyectos actuales, etc.

Podría decir que de mis compañeros de equipo (también desarrolladores de software) yo soy el que codifica la mayoría en este momento; pero depende de qué tarea trabajemos en cada momento. No cuantificaría realmente la codificación como trabajo duro. Si hay una buena especificación, una investigación adecuada y una buena comprensión del proyecto, la codificación es solo un formality y continúa casi sin problemas y rápidamente.

Aquí tenemos una oficina compartida, con dos equipos. En su mayoría estamos codificando solos, rara vez en un par. Mi trabajo cambia mucho la cantidad de tiempo que estaba codificando; en el pasado pasaba la mayor parte de mi tiempo codificando, sin una muy buena comprensión de la codificación. Si tuviera una tarea, empezaría a codificar inmediatamente, y volver a codificar cada vez que me diera cuenta de que hice algo mal y así sucesivamente. Y fue muy ineficaz.

La metodología de desarrollo está en algún lugar entre el prototipado y la espiral ahora. Ha cambiado claramente el número de horas I código.

Estoy contento con mi productividad, relacionada con mis plazos y objetivos.

 1
Author: Coral Doe,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-21 07:33:49