# Imad El Malki Jaddi > Desenvolupador de programari | Angular, Java i productes full-stack ## Contacte - **Ubicació:** La Gornal, Catalunya - **Correu:** [imadelmalkij@gmail.com](mailto:imadelmalkij@gmail.com) - **LinkedIn:** [imad-el-malki-jaddi-a0585a284](https://www.linkedin.com/in/imad-el-malki-jaddi-a0585a284/) - **GitHub:** [ImadElMalki](https://github.com/ImadElMalki) ## Sobre mi Desenvolupador de programari amb experiència professional en Angular i col·laboració amb backends Java/Spring Boot. En projectes propis construeixo productes d'extrem a extrem amb TypeScript, Kotlin, React, Svelte i serveis al núvol. M'interessa transformar problemes reals —inclosos el running i la productivitat personal— en aplicacions útils, mantenibles i ben provades. ## Experiència laboral ### [VIEWNEXT](https://www.viewnext.com/) **Angular Developer** · febrer del 2024 — Actualitat Desenvolupament i evolució d'aplicacions web per al sector públic amb Angular, integrades amb APIs i backends Java/Spring Boot. - Participació en CIRNM, sistema municipal relacionat amb la gestió ambiental. - Desenvolupament i evolució de SIVCA, sistema municipal integrat amb MiNT per gestionar, validar i monitorar dades de qualitat de l'aire de Madrid. - Implementació de components, pantalles i noves funcionalitats, manteniment evolutiu i integració amb APIs en col·laboració amb equips backend Java i QA. ### [INETUM](https://www.inetum.com/es) **Desenvolupador web en pràctiques** · maig del 2022 — maig del 2023 Desenvolupament web i de solucions empresarials low-code durant el període de pràctiques. - Desenvolupament d'aplicacions empresarials amb Microsoft Power Apps. - Creació de quadres de comandament i informes amb Microsoft Power BI. - Desenvolupament web amb JavaScript, Laravel, HTML, CSS, jQuery i Bootstrap. ## Educació ### Institut Camí de Mar **Cicle Formatiu de Grau Superior en Desenvolupament d'Aplicacions Web (DAW)** setembre del 2021 — maig del 2023 ## Idiomes - **Castellà:** Natiu - **Català:** Natiu - **Àrab:** Natiu - **Berber (amazic):** Natiu - **Anglès:** Intermedi ## Projectes ### Amazon Spending Tracker **Estat:** Publicat Extensió Chrome MV3 que calcula i desglossa la despesa anual a Amazon a partir de les confirmacions de Gmail, amb OAuth de només lectura, deduplicació i emmagatzematge local. **Tecnologies:** JavaScript · Chrome Extensions · Gmail API · OAuth **Destacat:** - Deduplicació per número de comanda, perquè els diversos correus d'una mateixa compra no se sumin dues vegades. - Sincronització incremental cada hora i escaneig complet setmanal. - Exportació a .xlsx generada sense dependències. - Interfície en castellà i anglès; les dades no surten del navegador. **Enllaços:** - [Lloc web](https://amazonspendingtracker.com) - [Chrome Web Store](https://chromewebstore.google.com/detail/amazon-spending-tracker/amejpfnehhohiffphbimdnilhjkpgfpb) ### 100 Cims **Estat:** Projecte personal Aplicació full-stack sobre el repte dels 100 cims de la FEEC: Angular per consultar els cims, API REST en Spring Boot amb PostgreSQL sobre Docker, i scripts en Python que recopilen, insereixen i optimitzen les dades i les imatges. **Tecnologies:** Angular · TypeScript · Java · Spring Boot · PostgreSQL · Python · Docker **Destacat:** - API REST amb Maven i PostgreSQL 17 en contenidor. - Procés en Python que recopila les dades dels cims i les carrega a la base de dades. - Descàrrega i optimització de les imatges a WebP. - Restauració del conjunt de dades des de CSV. ### Race Hub **Estat:** En desenvolupament App Android construïda amb Capacitor: la interfície és Svelte 5 en un WebView i un motor natiu en Kotlin posseeix les dades, la sincronització, la xarxa i el càlcul. Planifica curses, calcula ritmes i splits, consulta el temps i les rutes i sincronitza el calendari entre dispositius. **Tecnologies:** Capacitor · Svelte · TypeScript · Kotlin · Room · WorkManager · Supabase **Destacat:** - Room com a única font de dades i WorkManager com a únic motor de sincronització amb Supabase. - Prediccions de ritme, splits i desnivell calculats en Kotlin. - Inici de sessió natiu amb Credential Manager i calendari mitjançant l'API d'autorització de Google. - Widget de pantalla d'inici, recordatoris i alarmes natives. ### Plataforma Strava/Garmin **Estat:** Projecte personal Worker de Cloudflare que escolta els webhooks de Strava, classifica l'activitat principal del dia contra un pla d'entrenament, l'enriqueix amb el temps i dades de cursa, i genera amb IA el títol i l'entradeta que republica a Strava. **Tecnologies:** Cloudflare Workers · D1 · Queues · R2 · React · TypeScript · Hono · Vitest **Destacat:** - Cues amb reintents i cua de missatges fallits, més cron horari i purga diària. - Tokens de Strava xifrats amb AES-GCM abans de desar-los a D1. - Tauler d'administració en React servit pel mateix Worker. - Importació d'arxius FIT de Garmin i streams d'activitat desats a R2. ### Race Spending Tracker **Estat:** Projecte personal Extensió Chrome MV3 que calcula la despesa anual en inscripcions a curses a partir de les confirmacions de Gmail, amb OAuth de només lectura, classificació conservadora per plataforma i emmagatzematge local. **Tecnologies:** JavaScript · Chrome Extensions · Gmail API · OAuth · Playwright **Destacat:** - Adaptadors per a nou plataformes d'inscripció. - Extracció acotada de text de PDF per recuperar els imports que falten al correu. - Sincronització amb reintents, checkpoints i represa després d'una aturada. - Pressupost per any amb avís en acostar-se al límit. ### CaixaBank Spending Tracker **Estat:** Projecte personal Extensió Chrome MV3 que calcula la despesa mensual llegint els avisos de CaixaBank a Gmail. Reconstrueix l'ordre real dels moviments encadenant saldos, en comptes de refiar-se de l'hora d'arribada del correu. **Tecnologies:** JavaScript · Chrome Extensions · Gmail API · OAuth · Playwright **Destacat:** - Ordre real dels moviments reconstruït a partir de la cadena de saldos. - Deduplicació per identificador de missatge i per saldo, per no perdre dues compres iguals el mateix dia. - Regles de categoria amb aprenentatge local i promoció a codi. - Sincronització incremental amb marge per als avisos que arriben amb retard. ## Habilitats - Angular - TypeScript - JavaScript - Java - Spring Boot - Power Apps - Power BI - HTML - CSS - React - Svelte - Kotlin - Cloudflare Workers - Astro - PostgreSQL - MySQL - Supabase - Docker - Git - GitHub ## Versions llegibles per màquines - [CV en JSON Resume](https://imadelmalki.com/ca/cv.json) - [CV en Markdown](https://imadelmalki.com/ca/cv.md)