La arquitectura de software ¿es un rol o una habilidad? - Santiago Sánchez
Clase 14 de 42 • Platzi CONF 2022
Contenido del curso
Expert stage
- 3

El estado general Platzi - Team Platzi
56:42 min - 4

Cómo construir riqueza viviendo en LATAM - Freddy Vega
34:24 min - 5

Cómo cripto va a cambiar el futuro y aún no lo sabes - Christian Van Der Henst
38:27 min - 6

Viaje de vida a los Balcanes - Diana Uribe
54:30 min - 7

Tips para predecir el futuro - Alexander Torrenegra
32:46 min - 8

Pierde el miedo a desplegar a producción en viernes - Miguel Ángel Durán
31:55 min - 9

La senda del freelance - Brais Moure
28:53 min - 10

El secreto mejor guardado de la educación digital - Marcelo Cataldo
24:44 min - 11

Construyendo un futuro descentralizado en Web3 con BNB y Platzi - Mariangel García
25:06 min
Tech Stage
- 12

Si JavaScript fuera una app de citas - Estefany Aguilar
13:52 min - 13

Evita las trampas mentales de Web3 - Angela Ocando
17:16 min - 14

La arquitectura de software ¿es un rol o una habilidad? - Santiago Sánchez
Viendo ahora - 15

¿Puedo hacer todo con un solo lenguaje? - Ricardo Celis
12:46 min - 16

Mujeres modernas: rompiendo paradigmas de empleo en carreras tech - Mayra Rodríguez
13:17 min - 17

Cómo dar tus primeros pasos en Web3 - Oscar Barajas
18:05 min - 18

Cómo mantener una aplicación de Node.js en el tiempo - Adrian Estrada
16:49 min - 19

¿Es realmente la Ciencia de Datos el trabajo más sexy de este siglo? - Carlos Alarcón
14:12 min
Business Stage
- 20

Prototipos financieros: diseña tu vida financiera a tu gusto - Liliana Zamacona
13:44 min - 21

Construyendo estrategias exitosas con datos correctos y consumidores reales - Paula Gaviria
14:35 min - 22

Habilidades y empleo: ¿cómo prepararme para el futuro que quiero? - Natalia Jaramillo
12:24 min - 23

Cómo manejar tus finanzas en tiempos de crisis - Juan Camilo González
16:10 min - 24

Bad Bunny tiene pasaporte gringo: cómo tú y América Latina se van a comer el mundo - Eugenio Perea
13:42 min - 25

Domina tu vida con la negociación - Camila González
12:42 min
Creative Stage
- 26

Nunca pares de aprender - Diana Reyes
15:20 min - 27

No se enrede: cambiando a los titanes publicitarios - Alejandro Pacheco
26:00 min - 28

La investigación como brújula para la innovación - María Isabel Murillo
18:18 min - 29

Crea tu marca personal y no mueras en el intento - Marcela López
16:06 min - 30

La creatividad siempre está ahí - Sergio Aristizábal
15:41 min - 31

La gracia de hacer podcasts - Laura Rojas Aponte
11:59 min - 32

Me lleva el Chanfle!: crear contenido y comunidad aprovechando tus pasiones - Luis Ávila
16:40 min - 33

¿Para quién crees que creas? - Nicolás Ortega
18:15 min
Ignites
- 34

De estudiante a profe Platzi y ahora en una Startup - Daniel Valdivieso
05:04 min - 35

No hagas lo fácil: cómo la disciplina se sobrepone a la motivación - Geraldinne Bohórquez
05:03 min - 36

¿Podemos ser chicas STEM? - Johana Alarcón
04:58 min - 37

Elevando tu carrera en tech - Leomaris Reyes
04:55 min - 38

WebAssembly ¿Es el futuro de la Web? - Nicolas Molina
05:00 min - 39

Cómo mantenerse empleable - Adriana Medina
04:55 min - 40

Ownboarding: El arte de triunfar en tu nuevo trabajo - Mariana Gómez
05:00 min - 41

Genera hábitos de estudio y llega al trabajo de tus sueños - Santiago Tellez
04:49 min - 42

La ciencia del amor - Ana Belisa Martínez
04:54 min
Tomar examen
¿Cuál es la diferencia entre arquitectura, patrón arquitectónico y estilo arquitectónico?
En el vasto mundo del desarrollo de software, estos términos pueden generar mucha confusión. Comprender sus definiciones es clave para cualquier aspirante o profesional dentro del campo. La arquitectura es el marco para describir los diferentes elementos de un sistema que buscan resolver una necesidad de negocio, como servicios de Backend, Frontend o paneles de datos. A diferencia de esto, un patrón arquitectónico es una solución recurrente a un problema de diseño de software, como el patrón MVC (Modelo-Vista-Controlador), que busca separar las responsabilidades entre la UI y el modelo.
Por otro lado, un estilo arquitectónico es un enfoque para darle forma y nombre a un mecanismo de implementación, como los microservicios o los monolitos, sin necesariamente resolver un problema específico. Los estilos arquitectónicos se enfocan más en cómo logramos implementar los elementos del sistema, pero no ofrecen necesariamente una solución a un inconveniente concreto.
¿La arquitectura es una habilidad o un rol?
En el contexto laboral, esta es una pregunta bastante relevante. A menudo vemos el término "Software Architect" en búsquedas laborales, lo que puede hacer pensar a algunos que es un rol específico dentro del desarrollo de software. Sin embargo, la idea detrás de considerar la arquitectura como una habilidad proviene de que todas las personas involucradas en un proyecto de software deben, en alguna medida, participar en decisiones arquitectónicas.
De esta manera, la arquitectura se convierte en una capacidad que permite a los equipos tomar decisiones informadas sobre cómo describir comportamientos y resolver problemas de negocio, optimización, o escalabilidad. Además, fomentar esta habilidad dentro del equipo permite descentralizar la toma de decisiones, potenciando la colaboración y el crecimiento profesional de cada miembro.
¿Cómo contribuir al desarrollo del software entendiendo la arquitectura?
Colaborar en un equipo de desarrollo implica no solo centrarse en la implementación del código, sino también en aspectos que impactan en la calidad del software. Aquí te dejamos algunas recomendaciones y puntos a considerar:
-
Conciencia de Atributos de Calidad: No basta con pensar en las funcionalidades visibles del software; también es crucial considerar atributos de calidad como mantenibilidad y performance. Evaluar cómo se testea y despliega el código es esencial.
-
Comprender el Ciclo de Desarrollo: Es importante entender los procesos desde el backend hasta la infraestructura, aunque no se convierta uno en experto en todos estos campos. Este conocimiento integral aporta en la mejora continua del software.
-
Reconocer los Compromisos o "Trade-offs": Toda decisión en el software implica un compromiso. La capacidad de identificar estos compromisos permite presentar soluciones más efectivas a corto y largo plazo.
Finalmente, es fundamental enfatizar la importancia del aprendizaje constante. El software es un campo dinámico, y la actualización continua mediante la lectura diaria de incidentes y contextos de la industria puede significar la diferencia en la calidad de las decisiones que tomamos en nuestros proyectos.
Así que sigue investigando, aprende algo nuevo cada día, e involúcrate en decisiones que impacten positivamente en la estructura y funcionalidad del software que desarrollas. Todo esto contribuirá no solo a tu crecimiento profesional, sino también al éxito de los productos y empresas para los que trabajas.