Todo esto se lleva a la perfección en una gran empresa, pero que sucede en la pequeña. En una pequeña empresa puede que tengas tus roles definidos en el contrato, peor a la hora de la verdad haces de todo, si te dedicas a la parte de harware por ejemplo, arrglas todo lo que tenga tornillos, desde ordenadores a cajas registradoras, porque como en tu maletín llevas un par de destornilladores y esas maquinas do demo tienen tornillos.... pues está claro.
Que pasa si te dedicas a la sección de desarrollo, seguramente trabajes con diseñadores, analistas, programadores,etc... claro, estos roles están bien definidos, pero entran proyectos, y la manera de afrontarlos es:
Juanito, ponte con esa web, Pepito cuando acabes con esa web ponte con esa aplicación, y Juanito que es programador, se ve de la noche a la mañana haciendo un análisis de una aplicación web, porque el analista, marquitos, está ocupado testeando otra aplicación que tenía que estar lista hace una semana y que falló a la hora de hacer la implantación en el cliente final, así que Juanito realiza la definición de requisitos el analisis, las visitas al cliente y de todo, seguramente no tenga esperiencia en este campo, pero "que más da que el proyecto se retrase, así aprende con un caso real", así que empieza a desarrollar el proyecto, como un buen programador de recursos, tiene agilidad en el desarrollo, y algunas librerías hechas con anterioridad y siguiendo algún patrón, pues digamos que termina la primera fase de desarrollo medianamente rápido, bien por Juanito, pero ha llegado el punto del proyecto que debe generarse alguna release en versión alpha para presentar al cliente final, y toca diseñar un poco, así que Juanito avisa que necesita la inestimable ayuda de Pepito (el diseñador), pero Pepito no puede ayudar a Juanito, por que? porque está bastante liado con la aplicación, que no tenía mucha idea de programar, pero "que más da que el proyecto se retrase, así aprende con un caso real", y claro luego esa aplicación hecha por un diseñador, con las 4 palabras que sabía de programación, pues funciona... pero como funciona? Recemos a dios que el cliente no pida una modificación y haya que cambiarla, escalarla, etc... Y la documentación? has tenido tiempo a hacerla, mientras aprendías a programar en 7 días con el libro de "aprenda desde 0 con mi método SeSeSe". En realidad, no es culpa del diseñador, sino de quien le mete en esos fregados.
Y que ha pasado con Juanito, nuestro programador, tiene que diseñar un interfaz web, porque el proyecto ya va justo, y no puede esperar a que Pepito acabe su app, así que armado de valor, se instala un programa de retoque de imágenes, repasa los nombres de las fuentes, se crea un css a golpe de tecla, porque recordemos que Juanito es programador, seguramente opte por crear una hoja de estilos picando el código, que fedellando con algún programa de diseño, que le haga cosas raras, por desconocimiento del mismo, porque una aplicación tiene una potencia increible, cuando la controlas, sino el retraso será inminente.
El resultado de todo esto, retraso en la entrega de los proyectos, poca o ninguna documentación de los mismos (si se que es un coñazo, pero hay que hacerlo), aplicaciones enormemente parcheadas, etc...
Esta es alguna de mis barrenadas de esta mañana, cualquier parecido con la realidad es pura coincidencia :-)
Saludos a tod@s