La agilidad es una forma de abordar un desafío, principalmente el desarrollo de software. Viene a romper los esquemas tradicionales de llevar a cabo los proyectos, con el foco de hacer que el usuario sea partícipe del proceso.
Lo que busca evitar es que cuando un desarrollo completo termina recién sea entregado al usuario. Lo que solía pasar era que el usuario levantaba miles de requerimientos nuevos y no le gustaba el entregable, dilatando así los plazos. Para solucionar esto, el manifiesto ágil define principios base que debemos seguir para mejorar el proceso de desarrollo de software para no dilatar los plazos y hacer partícipe a los usuarios de manera de cumplir sus expectativas al máximo.
A partir del manifiesto ágil han surgido diversas metodologías que buscan definir la forma de trabajar para ser ágiles. De la mano de esto, hay muchas certificaciones que acreditan a las personas con cierto nivel de conocimiento de los frameworks y metodologías. Para qué sirven esas certificaciones? A la hora de contratar a alguien, me dan indicios de que la persona posee un nivel de conocimiento mínimo y por lo tanto puedo estar más seguro en la contratación.
El problema? Para alguien con un martillo todo parece un clavo. Muchos de estos profesionales certificados impulsan sus soluciones conocidas a problemas que no existen. El argumento de las buenas prácticas es muy poderoso, pero es fácil perder de vista los desafíos reales que enfrenta un equipo si nos centramos en forzar las llamadas buenas prácticas.