¿Cómo cambio mi carrera de desarrollador de software a arquitecto de empresa? ¿Qué habilidades debo aprender?

Y ninguna de esas habilidades técnicas es lo más importante.

Enterprise Architecture es mucho más acerca de las personas que de la tecnología. Sí, necesita conocer la tecnología a un nivel más “amplio” que como desarrollador de software. Pero, lo que es más importante, debe desarrollar experiencia en cómo el lado humano de la empresa afecta las decisiones técnicas y cómo las decisiones técnicas afectan a los humanos.

Como desarrollador, obtienes requisitos y tienes que descubrir cómo persuadir a una máquina tonta para que salte algunos obstáculos para satisfacer esos requisitos. Si trabaja con un analista de sistemas calificado, ella ya habrá hecho las preguntas difíciles, por lo que solo le preocupan los detalles técnicos. Si ya está trabajando dentro de una arquitectura adecuada, ya tiene las barandillas que lo alejan de tomar decisiones técnicas realmente estúpidas.

Como arquitecto empresarial, el trabajo es mucho más complejo y ambiguo. Básicamente, está creando una estructura, en gran parte lingüística, para permitir que los desarrolladores colaboren de manera efectiva en el contexto de los requisitos comerciales cambiantes.

Trabajará con requisitos de mucho más alto nivel. Esos requisitos a menudo involucrarán muchos otros sistemas que usted no controla. Los requisitos provendrán de una gran cantidad de personas con agendas competitivas y diversas realidades políticas que afectarán los diseños de su software.

En este momento, cada vez que se enfrente a requisitos cambiantes, en lugar de quejarse y gemir acerca de lo estúpidos que son los empresarios y por qué no pueden simplemente cumplir con sus requisitos en primer lugar, investigue para averiguar por qué los requisitos cambiaron. Esa investigación tendrá dos propósitos. Primero, aprenderá más sobre los contextos comerciales y políticos que impulsan los cambios en los requisitos. En segundo lugar, practicará discutir con tacto los requisitos con una actitud de colaboración.

Será difícil convertirse en un arquitecto de empresa sin la tutoría de otros arquitectos. Los arquitectos necesitan hacer muchas preguntas de “por qué”. La forma más fácil de aprender esta habilidad es haciendo estas preguntas a arquitectos experimentados.

En pocas palabras, no aprenderá Arquitectura Empresarial de los libros. Es un trabajo de personas. Lo aprenderás de la gente.

Las mismas habilidades pero desde una perspectiva diferente. Hasta ahora necesita conocer los componentes básicos de la programación en Java. Ahora necesita saber sobre la administración de la memoria Java, cómo se comporta de manera diferente con los diferentes sistemas operativos, las características que se introducen con cada versión y por qué.

Hasta ahora sabía cómo usar frameworks y su integración en la aplicación. Ahora necesita saber qué versión de framework es compatible con qué versión de Java. Diferencia entre marcos y cómo elegir entre ellos.

Hasta ahora ha estado utilizando bibliotecas para su aplicación. Ahora puede que tenga que trabajar en las bibliotecas que utilizarían los equipos de su organización.

Hasta ahora has estado siguiendo la arquitectura técnica de la organización y creando aplicaciones. Ahora puede que tenga que trabajar en la arquitectura de factorización, ayudar a otros equipos y ayudarlos a proporcionar la base para la creación de nuevas aplicaciones.

En cuanto al conjunto de habilidades requeridas, patrones de diseño, estilos de arquitectura, mecanismos de seguridad, marcos disponibles en Market, funciones de lenguaje, etc.

Permítanme comenzar diciendo que hay muchas maneras de llegar a la carrera de Enterprise Architect. Algunos lo hacen solo con un fondo sw pero yo diría que carecen de habilidades importantes y serán limitados. Aquí hay algunas habilidades que creo que serán necesarias.

  1. Es necesario comprender los impulsores comerciales, especialmente los impulsores económicos internos y externos.
  2. Comprender la política interna.
  3. Necesita tener la capacidad de comunicarse formal e informalmente internamente, externamente, tanto en la administración superior como en los empleados.
  4. Necesidad de establecer redes dentro de la empresa y externamente
  5. Debe comprender tanto la implementación de sw, hw y de redes, tanto interna como externamente, y las ventajas y desventajas de las diferentes opciones.
  6. Necesita comprender la tecnología operativa, la organización y la estructura. es decir, suponga que el equipo de soporte cambia debido a un cambio de contrato.
  7. Necesito ser flexible

Este es un proceso de cambio continuo. Sé flexible de muchas maneras. Asegúrese de comunicarse de arriba a abajo en el camino. Nunca arroje una arquitectura sobre la empresa sin una preparación y comunicación importantes y a largo plazo.