Responsabile Backend, Infrastruttura e DevOps presso un vendor SaaS di pianificazione della supply chain, con responsabilità formale di team dal febbraio 2019: sette anni e mezzo. Guido tre funzioni, rispondo al VP of Software Engineering e ne ho assorbite altre due a organico invariato: la responsabilità dei database di produzione su tutti i server esposti ai clienti e la funzione test e CI. Quattro ingegneri riportano a me e ne curo le valutazioni della performance. Quindici anni su .NET, dodici dei quali qui, al servizio di 18 clienti finali enterprise: ho fondato la piattaforma di API dashboard, nel 2019 ho preso in carico la piattaforma di identità e accessi — a cui contribuisco tuttora più di chiunque altro — e ho progettato il modello di autorizzazione degli agenti autonomi. I primi tre anni sono stati di delivery al cliente in due agenzie digitali.
Responsabilità e perimetro
Presidio il release gate e il gate di integrazione della piattaforma centrale, senza interruzioni dal 2019 e attraverso un decennio di ricambio nel team di ingegneria. Dal 2015 questo perimetro comprende 4.504 merge request di altri ingegneri, distribuite su 170 progetti.
Ultimo livello di escalation per integrazioni cliente, identità federata, integrazioni SAP, database, rete e infrastruttura.
Selezione in ambito engineering: ho condotto colloqui tecnici e ho partecipato alle decisioni di assunzione per posizioni di ingegneria junior e senior; ho progettato i profili di ruolo e i casi tecnici di valutazione utilizzati nell'esame delle candidature.
Competenze
Identità e accessiOAuth 2.0, OpenID Connect, token exchange, delega contrapposta a impersonation, single sign-on e federazione SAML / OpenID Connect con identity provider esterni, progettazione delle claim in multi-tenant, IAM in least privilege; accettazione del rischio documentata con controlli compensativi, standard di secure coding, responsabilità del programma di penetration test, retention dei dati KVKK / GDPR
Backend e datiC# / .NET (dal Framework 2.0 a .NET 10), ASP.NET Core, WCF, REST, Dapper, Entity Framework Core, internals di SQL Server e progettazione degli indici, PostgreSQL, MongoDB, Redis, Elasticsearch, ActiveMQ, Quartz.NET, framework di connettori ETL
AI e piattaforma agentiserver MCP, delega agent-to-agent, sessioni agente per tenant, gateway LLM, attribuzione dei costi dei token e controlli di budget
Esperienza
Solvoyo
Istanbul, Turchia (vendor SaaS di supply chain planning e retail)05/2014 - a oggi
Backend - Infra & DevOps Lead
02/2019 - a oggi
Rispondo al VP of Software Engineering. Ricopro questo ruolo di responsabilità senza interruzioni dal 02/2019, con il titolo attuale nel periodo più recente.
Guido la funzione Backend, Infrastruttura e DevOps. Quattro ingegneri riportano a me su tre discipline e ne curo le valutazioni della performance; su cinque posizioni una è vacante dopo un'uscita che ho deciso e portato fino in fondo.
Decido che cosa va in produzione, incluso codice che non ho scritto. Nella revisione di un'ampia procedura SAP di ordini d'acquisto in SQL dinamico ho individuato, prima del rilascio, un errore nell'ordine delle join e un NULL non gestito nel CASE che decide l'approvazione dell'ordine.
Nel 2019 ho preso in carico la piattaforma di identità e accessi dell'azienda — il provider di single sign-on di un prodotto che serve 18 clienti enterprise — e da allora è la piattaforma a cui contribuisco più di chiunque altro: authorization server, API di amministrazione, front-end di gestione utenti, federazione con identity provider esterni e modello di claim multi-tenant. La mia quota è salita dal 30% della sua storia al 43% negli ultimi tre anni.
Ho progettato il modo in cui gli agenti autonomi vengono autorizzati sulla piattaforma: delega e non impersonation, così che un agente che agisce per conto di una persona porti con sé una traccia leggibile di chi gli ha delegato, non possa eccedere i diritti di quella persona e resti, nel momento in cui agisce, all'interno dei dati di un solo cliente. Costruito, testato e funzionante; l'ultimo audit non ha trovato nulla di esposto in produzione. La piattaforma agenti che lo circonda è stata costruita insieme al team.
Ho rifiutato l'impersonation per motivi di integrità dell'audit trail, contro la pressione commerciale di due dirigenti non tecnici; un test di regressione fallisce se quel percorso di codice viene riaperto.
Ho assorbito due funzioni specialistiche man mano che si liberavano, nessuna delle due con organico aggiuntivo: la responsabilità dei database di produzione per ogni server e database esposto ai clienti — strategia di backup e ripristino, manutenzione degli indici, capacity — e la funzione test e CI.
Ho modernizzato lo stack di identità su tutti i sistemi che lo utilizzano. Dove una dipendenza non era aggiornabile con una patch, ho accettato per iscritto il rischio residuo, con una mitigazione e un trigger di riesame.
Ho trattenuto i rilasci sull'API dashboard e sul livello web in attesa di una revisione di sicurezza, e ho negato per iscritto la richiesta di un cliente di accedere direttamente al database di produzione, motivandola con esposizione, carico di query, coerenza dei dati e rischio in fase di ripristino.
Curo la manutenzione principale della piattaforma di orchestrazione dei job dell'azienda e ne presidio il release gate; sono inoltre responsabile dell'integrazione di un parco ETL di oltre 80 moduli di integrazione.
Ho la responsabilità di un parco AWS multi-region, del version control e della CI, inclusa una flotta CI self-hosted di runner.
Ho ricondotto un'interruzione del database di produzione a tre cause radice quattro minuti dopo la prima diagnostica, e in otto minuti avevo quattro azioni correttive assegnate a responsabili indicati per nome.
Nel 2020 ho eliminato le credenziali in chiaro dalle definizioni dei job introducendo un livello di indirezione: chi definisce i job non conosce più la password, diventata ruotabile su richiesta. Reso obbligatorio per il lavoro nuovo, è ancora il pattern in uso sei anni dopo.
Senior .NET Developer
05/2014 - 02/2019
Ho fondato la piattaforma di API dashboard — il primo commit è mio (03/2017) — e occupo il primo posto tra i suoi 29 contributori, dopo dieci anni consecutivi di contributi: 54 progetti e 23 adapter di accesso ai dati collegabili su SQL Server, MySQL, MongoDB, Elasticsearch, CloudWatch, GIS, Jira e back end di gestione delle esecuzioni.
Ho progettato l'isolamento per tenant della piattaforma: una connessione dati separata per cliente e per ambiente, risolta dal token del chiamante al momento della richiesta, con un discriminante cliente applicato su tutto il control plane condiviso.
Occupo il primo posto tra i 49 contributori dell'applicazione web di pianificazione rivolta ai clienti, con commit in ogni anno solare dal 2014 al 2026.
Ho dato origine al servizio Windows event-monitor che ancora oggi esegue i job pianificati di workflow, scenario e notifica della piattaforma.
Magiclick
Istanbul, Turchia (agenzia digitale)
.NET Application Developer
02/2013 - 05/2014
Ho realizzato il progetto di integrazione con le API di Google AdWords; ho sviluppato e mantenuto applicazioni client all'interno di un portafoglio di delivery multi-progetto.
Pixelplus Interactive
Istanbul, Turchia (agenzia digitale)
.NET Application Developer
01/2011 - 02/2013
Ho consegnato applicazioni web per operatori dei servizi finanziari e marchi globali di largo consumo — Akbank, Garanti, İş Bankası, Denizbank, il Centro interbancario delle carte (BKM, NFC), Volkswagen, Mercedes-Benz e Microsoft — raccogliendo i requisiti direttamente dai clienti, anche presso le loro sedi, su più account in parallelo.
In precedenza: stage di sviluppo PHP, MOBIM Software (10/2009 - 12/2009); stage di analisi di sistema, Xerox (07/2008 - 09/2008).
Formazione
Università Boğaziçi, Istanbul
Laurea (BSc) in Sistemi Informativi Gestionali (Management Information Systems), 2004 - 2009 Titolo conseguito con lode · Media (GPA) 3,37
Lingue
Turco — madrelingua Inglese — livello professionale; tutti i commit, le merge request, gli standard tecnici e le escalation verso i vendor sono scritti in inglese