Me gustaría aprender y mejorar mi conocimiento de arquitectura / diseño de software. ¿Cuáles son algunos libros / videos / cursos / estudios de caso recomendados / cualquier cosa que realmente pueda mejorar mis habilidades arquitectónicas / de diseño (rendimiento, escalabilidad, mantenimiento, etc.)?

Hay varios libros de patrones, como los Patrones de Arquitectura de Aplicaciones Empresariales, que vale la pena estudiar y guardar en memoria. Si no has estudiado el libro de Patrones de diseño de Gang of Four, ese es un comienzo esencial, pero no te detengas con patrones de bajo nivel. Mover a arquitecturas enteras.

Entonces, sugeriría estudiar lenguajes visuales, comenzando con el más fácil: UML. Aprende a comunicarte completamente en imágenes. Otros paradigmas visuales son necesarios, así que no te detengas en UML. Aprenda BPML y VDML y cualquier otro que pueda ser personalmente relevante para usted.

Entonces necesitas practicar. Practique expresar la separación de preocupaciones en sus sistemas actuales en lenguaje visual. Practique la expresión de arquitectura de componentes y modelos de procesos. Practique el uso de diagramas de interacción para expresar modelos de actividad y dominio concurrentes para expresar la alineación de la información con maestros de datos sistemáticos.

Ábrete camino a través de problemas no solo de seguridad y escalabilidad, sino también de responsabilidad y simplicidad.

Buena suerte.

Realmente me gustan los Patrones de diseño de Gang of Four, pero creo que tendrá los mismos problemas para usted que la mayoría de los otros libros. En general, el material escrito sobre arquitectura de software es muy abstracto. Dependiendo de la cantidad de experiencia que tenga con la arquitectura, eso puede no ser suficiente.

La mejor manera de mejorar es con la práctica. Si usted es el ingeniero más experimentado de su organización, piense en cómo podría mejorar cada sistema existente que tenga. ¿Cuáles son los problemas que enfrenta con ellos todos los días? ¿Qué mejoras puedes hacer? ¿Hay inconvenientes en las mejoras que está considerando? Encuentre arquitectos en otras compañías y reciba comentarios sobre sus pensamientos.

Si está en una organización que tiene un grupo de otras personas que generalmente toman las decisiones arquitectónicas, aún puede pensar en todas esas cosas. Todavía puede pensar en formas de implementar un sistema en el que los arquitectos estén trabajando actualmente. Puedes preguntarles sobre tus ideas. Los comentarios que recibas de ellos te darán la experiencia que necesitas para mejorar. Lo importante es asegurarse de que está pasando por el proceso de pensamiento de diseño del sistema. Claro, los arquitectos pueden explicarte por qué eligieron hacer algo, pero por lo general ni siquiera piensan en contarte sobre las docenas de ideas que arrojaron. Saber cuándo y por qué desechar una idea es fundamental. No obtendrá eso simplemente escuchando sobre la solución final.

Nota al margen: si estás en una organización donde los arquitectos no te hablarán por el título o no, es hora de encontrar una nueva organización.

Busque el podcast de radio de ingeniería de software en Google. Es un podcast de alta calidad y lo ayudará a tener una idea general sobre varios temas en ingeniería de software. Cada podcast tiene enlaces a varios recursos para comenzar sobre el tema que se discute.

More Interesting

Siendo ingeniero, ¿cómo debo prepararme para una entrevista de escritor técnico?

¿Debo aceptar una posición SDET en microsoft si no estoy demasiado interesado en las pruebas, pero me parece semi-interesante? Qué fácil es cambiar internamente a SDE. Me gradué este semestre pero tengo la opción de ir a la escuela de posgrado en CS

¿Qué debo hacer para mejorar mis habilidades de habla para TOEFL si la mayoría de las personas dicen que no entienden lo que estoy diciendo?

¿Algún buen ejemplo de usos para el sistema de recomendación basado en la ubicación?

¿Debería unirme a IISC Bangalore para obtener un título de ME en CSE o IIT Kanpur para obtener un título de M.Tech en CSE, teniendo en cuenta que quiero estudiar académicos y luego obtener un Ph.D. de la propia India?

Tengo 6 años de experiencia en centrales térmicas, ¿a qué otro sector me puedo mudar?

Cómo cambiar carreras de un campo no técnico a seguridad de la información

¿Aceptan los profesores una solicitud de pasantía para un estudiante de segundo año si está interesado en el proyecto y estudió el tema?

¿Todos tienen su objetivo fijo en sus estudios?

Soy un B.Tech 2015 desmayado. ¿Cuáles son mis posibilidades de encontrar un trabajo si escribo un ELitmus ahora?

¿Necesito aprender un lenguaje compilador para trabajar en el campo de la PNL como lingüista computacional o ingeniero de la NLU?

He escrito un libro para niños / AA que creo que es comercializable. ¿Dónde puedo encontrar un ilustrador que esté dispuesto a ilustrar una parte del producto de la venta?

¿Cuál es el criterio para que un maestro ad hoc se convierta en facultad permanente en DU?

¿Debo ir por un maniquí durante 9 meses en CA?

¿Cómo empiezo con el desarrollador PHP independiente? Tengo 1.2 años de experiencia en desarrollo de PHP.