Caricamento…
Caricamento…
Chi sono
Software Engineer e studente di informatica
Lavoro come Software Engineer presso Indus Valley Labs con Java, Spring Boot, API REST e PostgreSQL, continuando a sviluppare esperienza frontend con React e Next.js.
Il mio percorso professionale è iniziato con uno stage nello sviluppo frontend presso MangoTech Solutions. Ho poi lavorato come Junior MERN Stack Developer, prima di passare allo sviluppo full-stack e approfondire il backend. Ora mi concentro su Java e Spring Boot: sviluppo di API, progettazione di database e maggiore comprensione del runtime e dei sistemi.
Oltre al lavoro, studio informatica alla Virtual University of Pakistan, contribuisco all'open source e scrivo note tecniche su ciò che imparo.
Percorso professionale
Gennaio – maggio 2024
MangoTech Solutions
Sviluppo frontend con React.js e Material UI, realizzando componenti web responsive e riutilizzabili.
Maggio 2024 – marzo 2025
Decotechs
Sviluppo frontend con React.js, componenti riutilizzabili e test end-to-end con Cypress.
Aprile 2025 – oggi
Indus Valley Labs (Pvt) Ltd
Sviluppo full-stack con Java, Spring Boot, Next.js, React e TypeScript, tra API backend, database e funzionalità frontend di una piattaforma multi-tenant.
AttualeFocus attuale
Approfondimento del backend
Approfondisco JVM, concorrenza, database, progettazione API e sistemi e architettura backend.
Focus ingegneristico
Progettazione di API, servizi, livelli di persistenza e comportamenti affidabili con Java e Spring Boot.
Capire Java oltre la sintassi: modello di memoria, ciclo di vita degli oggetti, concorrenza e runtime JVM.
SQL, PostgreSQL, modellazione relazionale, progettazione delle query, coerenza, transazioni e prestazioni.
Considerare errori, casi limite, richieste concorrenti, manutenibilità, sicurezza e osservabilità come priorità.
Pensiero ingegneristico
Domande che tengo a mente durante lo sviluppo, oltre al corretto funzionamento del percorso ideale.
Correttezza
Cosa succede con input non validi, mancanti o in un formato imprevisto?
Errori
Cosa succede se un'operazione sul database fallisce o un servizio esterno non risponde?
Concorrenza
Cosa succede se due richieste modificano la stessa risorsa contemporaneamente?
Coerenza dei dati
Un'operazione fallita a metà può lasciare dati incoerenti? In che modo aiutano le transazioni?
Prestazioni
Dov'è il collo di bottiglia: query, rete o codice applicativo?
Sicurezza
Quali ipotesi sul client non sono sicure? Cosa va convalidato lato server?
Manutenibilità
Un altro sviluppatore potrà capire e modificare questo codice in sicurezza tra sei mesi?
Design API
Questo endpoint svolge una funzione chiara? Gli errori sono comprensibili e coerenti?
Tecnologie
Non tutte le competenze sono allo stesso livello: alcune le uso ogni giorno, altre le sto imparando o le ho esplorate nei progetti.
Esperienza
April 2025 – Oggi · Karachi · On-site
Working on full-stack development with Java, Spring Boot, Next.js, React, and TypeScript. Focused on backend API design, database layer work, and frontend feature development across a multi-tenant platform.
May 2024 – March 2025 · Karachi · On-site
Frontend development with React.js, building reusable components, implementing application functionality with third-party packages, and writing end-to-end tests.
January 2024 – May 2024 · Karachi · On-site
Frontend development with React.js and Material UI, building responsive and reusable web application components.
Formazione
Virtual University of Pakistan
Studying core computer science concepts including data structures, algorithms, operating systems, databases, and software engineering.
Open source
Supercontributor
Community
Section Leader / Mentor · Stanford University
April 2025 – June 2025 · Remote
Mentored beginner programmers in a global online programming course run by Stanford University. Led weekly section meetings, explained programming concepts, walked through code examples, and supported learners through hands-on exercises.
In questo momento
Su cosa sto concentrando il mio tempo tecnico.
Oltre il codice
Vivo a Karachi, in Pakistan, studio informatica e lavoro come Software Engineer. Fuori dal lavoro e dallo studio, mi piace leggere di architettura software e sistemi, approfondire il funzionamento della JVM e sperimentare localmente per capire gli errori. Uso strumenti di IA per imparare e sviluppare, cercando sempre di comprendere il codice che producono.
Mi fa piacere confrontarmi su backend e opportunità di collaborazione.