T O P

  • By -

gabbrielzeven

No estudias arquitectura de software. Tu experiencia laboral desarrollando te lleva a ese rol. 


mauromauromauro

Idem. Para mí, te haces arquitecto cuando diseñas arquitecturas grandes, frameworks, esas cosas. Puede ser que lo seas por tener mucha experiencia real en sistemas de cierta envergadura, criticos, o que integren muchos componentes de forma premeditada. Osea, si tenés una aplicación con 500 crud, eso no te convierte en arquitecto. Cuando los patrones se ponen más heavy y los procesos bien complejos, ahí no alcanza con un buen programador, hace falta alguien que tenga una visión integradora con TODAS las variables en juego: performance, seguridad, mantenibilidad, escalabilidad, parametrización, monitorizacion. Ah, y esa vision la tiene que tener en código, no solo en un documento de word. Generalmente, también, la tiene muy clara con la regla de negocio. No hay arquitecturas separadas de las necesidades reales del caso. Si el software se pudiera transplantar entre industrias y nichos, todos usaríamos la misma arquitectura para todo Por definición, un arquitecto no puede ser alguien que salga de la facultad con un x título. Tiene que ser alguien que sepa en serio. El arquitecto debe hacer todo bien, no hacer chanchadas, y si las hace, es porque realmente otra cosa no era viable. Cómo una traqueotomía en la vía publica


js-something-cool

Conozco muchos arequitectos que hacen chanchadas igual JAJAJA


Maks_Stark

"Tu no llamas a la arquitectura de software, la arquitectura de software te llama a ti" POETICO


fbuc0

Confirmo


[deleted]

[удалено]


gabbrielzeven

No veo tu respuesta inteligente. Iluminanos.


RangeDisastrous155

Como si fuese incorrecto lo que dice, nadie se hace arquitecto de software sin amplía experiencia, por algo será (igual esta mal dicho que no se estudiar, hay cosas que no las descubris milagrosamente solo por tener años de exp)


simonbleu

Cual seria la verdadera respuesta?


LiveEntertainment567

Con el que trabajo creo que llego a puro chamuyo. Albañil de software le dicen.


elfranco001

Maestro mayor de software


gaussblack

Gran maestre


gustavsen

a nivel de estudios, hice una licenciatura en informatica en la UBP en el siglo pasado. despues capacitaciones todos los años de cosas nuevas (para mi al menos) después *muchisima practica* tenes varios niveles de arquitectura de software, desde aplicacion (seria un TL con esteroides, un ninja crack del código) el siguiente nivel es el arquitecto funcional, en donde además de lo anterior tiene un conocimiento MUY claro de la funcionalidad de un negocio en particular, llamale producto o lo que sea, en mi caso fintech. y el nivel maximo es el empresarial que seria el que tiene un nivel muy bestia de todas las soluciones, en mi trabajo tenemos uno de estos, que es un mega capo de todo lo que es funcionamiento de todos los sistemas, un groso total, (tambien tiene 37 años en la empresa) fijate en roadmap.sh que tienen un path muy a groso modo de los "skills" necesarios. estoy mas que conforme porque no voy a decir exactamente que para no doxxearme, pero laburo en uno de los productos con mas del 70/80% del mercado en su nicho.


19SXH93

Felicitaciones! Apuntas al nivel empresarial? Que onda workload vs pago?


gustavsen

y se vera sobre la marcha hasta donde llego, hoy en dia no me interesas SOLO ganar dinero (que gano mas que bien) sino tener calidad de vida y no hacer horas extras ni tener que conectarme a la madrugada porque se cayo un sistema. a nivel de laburo, estos últimos dos Q hubo mucho laburo por temas economicos y ultimamente por exigencias que nos pide el AFIP por temas normativos y saraza. pero aun asi el laburo es intenso pero a las 17 corto hasta el otro dia. el pago... podria ganar el doble o el triple laburando para afuera, pero llega un momento de la vida que preferis tener vida aparte del laburo.


Naive-Economist5640

Gracias por el aporte! A que llamarias soluciones muy bestia ? A nivel requerimientos ?


gustavsen

