«Bezael Pérez — Admiro més qui és capaç de desaprendre que qui aprèn ràpid»
En aquesta nova entrega de talks2U, parlem amb Bezael Pérez, Tech Lead Product Software Engineer a Wolters Kluwer Espanya. A més de la seva experiència liderant equips de desenvolupament i treballant amb tecnologies com Angular, Micro Frontends o Jest, Bezael també ha estat formador en empreses i escoles del sector, i coneix bé els reptes tant tècnics com humans que sorgeixen en projectes de software a mida.
Bezael comparteix el seu coneixement a través del seu canal de YouTube Dominicode, on divulga contingut tècnic, reflexions sobre bones pràctiques i recursos útils per a la comunitat de desenvolupament.
En aquesta conversa, ens ofereix la seva visió sobre com liderar sense deixar de programar, la importància de les bones pràctiques per evitar el deute tècnic, la irrupció de la intel·ligència artificial en el desenvolupament de software, i una cosa que ens ha agradat especialment: per què, per a ell, desaprendre és una habilitat clau per a qualsevol desenvolupador.
Has passat de ser enginyer de software a liderar un equip. Com ha canviat el teu enfocament cap al desenvolupament?
Realment segueix sent igual, perquè vull continuar picant codi. Ara la diferència és que tinc més responsabilitat i he de vetllar tant pels meus companys com per mi. És un equilibri entre continuar fent el que m’agrada i cuidar l’equip.
Treballes amb tecnologies com Angular, Micro Frontends i Jest. Quins avantatges ofereixen aquestes eines en el desenvolupament d’aplicacions a gran escala?
Bé, potser primer hauria d’explicar què és un micro frontend. Es tracta d’un enfocament arquitectònic que estén el concepte de microserveis a la part del frontend. En lloc de tenir una única aplicació monolítica, es divideix en peces més petites, independents i gestionables, cadascuna encarregada d’una part específica de la interfície d’usuari.
Això té molt sentit quan una empresa està desenvolupant una plataforma gran, amb diversos mòduls i equips. Aquest tipus d’eines permeten aconseguir escalabilitat tècnica i organitzacional, una major mantenibilitat del codi, i cicles de desenvolupament més àgils.
I ara sí, responent a la teva pregunta: quins són els factors clau per decidir si utilitzar una tecnologia o una altra? L’ideal seria analitzar bé el problema i adaptar la solució tecnològica a aquesta anàlisi. Però la realitat és que no sol passar així. Si un equip només sap treballar amb Java i React, doncs tots els projectes acabaran anant per aquí.
Per sort, avui dia pràcticament totes les tecnologies disponibles són bastant bones. Però encertar amb l’elecció continua marcant la diferència: et permet tenir software més mantenible i escalable a llarg termini.
El deute tècnic és un desafiament constant. Quines pràctiques recomanes per evitar-lo, especialment en projectes grans?
Una cosa molt senzilla i que es pot configurar des del principi és establir linting, formatació automàtica i convencions clares. Això ajuda a unificar l’estil del codi i evita baralles innecessàries entre desenvolupadors.
També recomano aplicar patrons com Clean Architecture, Hexagonal o fins i tot Micro Frontends si el projecte ho permet. I, per descomptat, seguir el principi de responsabilitat única tant al backend com al frontend.
El testing s’hauria d’implementar des del dia 1, però han de ser tests que realment aportin valor. No es tracta d’assolir un percentatge de cobertura per complir, sinó d’assegurar el comportament real de l’aplicació.
I una cosa que m’ha ajudat molt —i que utilitzen pràcticament totes les grans empreses— són les feature flags. Amb elles pots activar funcionalitats en producció de forma segura, per segments, per països, per usuaris… així evites sorpreses i pots iterar més ràpid.
Com mantens el teu equip al dia amb les actualitzacions i canvis a les eines que utilitzen?
Principalment amb petites capacitacions o workshops interns. Ens permeten experimentar amb noves funcions abans d’integrar-les a producció. Així l’equip pot entendre el nou i veure si realment ens aporta alguna cosa.
Òbviament no sempre es poden implementar totes les novetats que ens agradaria. A part d’això, llegim molts posts a plataformes com dev.to, i compartim el que ens sembla útil. Aquesta cultura d’aprenentatge compartit és molt important.
Com a mentor, quines habilitats creus que són essencials per als desenvolupadors que treballen en projectes de software?
Fa quatre o cinc anys hauria dit que les habilitats tècniques eren el més important. Però en aquests temps d’intel·ligència artificial, els soft skills s’han tornat encara més rellevants. La comunicació, per exemple, és cada vegada més important. Escoltar bé, saber explicar, saber quan callar.
Jo admiro molt els desenvolupadors que aprenen ràpid, però encara més els que desaprenen ràpid. Perquè els que saben desaprendre s’adapten millor a qualsevol projecte.
Pots explicar millor què vols dir amb “desaprendre”?
Clar. Quan parlo de desaprendre em refereixo que, sobretot quan ja tens certa experiència, sols venir amb la teva pròpia manera de treballar. No dic que estigui bé o malament, simplement és “la teva manera”.
Però quan arribes a un equip nou, a vegades aquesta manera no encaixa. I aquí és on moltes persones amb experiència tenen problemes: els costa adaptar-se a una dinàmica diferent. Qüestionen constantment, no deixen anar les seves rutines.
Desaprendre significa saber deixar això de banda i adaptar-te. No és oblidar el que saps, ni deixar d’usar Angular o React. És entendre que potser la teva manera de fer les coses no és la que es necessita en aquell moment. I saber integrar-te sense imposar el teu.
Quin paper creus que tindrà la intel·ligència artificial en el futur del desenvolupament de software?
Un paper súper determinant. Crec que al nostre sector hi haurà dos tipus de persones: les que usen IA i les que no. I des del meu punt de vista, les que la facin servir seran molt més productives, els serà més fàcil resoldre problemes i avançar.
Hi ha una frase que no és meva, però que té molt sentit: “La IA no et traurà la feina, però un altre developer que sàpiga fer-la servir sí.”
El desenvolupament està canviant. Ja no va de React vs Angular, o Node.js vs Python. Va de amb quina eina d’IA pots fer més en menys temps i amb més qualitat.
Com gestiones la col·laboració entre equips de desenvolupament per assegurar que les solucions personalitzades s’implementin de forma eficient?
El primer és tenir una comunicació clara. I ull, que usar moltes eines com Slack, Teams o emails no garanteix una bona comunicació. A vegades genera l’efecte contrari.
Una vegada hi ha bona comunicació, el següent és tenir objectius alineats. I una cosa que considero fonamental és tenir una cultura de feedback contínua. Saber donar-lo i també rebre’l.
Els equips que són capaços de tenir converses sinceres sobre el que funciona i el que no, sense prendre-s’ho com un atac, són els que més creixen.
En projectes a mida, com assegureu l’escalabilitat i la mantenibilitat del codi des de l’inici?
Més o menys ho hem parlat abans, però m’hi repeteixo encantat. Per assegurar escalabilitat i mantenibilitat necessites una arquitectura modular i ben definida des del principi.
A això cal sumar-hi bones pràctiques de desenvolupament i testing. I si pots automatitzar aquests tests, molt millor. Tenir aquestes bases ben establertes marca la diferència quan el projecte comença a créixer.
Quines tecnologies emergents veus com a clau per al futur del desenvolupament de software a mida en empreses?
Sens dubte, cal prestar especial atenció a la Intel·ligència Artificial Generativa. També la IA predictiva, que ajuda a anticipar necessitats, tendències o fins i tot errors abans que passin.
Un altre camp que està creixent són les plataformes Low-Code i No-Code. No substituiran el desenvolupament a mida, però en alguns casos concrets et poden ajudar a llançar productes ràpids, ja siguin interns o per a tercers.
I també veig amb molt interès l’Edge Computing, que permet processar dades en temps real, més a prop de l’usuari. Això millora moltíssim el rendiment i la resposta d’aplicacions crítiques.
Has mencionat també alguna cosa anomenada Vibe Coding. Què és?
És un enfocament de programació assistida per IA, on el desenvolupador descriu el problema en llenguatge natural i la intel·ligència artificial genera el codi corresponent.
No és màgia, evidentment. Però cal prestar-li atenció, perquè ens permet pensar més en el que volem construir i menys en els detalls mecànics de com fer-ho. Pot canviar bastant la manera com programem.
L’experiència de Bezael Pérez ens recorda que el desenvolupament de software no va només d’elegir tecnologies, sinó de construir equips sòlids, adaptables i amb capacitat per aprendre —i desaprendre— segons el context. Integrar bones pràctiques, fomentar la col·laboració i aprofitar el potencial de la intel·ligència artificial són claus per avançar amb solidesa en projectes complexos.
Volem agrair a Bezael per compartir la seva experiència, el seu temps i la seva mirada honesta sobre els reptes del dia a dia en el desenvolupament a mida.
Està el teu equip preparat per treballar amb IA? Teniu una arquitectura realment escalable? A talks2U, seguirem compartint reflexions i aprenentatges de professionals que estan liderant el canvi des de dins.
Ens veiem a la propera entrevista!