Los desarrolladores principiantes pueden cometer una variedad de errores comunes que normalmente se van puliendo con la experiencia. Estos pueden clasificarse en diferentes categorías, por ejemplo, errores asociados a la programación, con las habilidades blandas de las personas o con los recursos disponibles. En esta ocasión queremos compartir aquellos asociados a la implementación de sus proyectos.
1. Expectativas poco realistas de los desarrolladores
Es muy importante hacer un buen cálculo de los recursos, tiempos y costos necesarios para llevar a cabo el desarrollo. Nadie desea contratar un servicio o realizar un trabajo pensando que se va a demorar 6 meses y le va a costar X cantidad de dinero, solo para descubrir que realmente le tomará el doble de tiempo y los costos se le triplicarán.
Por lo tanto, establecer expectativas realistas frente a estos dos temas, gracias a una adecuada planeación y análisis, es fundamental. Aprender a calcular correctamente los tiempos y los costos, considerando los recursos disponibles, es clave en cualquier proyecto.
2. Incorrecta gestión de riesgos
De la mano con el punto anterior, es vital que se haga un buen análisis de los riesgos del proyecto y de las acciones para mitigarlos, de tal forma que el plan de trabajo no se detenga o se retrase por riesgos imprevistos en el análisis. Se requiere entonces identificar al menos los riesgos conocidos y los predecibles, ya sea que se trate de la tecnología, las personas, el contexto, el mercado, los competidores y/o el gobierno para estar preparados y con un plan de acción, en caso que algunos de los riesgos identificados ocurran.
Hacer este ejercicio de planeación permite alinear las expectativas para que sean más realistas, dependiendo de la posibilidad de que ciertos riesgos sucedan y de su criticidad. Si se identifican muchos riesgos con alta probabilidad de ocurrencia y criticidad es necesario establecer un marco de acción más amplio. Por el contrario, si las probabilidades son muy bajas y su impacto no es muy alto, entonces el plan puede proceder como se estima.
3. No involucrar al usuario
En la implementación, lo más grave es no involucrar permanentemente al usuario final o cliente. Su participación es fundamental para que los desarrolladores vayan recibiendo retroalimentación constante que permita hacer ajustes en tiempo real. De esta forma se evita llegar hasta el final, solo para reconocer que hay que reconstruir gran parte del proyecto. Entre más rápido se detecten aspectos a corregir, menos tiempo y dinero se desperdiciará.
Te puede interesar: La pesadilla de los desarrolladores, más de 2 reuniones e interrupciones.
Adicionalmente, el cliente es el que determina el éxito del software, pues si el usuario no lo aprueba o considera que no resuelve la necesidad o el deseo que se identificó, entonces el proyecto ha sido en vano.
Otro aspecto fundamental, no es sólo involucrar al usuario para que el software cumpla su propósito, sino que lo haga de la mejor forma, considerando la interacción que el usuario va a tener con el sistema para que sea la mejor experiencia posible.
4. Controles de calidad insuficientes
De forma similar al error anterior, hay que correr pruebas permanentes para garantizar que el software funcione adecuadamente. Estos deben hacerse de cara al usuario y a la funcionalidad misma, especialmente si se trata de integraciones con otros sistemas o si se incluyen plugins externos, por muy reconocidos que sean. Confiar ciegamente en estas herramientas o tecnologías externas puede salir costoso si no se hacen las respectivas validaciones para garantizar la calidad del resultado.
Otro error muy común, asociado a la falta de controles, es el de no revisar el desempeño en todos los navegadores principales. Para esto, Toptal recomienda a los desarrolladores estar cambiando de navegador frecuentemente, para no tener que dedicar tiempo exclusivo a los controles, sino que se realicen mientras se programa. Igualmente se recomienda no usar códigos específicos de ciertos navegadores.
5. Falta de motivación de los desarrolladores
Las personas no funcionan como un software que ofrece resultados consistentes si la programación está bien hecha. Por el contrario requieren una serie de elementos adicionalmente para que estén permanentemente comprometidos y motivados con el desarrollo del sistema. Por eso una buena comunicación es la clave para monitorear el estado emocional de los miembros del equipo y poder así intervenir oportunamente cuando aparezcan factores de desmotivación, estrés u otros que puedan afectar el desempeño.
Mantener una cultura de motivación y compromiso, gracias a un propósito en común, es vital para el logro de los resultados. Es por este motivo que muchos de los inversionistas al momento de considerar invertir en una Startup ponen mucha atención a los socios, pues son ellos una garantía fundamental de que el proyecto saldrá adelante. Si los que participan del proyecto no están lo suficientemente comprometidos y motivados, es una señal clara de fracaso.
Enter.co/dev es una colaboración con Coderise.org y Holberton School Colombia para promover la comunidad de programación en Colombia.
Imagen: Yan Krukov en Pexels.
Creo que el titulo de esta publicación esta mal, a no ser de él termino de “Desarrollador” abarque gestión de proyectos. Deberían de ser más cuidadosos con estas publicaciones.
Creo que son errores de un Scrum Master o Gerente de proyectos no tanto de un developer