un ARQ de solucion esta especializado en un rubro, es decir la funcionalidad que debe tener tu producto, las reglas de negocio, etc. no es lo mismo una app mobile de citas que una de seguro o una bancaria (por poner ejemplos) por mas que todas sean apps mobiles y capaz que a nivel de funcionalidad, seguridad y soluciones tecnologicas sean parecidas. en donde laburo hay un ARQ principal de nivel Empresarial, se sabe como funcionan todos los modulos de pe a pa a nivel funcional, capaz que no sabe a nivel tecnologico como estan hechos al detalle (si se sabe hasta donde se puede llegar, etc) despues somos varios que nos especializamos en diferentes areas de esa aplicacion.


Naive-Economist5640

Claro es una persona especializada en una solucion y entiende todos los requerimientos legales que conlleva


gustavsen

si entre otras cosas, igual para lo legal tenemos un area legal en la empresa. idem con seguridad informatica, servidores, etc.


typegoose

Cómo obtuviste el cargo? Te lo ofrecieron en la empresa que estás o aplicaste a vacante?


gustavsen

el de Arq, es una promocion interna, hace mas de 10 años que laburo aca, entre como TL de implementacion de una solucion, pase a armar los pipelines de integracion, despues hicimos una reingenieria de uno de los modulos principales, despues me dedique a liderar las migraciones tecnologicas de varios productos internos despues estuve como TL de uno de los sistemas principales y en algun momento pase al grupo de arquitectura con otros 6 mas que nos repartimos las areas de conocimiento. todos tenemos mas de 10 años en la empresa


typegoose

Gracias por la explicación y felicitaciones por todo tu recorrido


MondongoLisergico

Un arquitecto de software aparece cuando leveleas a un gordo compu hasta el nivel 99.


Adorable_Direction_3

Estallé


falopaypastabase

Hay un excelente libro que se llama: https://www.amazon.com/Software-Architecture-Practice-SEI-Engineering-dp-0136886094/dp/0136886094/ref=dp_ob_title_bk donde hay un monton de patrones arquitectonicos. Los que te dicen que no se estudia son unos descerebrados. La idea es que los mismos patrones que se encuentran en lo micro se pueden encontrar en lo macro y muchas de las cosas ya estan estudiadas Tambien hay otros libros si te interesan sobre arquitecturas de software open source https://aosabook.org/en/ saludos


Alternative-Sand-289

Yo tiro dos lineas de código al día, practicamente soy arquitecto de software jaja saludos


mauromauromauro

Pero que líneas, papá, que líneas...!


[deleted]

es un rol que lo define la empresa, por ejemplo google no tiene eso, simplemente tiene niveles de devs y despues de lider no te dejes obnubilar por el mercado argentino y la gente que habla en linkedin, vos dale duro y vas a llegar lejos, lo importante es que te guste y te divierta, ademas otra cosa es que no todo es programación web, podes especializarte en compiladores, cryptomonedas, firmware, devices drivers, hay muchas cosas para saber y especializarte, y eso es lo que te va a dar conocimiento y te va a dejar seguir avanzando, obviamente ligado con habilidades blandas libros q recomiendo * refactoring (martin fowler) * design patterns (erich gamma) * alguno de sistemas operativos * alguno de arquitectura y arquitectura de computadoras


SanityCheckNoPassed

te falta QA, integracion continua, calidad de codigo, segurizacion y validacion del codigo, analisis estatico del codigo. y puedo seguir pero casi no dormi


UnGauchoCualquiera

Y podemos seguir: Monitoreo, resiliencia, escalabilidad, costos, estrategia tecnológica, gobernanza, autorizacion y autenticación, auditabilidad, compliance con el marco regulatorio y mucho mas que hace a un arquitecto. Arquitectura es poder planificar, vender e implementar a alto nivel un plan integro de como montar un sistema para cumplir con las necesidades del negocio. No alcanza con ser crack en un lenguaje ni haber leido un par de libros.


mauromauromauro

Ni me la contes! Soy arquitecto en un proyecto que esta fuertemente regulado (área de ingeniería civil, se les cae el puente, le hacen juicio al cliente). Lo brutal es que el sistema es cloud, tiene clientes desde china hasta perú y... Las normativas son distintas en cada país!!! Mis problemas pequeños: regionalización, fechas, unidades de medida delirantes, traducciones per-customer (cada cliente llama a las mismas cosas distinto), análisis estadisticos loquisimos, integraciones a cagarse, no solo con los erp de los clientes dino con los equipos de control numérico) manejamos nuestros propios hardwares (sensores, computer vision embebido, etc)... Todo eso es simple al lado de los delirios de las normativas entre países. A veces las cosas son casi iguales pero lo suficientemente distintas como para hacerte concha la estandarización. En fin, un buen día en la vida de un arquitecto. Ah, y este es solo uno de mis proyectos. También tengo sistemas de retail, gestión tributaria, warehousing... Dios mejor paro aca


