Curriculum Vitae


Percorso accademico

Sono stato un appassionato di PC sin da quando avevo dieci anni, epoca in cui i primi cominciavano a divenire popolari. Tutti i miei studi quindi riflettono questa passione.
Scelsi l'Istituto Tecnico Industriale Statale Montani ad indirizzo informatica, dove imparai le basi della programmazione strutturata con il linguaggio C, oltre a principi base di C++, SQL e un po' di teorie delle reti.
Ovviamente feci anche un bel po' di Matematica e diedi anche uno sguardo (molto) superficiale alla modellazione dei sistemi del secondo ordine (massa-molla-smorzatore, resistenza-capacità-induttanza...) che ritrovai anni dopo all'Università.
All'Università dovetti scegliere tra due corsi: Ingegneria Informatica e dell'Automazione. Seguii ovviamente quella informatica, apprendendo la programmazione ad oggetti, le strutture dei sistemi operativi, gli algoritmi, creazione e gestione delle basi dati, programmazione web ed i principi di ignegneria del software.
Nel corso sulla OOP mi soffermai in particolare sul linguaggio Java, lo stile di programmazione Modello Vista Controllo, il riuso del software, gestione della memoria, le classi template e ancora ingegneria del software.
Essendo un corso di ignegneria, studiai anche parecchia Matematica: funzioni, derivate, integrali, trasformate di LaPlace e Fourier, trigonometry, vettori e matrici.
Mi laureai nel 2010, con una tesi intitolata “Analisi della sicurezza perimetrale di un sistema informativo aziendale”.
Più tardi, in ambito lavorativo, seguii un corso di tre giorni sulla sicurezza informatica tenuto dal CNR.

Istruzione
PeriodoIstitutoLuogoAttivitàTesi
01/10/2003 - 27/02/2010Università Politecnica delle Marche - Facoltà di Ingegneria Informatica e dell'AutomazioneAnconaProgettazione e sviluppo di software object oriented.
Progettazione e sviluppo di basi di dati relazionali.
Automazione industriale.
Analisi della Sicurezza Perimetrale di un Sistema Informativo Aziendale.
01/09/1997 - 01/07/2003Istituto Tecnico Industriale Statale G. e M. MontaniFermoProgettazione e sviluppo software.
Principi di elettronica e microelettronica.
Software di movimentazione di un robot.

Precedenti Esperienze Lavorative

Cominciai la mia carriera nel 2010, nella stessa piccola azienda dove feci il tirocinio universitario. La mia occupazione principale consisteva nell'amministrazione di sistemi conto terzi, assieme ad un sistemista senior che lasciò l'incarico due anni dopo.
Quando non ero impegnato con questi compiti, aiutavo il programmatore nello sviluppo di siti web, maggiormente curando la parte HTML ed effettuando dei beta-test sulle nuove versioni dei programmi.
Dopo un anno l'azienda decise di collaborare con una seconda e provare ad entrare nel mercato delle Apple App sviluppando alcune idee ed io ero il programmatore incaricato di realizzare tutto ciò. Sfortunatamente, la crisi economica colpì duro e il progetto fu la prima cosa ad essere tagliata e dovetti così tornare ai miei vecchi compiti, ma con maggiore responsabilità dal momento che ero l'unico sistemista rimasto.
Comunque, feci tesoro dell'esperienza, tornando in contatto con la OOP e alcuni nuovi concetti lasciati a margine durante l'Università, come la gestione della memoria in Objective-C e OpenGL.
A causa della crisi economica, dovetti lasciare il posto anche se, fortunatamente, il mio precedente datore mi aiutò a trovare il nuovo lavoro.

Lavoro attuale

La novità più grande è che sono diventato programmatore a tempo pieno in una azienda molto più grande.
Sono cambiati anche gli strumenti utilizzati: da ASP a MFC C++. Ho cominciato sviluppando un software di gestione della produzione della scarpa, quindi per un breve periodo di tempo mi sono dedicato al mondo del 3D e OpenGL. Ho avuto modo di dare uno sguardo superficiale a come quest'ultimo funzionava nelle sue vecchie versione ed usarlo per estendere la finestra di dialogo di Windows per l'apertura dei file, aggiungendovi un'anteprima di file STL. Quando ho iniziato a mettere le mani in pasta con le NURBS, l'azienda ha abbandonato il progetto e mi ha assegnato alla ricerca e all'integrazione di nuovi controlli di movimentazione macchina nelle librerie preesistenti.
Attualmente mi occupo di rinnovare il software di una vecchia macchina da taglio riorganizzando le sue parti, aggiornando l'interfaccia e la gestione del ciclo di lavorazione.

In questi anni ho fortemente migliorato le mie abilità di programmatore, specialmente nel disegnare software usando il modello MVC, la programmazione ad oggetti e rimanendo nell'ambito della programmazione Windows.
Spinto dalla curiosità ho approfondito come MFC funziona: cosa incapsula e da dove viene, in altre parole la programmazione WIN32. Ho anche provato a scrivere da zero un abbozzo di CAD 2D usando sia OpenGL che DirectX, ma ho lasciato il progetto per mancanza di tempo (eh, i figli...).

