domingo, 31 de enero de 2010

Arquitectura de software

El modelo de crecimiento profesional instaurado en España para la consultoría informática nos ha llevado a la situación actual en la que es muy difícil encontrar técnicos con experiencia. El progreso y la promoción en consultoría pasa por dedicarse a la gestión de proyectos dejando completamente de lado la carrera tecnológica.

Parece que desde hace unos años se empieza a instaurar la figura del Arquitecto, para intentar dar cordura tecnológica a verdaderas barbaridades que se observan en algunos proyectos. El problema es que este perfil tiene que ocuparlo gente con perfiles generalistas que entiendan de diferentes tecnologías para utilizar las mejores opciones en cada caso, deben entender las implicaciones que sus decisiones van a tener en la implementación.

La mayor parte de los arquitectos que me he encontrado no saben hacer ni un "hola mundo" en java, c, c++, python.... En sus tiempos a lo mejor lo hicieron en el lenguaje X, pero a día de hoy, no son capaces de hacerlo. Y esos perfiles son los que seleccionan productos carísimos para realizar tal o cual funcionalidad, para integrar este sistema con este otro... Cosas que si se tuviera un mínimo de conocimiento de programación no se atreverían a proponer por lo absurdo que resultaría.

En definitiva, al final se realiza un diseño de arquitectura que da toda la risa y que el equipo del proyecto tiene que sufrir. Elevando los costes de desarrollo y mantenimiento exponencialmente. Las direcciones de sistemas deberían empezar a contar con un staff tecnológico cualificado de nivel ejecutivo que fuera capaz de poner un poco de cordura, seleccionando gente adecuada para este tipo de puestos y auditando desde el punto de vista extrictamente tecnológico el impacto económico de las decisiones adoptadas.