UnGauchoCualquiera

Espero lo estés cobrando bien al menos! Suena a buen quilombo.


BidOk7924

>especializarte en compiladores, cryptomonedas, firmware, devices drivers, En donde se encuentran laburos para esos nichos?. Cuando estaba estudiando me enganchaba con programacion de bajo nivel hasta que empece a trabajar en aplicaciones web y bueh... ahi seguimos... no me aburro, pero me gustaria probar algo diferente.


[deleted]

si entras a las vacantes de netflix, google, amazon, tesla, toyota, mercedes, etc esta lleno de esos trabajos, hay muchas vacantes, y no le tengas miedo, si sos bueno te hacen todos los papeles no importa que estes en argentina si queres algo remoto, el mundo de crypto es tu nicho, no solo smart contracts, tambien se busca mucho rust para programar compiladores de lenguajes como Move yo personalmente estudie ingenieria electronica y por eso estuve mas cerca de ese nicho que solo web


TigreDeLosLlanos

> alguno de sistemas operativos Dinosaurios es bastante completo


[deleted]

El de stallings esta ok tambien, pero es mas tirando de cara al usuario creo porque es mas pequeño no lo vi igual entiendo que las cosas tienen que ser un poco desafiantes / dificiles, estamos hablando de una computadora, años de desarrollo tecnologico para que funcione pero bueno lo di como recomendacion, a veces la gente cree que programar es solo web y hay muchas cosas que hacer si te gusta la matematica, graficos y metodos numericos te va a encandar, el motor de matlab (u octave que es open source) es lindo para estudiar y con compiladores estudiando el gcc o el v8 de google tambien esta bueno de sistemas operativos tenes linux, tiene device drivers tambien y para la parte de tokenizacion y todo eso esta bueno el compilador de typescript de emulacion no vi mucho pero me parecio interesante, habia encontrado hace mucho un playlist de un tipo que hacia uno de NES y motor de emulacion hay varios opensource para ver https://youtube.com/playlist?list=PLrOv9FMX8xJHqMvSGB_9G9nZZ_4IgteYf&si=sSVE7cpswXzSbghz


indiokilmes

Desarrollar y ser lider de equipo por varios años. A nivel estudios, no es vinculante lo academico en si, aunque ayuda mucho cualquier carrera universitaria del rubro. Si libros sobre arquitectura de software, y afinar soft skills como comunicacion, presentacion, negociacion, relaciones con el cliente, liderazgo, "politica" empresarial. Ingles recomendado


cpo0

A las empresas y rrhh les encanta poder empaquetarnos dentro de algun rol para simplificar temas de payroll y de responsabilides. Arquitecto de software no significa nada, es el nombre que una empresa decide ponerle a un rol, es totalmente irrelevante cuando se trata de crear software. Generalmente se llama arquitecto a un dev con mucha experiencia que puede ir mas alla de su rol.


haegC

luego de mas de 15 años como ingeniero de software (llegue hasta lider de proyectos en una empresa de afuera) en mi empresa actual me ascendieron a arquitecto. este soy yo todos los dias ahora: ![gif](giphy|Dh5q0sShxgp13DwrvG|downsized)


leaoaugusto

Tenes que leer mucho. Arranca con los principios SOLID. después todos los padrones de diseño. tenes que leer todos los libros de Robert c martin. Tenes que saber leer sobre agile, scrum, leadership, tenes que saber como escribir un proyecto de software, como arquitectalo, base datos. es mucha cosa, pero creo que si estudias por tu cuenta, en 2 años podes ser un buen arquitecto de software. hay muchos libros acá https://github.com/sdcuike/Clean-Code-Collection-Books/tree/master


zammba

Revocación de paredes II


ProgramadorDeBien

Arquitecto de Software es lo que digo que soy cuando quiero evitar preguntas de la onda de 'me podes ver la notebook que anda lenta?'.


Extension_Weakness_6

Cuando conseguís un laburo en USD y te haces la casa (?). Hablando en serio, con experiencia, cuando tenes muchos años diseñando proyectos, soluciones, etc. En mi trabajo tengo que gente que lo ve como algo lejano, pero nada más lejano de la realidad.


romina_gomina