Esperienza Professionale
PeriodoAziendaLuogoRuoloMansioni
01/03/2010 - 31/03/2010PC & Informatica s.r.l.
Porto San Giorgio,
Via B. Pontecorvo 3,
63822 (FM), Italia
Betatester / Programmatore
  • Testing di software per e-Commerce.
  • Progettazione e creazione di un portale Web.
01/07/2010 - 01/03/2010PC & Informatica s.r.l.
Porto San Giorgio,
Via B. Pontecorvo 3,
63822 (FM), Italia
Programmatore / Sistemista
  • Attività di assistenza tecnica a clienti.
  • Attività sistemistiche su server web.
  • Realizzazione di pagine web in HTML e CSS.
11/06/2011 - 28/01/2012Web Agency s.r.l.
Roma,
Via Nizza 6,
00189 Roma, Italia
Programmatore / Sistemista
  • Realizzazione di applicativi per iPhone e iPad.
  • Sviluppo di software client side per e-Commerce.
  • Mansioni sistemistiche di base: gestione server di posta (IceWarp), webserver (IIS e Apache), domini Windows, macchine virtuali base Hyper-V.
  • Assistenze e manutenzioni in genere.
01/03/2012 - 31/03/2012PC & Informatica s.r.l.
Porto San Giorgio,
Via B. Pontecorvo 3,
63822 (FM), Italia
Programmatore / Sistemista
  • Assistenza hardware/software clienti.
  • Assistenza sistemistica server web. Programmazione.
16/04/2012 - oggiElitron IPM s.r.l.
Z.I. Monte Urano,
Via Dell'Industria 3,
63813 (FM), Italia
Programmatore
  • Programmatore C++.
  • Software per la gestione dei costi della produzione della scarpa.
  • Software per la gestione delle bolle e delle commesse per il taglio dei pellami.
  • Integrazioni per software di progettazione 3D della scarpa.
  • Ricerca e integrazione di nuove schede di movimentazione assi nel FrameWork pre-esistente dell'azienda.
  • Software di movimentazione macchine.
profile for IssamTP at Stack Overflow, Q&A for professional and enthusiast programmers Visita la pagina dei miei progetti

Conoscenze Tecniche - Linguaggi di Programmazione

Nel corso degli ultimi anni in Elitron, ho iniziato a conoscere la programmazione Windows attraverso le sue primitive di base e il FrameWork MFC che le incapsula. Tutti i miei attuali progetti aziendali sono sviluppati in MFC e, recentemente, ho deciso di usare questa tecnologia anche per le rare esigenze domestiche. Alla luce di tutto ciò: C++, Windows e MFC sono gli strumenti che conosco meglio per svolgere il mio lavoro.
Sempre per quello che riguarda il mondo Microsoft/Windows non sono scevro di conoscenze .NET, in particolare uso spesso C# e recentemente ho iniziato ad apprendere il C++/CLI.
Dalle precedenti esperienze lavorative ho un minimo bagaglio di Objective-C e ASP, mentre nel periodo accademico ho dato uno sguardo al Java e PHP. Se dovessi sviluppare ora un software con uno di questi mezzi, dovrei quasi ripartire da zero.
Sempre in ambito lavorativo, ho cominciato ad addentrarmi nel mondo del 3D attraverso OpenGL, seppur con versioni arcaiche (2.0). Purtroppo, per scarsità di tempo, non ho modo di andare più a fondo, magari dando anche uno sguardo alla concorrenza (DirectX).
Infine, anche se non rientrano appieno nei linguaggi di programmazione, conosco HTML (4.01 e sto vedendo a tempo perso il 5), CSS (2 e 3) e JavaScript (quest'ultimo un po' alla lontana).

Conoscenze Tecniche - Strumenti

Ovviamente Visual Studio, versioni 2010 e 2005 al lavoro e 2013 Express a casa. Conosco abbastanza bene i sistemi operativi di casa Microsoft (sono un entusiasta), per cui mi so muovere agilmente con tutte le versioni "Client" e ho in passato utilizzato le versioni "Server" 2003, 2008 (poco in realtà), 2008R2. Tuttavia, con queste ultime versioni, avendo smesso i panni del sistemista, ho perso un po' la mano.
Sono pratico nell'uso dei programmi Excel e Word, come per i corrispettivi "free" Calc e Writer.
Assolutamente negato per la computer grafica anche se ho dato uno sguardo al rendering per questioni lavorative utilizzando il motore POV-ray.

Quando non programmo...

Corro. Mi sto preparando per fare qualche gara locale sui 10.000, ma in passato ho praticato anche Rugby, lasciato per evidente incapacità.
Recentemente ho anche scoperto la "passione" per l'economia. Ho seguito blog, studiato, letto libri e anche assistito a conferenze. In generale, questo è il peggior hobby che qualcuno possa scegliersi: apre la mente e gli occhi sul mondo moderno e quello che si vede non è per niente bello.
Infine, ho riesumato la vecchia passione per le lingue, incominciando a studiare la mia terza: il Russo. Chiedete alla mia professoressa come vado.

Lingue

LinguaComprensioneParlatoScritto
AscoltoLetturaInterazioneProduzione Orale
ItalianoLingua Madre
IngleseB2C1B1B1B2
RussoA1A1A1A1A1

Contatto Skype: mogoyshou