Cómo convertirse en un buen arquitecto de software

Me alegra que hayas hecho esta pregunta. Me hacen preguntas similares con bastante frecuencia. Mi primer consejo sería encontrar un mentor (alguien con buena experiencia en programación). Idealmente, recomendaría unirse a una startup como pasante con un objetivo de aprendizaje tanto como sea posible.

Paso 1 : comience a crear aplicaciones pequeñas : dado que conoce los conceptos básicos de Python, comience a construir aplicaciones pequeñas, diga una lista de tareas o una aplicación de chat usando Simple Python / Java. Muestre esto a su mentor y solicite su opinión. Haz cambios basados ​​en sus comentarios.

Paso 2 : marcos : existen algunos marcos excelentes de Python / Java que facilitan la vida de los programadores. Sugeriría aprender el marco de Python Flask ya que es muy fácil de aprender. Reconstruya la misma aplicación que creó en el paso 1 utilizando un marco de Python. Muestre esto a su mentor y solicite su opinión.

Paso 3Mejora tu código – Lee el código escrito por buenos desarrolladores (Github tiene un montón de ellos). Esto le dará una idea de mantener un estilo de codificación y buenas prácticas de codificación. Implemente las mejores prácticas en sus módulos.

Paso 4 : una vez que se sienta cómodo con las cosas básicas, intente agregar más funciones. Pruebe diferentes tecnologías para las mismas tareas. Use bases de datos SQL y No-SQL en su aplicación y aprenda cómo difieren.

Paso 5 : experimente con otros marcos de Python como Django, Tornado twisted, etc., vea su aplicación y la diferencia entre ellos.
Eventualmente aprenderá qué plataforma es apta para una tarea en particular. Tecnología ideal para tareas particulares. Esto es importante ya que una tarea se puede hacer con una pila de tecnología diferente y uno de los deberes importantes de un arquitecto es encontrar la pila Ideal para un proyecto.

Paso 6 : comience a contribuir a proyectos de código abierto o solicite programas como google summer of code. Siempre aprende, desafíate y esa es la única forma de mantenerte motivado.

Paso 7 : no estoy seguro de si sabes lo que hace un arquitecto de software.

Un arquitecto de software toma decisiones de diseño de alto nivel y dicta estándares técnicos que incluyen estándares de codificación de software, plataformas y herramientas. En este nivel, solo el conocimiento del idioma no será suficiente. El conocimiento de múltiples idiomas, tecnologías de marcos es necesario. Un arquitecto de software elige la tecnología en función del problema que necesita resolver. Experimentar, fallar y volver a experimentar es la única forma de aprender esto.

En un proyecto con múltiples grados de complejidad, el arquitecto de software tiene que ver la imagen más grande aquí y tiene que elegir la tecnología adecuada en cada parte, la mejor manera de aprender esto es ser parte de un equipo que crea una aplicación compleja. Recomendaría unirse a una startup que construye una aplicación compleja.

Dedica los primeros dos años de tu carrera a aprender cosas. Esto le dará una base sólida para llevar su carrera al siguiente nivel. Mi startup usa muchas cosas de Pythonic para construir una plataforma de análisis y extracción de datos distribuidos. Si está interesado en unirse, envíe un correo electrónico a [correo electrónico protegido]  

More Interesting

¿Puede alguien con discalia convertirse en un científico de datos?

¿Debo permanecer como voluntario de una fiesta no técnica a nivel nacional 'Paramarsh' de mi universidad?

Soy un joven abogado que trabaja en Estados Unidos y quiero mudarme a Italia. Tengo amigos italianos y un conocimiento práctico del idioma italiano. ¿Cómo puedo hacer un traslado permanente a Italia?

¿Son comunes las oportunidades de investigación para estudiantes universitarios de estadística y matemáticas?

¿Debo tomar un trabajo de TI o un trabajo de administración para emprender?

¿Cómo se mejora continuamente la seguridad profesional como ingeniero de software?

¿Puedes conseguir un trabajo en UX con solo un certificado UX y una cartera de la Asamblea General?

En la India, ¿por qué alguno de los 12 estudiantes desmayos pensó que tenían que completar la graduación con ingeniería?

¿Qué proyectos en mi currículum impresionarán a las personas que contratan programadores para grandes empresas basadas en productos como Flipkart y Amazon en la ubicación del campus?

¿Cuál es la mejor manera de mostrar habilidades de modelado financiero si no ha trabajado en un banco de inversión en el pasado?

Me especialicé en radio y televisión, pero quiero convertirme en neurocientífico cognitivo. ¿Dónde empiezo a lograr esto?

¿Cuáles son las habilidades necesarias para un ingeniero de procesos de semiconductores?

Cómo venir a Estados Unidos y conseguir un trabajo para sobrevivir mientras la política de inmigración se hace cada vez más difícil

Si alguien quería obtener un trabajo después de la universidad como analista financiero, ¿es preferible tener una licenciatura en ingeniería o finanzas?

¿Cuál es el futuro para un ingeniero mecánico que comienza como operador de CNC?