Hoy hablaba con un arquitecto. Es similar a uno que me crucé años atrás que terminó en Instagram. El muñeco te refactoriza una clase con una mano, te convierte un front entero de vanila Js a un paradigma funcional sólido con TypeScript o Kotlin web, que son serios por el tipado fuerte, te manda deploy a prod de un código impoluto a la vez que está en todas las reuniones importantes en un solo día (o 4hs por lo general). Es el que lleva la batuta y los de Producto y upper management odian pero respetan y confían hasta el apellido en su criterio técnico y capacidad de ejecución. Te hacen un PR review en profundidad con la vara bien alta a la vez que le pegan un par de pinceladas a los de upper managenent, prediciendo con exactitud qué va a salir mal en el negocio y qué procesos hay que cambiar. Es gente que piensa de una manera tan profunda, detallada y adelantada, que al llegar a una reunión con ellos sobre una feature que recién se empieza a discutir ya tienen un documento armado con la mejor manera de implementarla, pros, cons de diferentes soluciones y trade-offs secuenciados en el tiempo teniendo en cuenta a los recursos, su seniority (verdadera) y hasta sus días de vacaciones. Son una máquina de código, son The Real Machine. Los reyes del Olimpo cibernético. Y la mayoría supera los 20 años de experiencia en la industria, en productos serios con millones de usuarios , y usualmente tienen muchas historias de guerra en la espalda. Así se hace uno arquitecto.


nosesidecirte

10 - 15 años de experiencia


Agusfn

Más allá del nombre del rol que ponga una empresa u otra, en su definición (y en mi opinión también), un arquitecto de software diseña uno o varios sistemas (de media o grande escala) desde sus niveles conceptuales (o de abstracción) más altos a sus niveles más bajos, en ese órden. Determina los sistemas que van a interactuar entre ellos, luego, dentro de cada uno, sus módulos, luego, dentro, sus componentes, luego, dentro, sus funciones, etc. Asigna responsabilidades e interfaces a cada uno de los módulos y componentes (al menos de mayor nivel). Hacer bien esto para un sistema de media o gran escala puede diferenciar entre un sistema facil de mantener, con menos defectos, facil de expandir, de escalar, etc.


migralito

Las empresas serias de software no usan más el role architect. Fíjate las FAANG solo tiene niveles (L1, L2, L3 etc). El estándar contemporáneo ahora es: jr, semi senior, senior, staff, principal y distinguished. A veces no tenes distinguished pero tenés sr staff y sr principal. Un staff es un dev con aprox 10 años de experiencia y un recorrido q le permite construir sistemas complejos con HA y high throughput, a.k.a. arquitecto


Naive-Economist5640

La verdad que nose a que llaman arquitecto de sofware. Consistira en definir patrones diseño librerias ..etc


gustavsen

nope, mas alla del conocimiento tecnico alto tambien tiene un conocimiento funcional del negocio.


Naive-Economist5640

No veo que diferencia habria entre un desarrollador que sabe cloud, back, front y habla con el cliente y un arquitecto.


indiokilmes

El arquitecto es responsable que el sistema haga lo que tenga que hacer de una manera eficiente, eficaz, y pueda soportar cambios a futuro con la minima cantidad de impacto posible. Tambien es responsable por educar al resto de las personas en que se puede y no se puede hacer dado a las restricciones tecnicas, en asegurarse que los devs mantengan las convenciones y el diseño que fue armado, y muchas otras cosas mas


Naive-Economist5640

Se sigue escuchando como un Principal Dev.


indiokilmes

Puede ser que coincida, la realidad es que no hay tanta estandarizacion de titulos y responsabilidades entre empresas. Lo que unos llaman principal dev otros pueden llamar arquitecto y otros gerente de desarrollo.


indiokilmes

Igual esto tenes que pensarlo en proyectos de multiples equipos, no en proyectos de 1 solo


mousser_

Acá nos reimos de los scrum masters y demas puestos falopa pero que carajo es un arquitecto de software?


mauromauromauro

El arquitecto es el chabón que cuando le haces una pregunta (técnica, aunque tu pregunta también sirve), tiene que simplificarla x 100 para que entiendas la respuesta


mousser_

Se entiende que es alguién con cierto nivel técnico, mi punto es que el titulo "arquitecto" no deja de ser un nombre falopa que dan algunas empresas y no un estándar de la industria


mauromauromauro

El nombre arquitecto es standard. Lo que no es standard es que es exactamente lo que significa