Trasformare un processo HR reale in un gestionale verticale con aziende, candidati, offerte, profili, ricerche, comunicazioni e statistiche.
Cosa e stato studiato
Sono stati analizzati i rapporti tra aziende, candidati, offerte e profili richiesti, distinguendo sito pubblico, CRM operativo e dati sensibili. La difficolta principale era trasformare documenti e comunicazioni in un flusso leggibile senza perdere controllo umano sulle decisioni. Il dominio non e generico: un candidato puo avere CV, candidature, profili, sintesi, comunicazioni e stati diversi; un'azienda puo avere richieste, offerte e interazioni ripetute nel tempo.
Cosa e stato fatto
Il sistema organizza schede candidato, CV, candidature, ricerche, comunicazioni, download e statistiche. Le funzioni di parsing e sintesi supportano l'operatore, mentre il CRM mantiene storico, stati e collegamenti tra entita operative. La parte piu importante non e l'automazione in se, ma il modo in cui ogni informazione estratta torna dentro un processo: scheda, ricerca, offerta, invio, download, follow-up.
Come e stato fatto
La realizzazione si basa su PHP custom, MySQL/MariaDB, Apache, interfacce JavaScript/DataTables, task PHP, parsing PDF, Voxmail e integrazioni AI controllate. La pubblicazione del caso richiede dati demo o oscurati e nessun dettaglio riconducibile a candidati, aziende o campagne reali. Le scelte tecniche privilegiano interfacce dense, query filtrabili, processi batch e controllo umano sugli output generati o normalizzati.
Architettura e tecnologie
Come lo stack e stato usato nel progetto
CRM verticale e modello relazionale
KeJob usa un modello relazionale per collegare aziende, candidati, CV, offerte, profili richiesti, candidature, comunicazioni e azioni degli operatori. Questa architettura e stata sfruttata per evitare che il CRM diventasse una rubrica evoluta: ogni entita ha relazioni operative, stati e storico, quindi un CV puo essere letto dentro una candidatura, una ricerca, una comunicazione o una statistica.
Interfacce tabellari per lavoro ad alta frequenza
Le interfacce JavaScript/DataTables sono state scelte per un motivo operativo: chi lavora in recruiting deve confrontare molti record, filtrare rapidamente, ordinare, cercare e aggiornare stati senza entrare ogni volta in pagine narrative. L'architettura UI e stata quindi costruita per densita e velocita: tabelle, filtri, viste amministrative e azioni ripetibili valgono piu di una presentazione visiva leggera.
Pipeline CV, parsing PDF e task PHP
I CV non vengono trattati come semplici allegati: entrano in una pipeline che puo includere upload, parsing PDF, estrazione di testo, normalizzazione e associazione alla scheda candidato. I task PHP consentono di gestire passaggi ripetibili o pesanti fuori dall'interazione principale. Questa architettura e stata sfruttata per ridurre inserimento manuale e rendere recuperabili i dati estratti.
AI/Gemini come supporto controllato
L'integrazione AI viene usata come supporto alla lettura e alla sintesi, non come motore decisionale autonomo. Gemini puo aiutare a estrarre o riassumere contenuti, ma l'output deve rientrare in campi, schede e controlli umani. La scelta tecnica serve a velocizzare comprensione e normalizzazione dei CV senza delegare alla macchina la selezione del candidato o la valutazione finale.
Newsletter, Voxmail e CV anonimi
La comunicazione verso aziende richiede tracciabilita e tutela dei dati personali. L'integrazione con Voxmail e la gestione di CV anonimi sono state sfruttate per distribuire profili o aggiornamenti senza esporre informazioni non necessarie. Il sistema puo collegare invii, download e statistiche al CRM, rendendo misurabile l'attivita commerciale senza perdere il controllo sui contenuti sensibili.
Logging, statistiche e controllo operatori
Il CRM registra azioni, stati e indicatori per capire come procede il lavoro reale: quali CV vengono caricati, quali profili sono associati, quali comunicazioni partono, quali download avvengono e dove il processo rallenta. Questa architettura informativa e stata sfruttata per passare da gestione a memoria a gestione misurabile, con dati utili sia agli operatori sia alla direzione.
Pattern implementativi
Dettagli tecnici che hanno guidato le scelte
Modello dati normalizzato e read model operativi
Il CRM richiede un modello relazionale normalizzato per non duplicare candidati, aziende, offerte e candidature, ma al tempo stesso ha bisogno di read model veloci per le viste operative. La parte tecnica consiste nel bilanciare normalizzazione, indici, join e campi derivati: il database deve conservare integrita referenziale, mentre l'interfaccia deve restituire liste filtrabili senza costringere l'operatore ad attese inutili.
Server-side processing per DataTables e query ad alta selettivita
Le tabelle operative non possono caricare tutto lato browser. DataTables viene usato con logica server-side: paginazione, ordinamento, ricerca, filtri e conteggi vengono risolti dal backend. Questo sposta il problema su query design, indici, WHERE selettivi, ORDER BY coerenti e protezione da filtri troppo costosi. Il risultato e una UI densa, ma sostenuta da un backend che ragiona su performance e cardinalita dei dati.
Pipeline documentale con parsing, normalizzazione e controllo umano
Il CV passa da documento binario a informazione strutturata attraverso una pipeline: upload, estrazione testo, parsing PDF, normalizzazione, eventuale arricchimento AI e revisione operatore. Ogni step deve essere tracciabile e reversibile: se il parser fallisce o l'AI produce un output debole, il dato non deve inquinare automaticamente la scheda. Questo e un pattern ETL leggero applicato a un dominio HR.
Governance AI, privacy e explainability minima
L'integrazione Gemini deve essere governata: prompt controllati, input ridotti al necessario, output salvati solo se utili e sempre interpretabili dall'operatore. Nel recruiting non basta 'usare AI': serve explainability minima, separazione tra suggerimento e decisione, anonimizzazione quando si inviano profili e protezione dei dati personali. La componente AI diventa un acceleratore del workflow, non un black box decisionale.
Risultati e apprendimenti
Sito pubblico e CRM online, versione operativa, moduli HR reali e cronologia evolutiva documentata.
- nei processi HR la tracciabilita vale quanto la velocita
- i documenti diventano utili quando sono collegati a stati e ricerche
- il racconto pubblico deve proteggere dati personali e contesto operativo
