Solo llevo un año en la industria y he tenido algunos problemas para hacer estimaciones para tareas específicas. Antes de cerrar esto, sí, ya he leído esto: ¿Cómo responder cuando se le pide un presupuesto? y ese es el mismo problema que estoy teniendo. Pero estoy buscando un indicador más específico de experiencias, algo cuantificable o probablemente el rendimiento promedio de otro programador al que debería aspirar y basar mis estimaciones. Las respuestas van desde semanas, y estaba buscando más una respuesta en el nivel de una tarea asignada por un día más o menos. (Tenga en cuenta que esto no incluye el envío para control de calidad o documentación, solo el tiempo de desarrollo real desde la redacción de las pruebas si utilicé TDD hasta la creación de la página, antes de enviarla a las pruebas)
Mi tasa actual en este momento es la siguiente (en formularios web ASP.NET):
- En este momento, puedo desarrollar una página de entrada de datos simple con una lista de cuadrícula (sin lógica compleja, solo Creando y Leyendo) en una arquitectura ya construida, dado el tiempo de un día completo (8 horas).
- Agregar funcionalidades complejas y las páginas Actualizar y Eliminar agregan otro día completo a la tarea.
- Si tengo que comenzar la página desde cero (sin solución, sin sitio web existente), me lleva otro día completo.
- (No siempre), pero si encuentro algo nuevo o aún no lo he hecho, me lleva otro día completo.
Cada vez que hago una estimación que es más larga de lo esperado, siento que otros piensan que estoy muy rezagado con respecto a todos los demás. Solo estoy preocupado ya que ha habido expectativas de que cuando se trata de una sola página no me lleve más de un día completo. Sí, definitivamente hay más margen de mejora. Siempre hay. Tengo mucho que aprender. Pero me gustaría saber si mi tasa actual es demasiado lenta, solo promedio o promedio para alguien que no tenga más de un año en la industria.
Respuestas:
Si está programando para un trabajo, y sus superiores están contentos con la velocidad a la que está trabajando, entonces diría que lo está haciendo bien. Como ha durado un año, claramente no están indignados con su producción. Además, solo has estado allí un año, y suponiendo que hayan estado administrando personas durante más de un día, saben que hay una curva de aprendizaje cuando aún eres verde.
En cuanto a las estimaciones ... He estado en la industria durante 5 años (ciertamente no es un territorio veterano, ¡lo sé!), Y mis estimaciones personales todavía apestan. Sobreestimo casi tan a menudo como subestimo, y hago ambas cosas mucho más de lo que hago bien. Algo surgirá, en algún lugar, y te morderá. A veces encontrarás una biblioteca que hace todo lo que creías que tenías que hacer tú mismo, y el trabajo de una semana desaparece en medio día. Otras veces, un error estúpido estirará el trabajo de un día a 2, 3, 4 ...
Si repite una y otra vez el mismo trabajo y siente que ha maximizado su rendimiento, tal vez debería pedir que lo trasladen a otra tarea. La 'polinización cruzada' y otros términos amigables con PHB definitivamente son beneficiosos para los desarrolladores. Si pasas un mes o más en otra cosa, tal vez encuentres algo para lo que estés mejor preparado. De lo contrario, o si no puede mantenerse alejado de los formularios web, el cambio no le hará ningún daño, y es posible que regrese con un poco más de conocimiento y experiencia que lo ayudarán.
fuente
Por suerte, si has logrado 1 año como programador verde. Me trasladaron a otra unidad después de solo 9 meses (de los cuales 3 meses estaban programando), por no ser lo suficientemente productivo. Y aprendía más y más cada día, disfrutando el proceso y entregando las cosas a un ritmo constante. Era la primera vez que trabajaba en programación corporativa, ah bueno ...
Tal vez sería mejor hacer el código más sucio y menos confiable con cero pruebas que apenas se mantiene junto con el chicle al hacer la tarea, para que los gerentes obtengan suficiente "productividad" para sus puntos de referencia.
fuente
Puede ser un poco "lento" en comparación con alguien que ha estado programando durante 5 o 10 años, pero todo viene con el tiempo. Probablemente esté haciendo cosas ahora en la décima parte del tiempo como cuando estaba aprendiendo por primera vez, y continuará siendo más fácil. Así es como son la mayoría de las cosas en la vida ... eres lento cuando lo aprendes por primera vez, y gradualmente te vuelves mejor, más rápido y más eficiente. Si practicas lo suficiente, podrías llegar a ser "magistral".
fuente
Si está haciendo cosas que son algo únicas cada vez, llegar a tareas detalladas o obtener una estimación muy precisa siempre será difícil.
Personalmente, me gusta el desafío, pero a veces puede hacerte parecer un poco tonto si solo estás mirando una lista de tareas o una línea de tiempo.
Si está haciendo pruebas a medida que avanza, a veces diría que los ejemplos que dio son bastante rápidos dependiendo de la complejidad de lo que está haciendo. He trabajado en proyectos donde cada elemento, incluso algunos si los elementos dentro de sus viñetas, tenían asignado al menos un día.
fuente
Esto es muy común, si nadie dará una estimación más larga al mirar un problema en detalle, entonces toda la estimación tenderá a ser demasiado corta.
fuente