¿Quieres ser un arquitecto de software?


El Arquitecto de Software es visto hoy en día como un integrante fundamental de los equipos de desarrollo de software empresarial. Ante esta situación, es interesante conocer que se requiere para ser un buen arquitecto de software, por lo cual, basado en una petición de Oscar Galicia y una solicitud de linkedin, presento este artículo dinámico en base a mis experiencias y a las de otros arquitectos:

Lo primero que se requiere para ser un arquitecto de software es querer ser un buen arquitecto de software. Esto puede parecer obvio o irónico, pero para nada es así. Estoy siendo sincero y me baso en artículos de prestigiadas revistas e instituciones (véase mi post “Como ser el mejor programador del mundo”).

  • Haber participado directamente en al menos 2 proyectos de software grandes, donde existan requerimientos conflictivos entre si de parte de varios participantes (Stakeholders). Esto implica mas de 5 años de experiencia profesional, el buen vino toma su tiempo.
  • Amplio conocimiento de alguna de las plataformas empresariales (.Net, J2EE o ahora Ruby on Rails)
  • Conocimiento profundo de las características de los atributos de calidad y lo que implica conseguirlos y balancearlos (Escalabilidad contra sencillez por ejemplo)
  • Experiencia en todo el ciclo de vida del desarrollo de software (véase el peligro del non coding architect, aunque esto no significa que tenga que continuar codificando en una base diaria)
  • Saber trabajar en equipo, Habilidad para convencer y guiar al equipo.
  • Habilidad para mantenerse constantemente actualizado en los aspectos tecnológicos y de negocios de su industria.
  • Intensa empatía hacia los interesados en los proyectos en que participa, si solo piensa en su área esta frito. Debe de poder ponerse en los pies del resto de los participantes y entender sus preocupaciones. No existe arquitectura que sea buena si no es en función de las necesidades de sus interesados (stakeholders).

Lens sobre arquitectura de software

11 comentarios

  1. Hola Jorge, muy interesante tu artículo. Me gustaría hacerte una pregunta para saber tu opinión. ¿Consideras que un buen arquitecto tiene que tener conocimiento amplio sobre los diversos patrones de diseño de software que existen?.

    Saludos.

    • Sin duda los patrones de diseño son una de las herramientas basicas para realizar un buen trabajo.
      Solo hay que que tener cuidado de considerarlas como posibles soluciones, no como las soluciones obligadas. Todo depende del contecto del proyecto.

  2. Sin duda el conocer soluciones ya probadas puede facilitarte el trabajo. Lo importante es evitar la paralisis de forzar las soluciones para que apliquen a los problemas.

  3. Es interesante tu forma de verlo, que opinas separar un poco las labores de un arquitecto a las de un gerente o líder de proyecto, ya que en múltiples casos la mayor comunicación con el grupo la tiene el líder que es quien hace la función de traductor, tanto con los clientes como con los desarrolladores.

  4. Hola Jorge, muy interesante tu articulo, aprovecho para compartir uno mio en dnde traté de explicar el porque es necesario un arquitecto de software utilizando referencias a fuentes importantes sobre el tema.
    Para mi es importante recibir todo comentario sobre la nota,quiero ver que tan bien estoy orientado en el tema.

    http://ssalanitri.blogspot.com/2009/05/por-que-es-necesario-un-arquitecto-de.html

    Saludos desde Argentina.

  5. hola que tal muy interesante tu articulo..quisiera hacerte una pregunta.. el arquitecto por si solo no puede hacer todo el trabao verdad..que personas deberian el contratar o que recursos deberia adquirir para u nproyecto de software..

    Gracias
    Saluditosss

    • Claro que ni el arquitecto ni nadie del equipo puede hacer todo. El trabajo se debe distribuir entre los diferentes elementos del equipo, aunque si es recomendable que un equipo cuente con todo el personal necesario para entender y entregar el software requerido para que los usuarios cumplan con sus funciones:Analistas, arquitectos, probadores, programadores, etc.

      Gracias y saludos

  6. Cordial saludo:

    Gracias por tu articulo, tengo una pregunta, tu consideras que una persona que no haya trabajado en empresas de desarrollo, pero que ha desarrollado software en empresas diferentes pequeños pueda llegar algún día hacer un arquitecto de software, si seria bueno qeu se especializara en esta area?

    Gracias por tu respuesta

  7. Hola Jorge.

    He encontrado tu artículo buscando otra cosa. Actualmente me soy Administrador de bases de datos con varios años de experiencia, pero me llama últimamente cambiar. El área que me parece más interesante es precisamente la de Arquitectura (en mi caso me llama más la de Sistemas🙂, pero no descarto la de software).

    Por ese motivo, estoy leyendo mucho últimamente en cuanto a metodologías y demás y me he topado primero con TOGAF y luego con IASA. ¿Crees interesante seguir por ahí, o recomiendas otra vía para el “reciclaje”?

    Muchas gracias

  8. Hola me llamo Alexis, muy buen artículo, quisiera saber cual es la linea que debo de seguir para llegar a ser un buen arquitecto de software, soy desarrollador con 3 años de experiencia, qusiiera saber en que tengo que capacitarme.. si tienen alguna info mi correo es: alexi_584@hotmail.com

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: