Definizione
del tipo di occupazione
La
realizzazione di una applicazione per elaboratori elettronici
non consiste semplicemente nella scrittura di programmi
nel linguaggio della macchina. Questa è una delle
fasi di ogni applicazione, la più nota all'esterno
ma non necessariamente la più cospicua o importante.
Le fasi principali della produzione di software possono
essere così individuate:
a.
Analisi
b. Progettazione delle funzioni
c. Codifica
d. Debugging
e. Testing
Le
fasi a, b, d, e, sono altrettanto essenziali di c, anche
se meno note ai non specialisti. Le fasi a e b sono
quelle tipiche dell'analista; le fasi c, d, e del programmatore.
In linea di massima, la carriera di specialista di informatica
parte con la figura di programmatore junior, che poi
evolve in modo automatico, col passare del tempo, in
quella di programmatore senior. Il passaggio da programmatore
ad analista non è invece scontato, e per buona
parte dipende dalla predisposizione alle attività
di analisi che il soggetto presenta (oltre che, naturalmente,
dalle condizioni contingenti nelle quali si trova ad
operare). La fase b è quella in cui l'informatica
individua i programmi di calcolatore che devono essere
realizzati perché si dia in effetti la soluzione
del problema preposto, i legami che essi intrattengono
vicendevolmente e le strutture dei dati e degli archivi
coinvolti. Questa attività è tipica di
una figura professionale che si chiama "analista".
L'analista programmatore è colui che sviluppa
l'analisi di un problema in termini informatici, e partecipa
anche alla stesura dei programmi che pongono in essi
una applicazione. L'analista programmatore è
dunque un programmatore di esperienza, ovvero senior,
che unisce alle capacità e alle funzioni tipiche
del programmatore, cioè quelle di codificare
i programmi, quelle dell'analista. Egli dunque è
in grado di comprendere il problema attorno al quale
si accentra l'applicazione, di razionalizzarlo entro
un opportuno modello, e di formalizzarlo in modo tale
che esso possa essere prodotto secondo un approccio
automatizzato. Analista programmatore è colui
che poi prosegue nel lavoro, e partecipa anche alla
stesura dei programmi, normalmente con la funzione di
capo-progetto. E' importante notare che la differenza
fra analista puro e analista programmatore dipende spesso
esclusivamente dalle dimensioni dell'azienda o della
software house in cui il soggetto opera. Intatti solo
strutture medio-grandi possono permettersi analisti
che poi non partecipano all'attività di programmazione.
Situazione-Tipo
di lavoro
L'analista
programmatore può essere un lavoratore dipendente,
nel caso in cui svolga la sua attività per una
azienda del settore non informatico. Può svolgere
però la sua attività anche in una software
house, oppure come libero professionista. Nei vari casi
la situazione del lavoro può essere abbastanza
dissimile, anche se la natura del lavoro presenta indubbie
invarianze. In generale, l'analista vive per un verso
le attività relazionali tipiche di chi gestisce
un contatto con l'utente finale, per un altro gli stimoli
e le frustrazioni tipiche del programmatore. Per quanto
riguarda il primo aspetto, si tratta di sviscerare situazioni
e problemi degli ambiti più disperati, con grande
elasticità mentale, fino a dipanarne la natura
formalizzandola entro schemi trattabili in modo automatizzato;
per il secondo, si ha la tipica attività di chi
produce software nell'alternanza di lavori di scrivania
a fasi al terminale, di immissione di controllo e di
prova dei programmi e delle procedure. Dal punto di
vista dei ritmi e degli orari, la situazione è
molto diversa tra chi svolge un lavoro dipendente e
chi lavora come libero professionista o comunque in
modo autonomo. Infatti normalmente la scansione temporale
dell'attività dipende dai tempi delle commesse
nelle quali il programmatore è coinvolto. Per
molte ragioni, anche teoriche, avviene spesso che le
commesse di produzione del software siano in ritardo,
e che l'analista programmatore, che di norma ne è
il capo progetto, o comunque riveste in esse una posizione
di responsabilità ne viene coinvolto in modo
ansioso. Questo si può verificare anche per il
lavoratore dipendente, nella misura in cui è
coinvolto nell'ambito dell'azienda in cui opera. Nel
caso di software houses, la cui stessa sopravvivenza
dipende dalla produzione di software e dai suoi ritmi,
il lavoro di analista programmatore può avvenire
in modo stressante, quanto meno in certi periodi. In
altri casi, specie nei momenti iniziali di una applicazione,
in cui il lavoro è prevalentemente di progettazione,
e dunque creativo, l'attività può invece
assumere ritmi meno concitati, ed essere più
gratificante.
Requisiti
per l'accesso al ruolo
Dal
punto di vista delle capacità richieste, va compreso
che l'attività di analisi è molto più
variabile e meno determinante di quella di programmazione.
L'analisi presuppone capacità intellettuali,
ideative e spesso anche relazionali, nel senso che spesso
attinge suoi dati di ingresso attraverso il contatto
con l'utente finale. L'analista programmatore deve dunque
essere in grado, tra l'altro, di calarsi nella realtà
del suo interlocutore, costruire con lui un rapporto
produttivo, decodificarne il linguaggio e comprenderne
i problemi e le richieste. Per quanto riguarda l'attività
di programmatore, prevalgono invece qualità come
la pulizia mentale, la capacità di applicare
coerentemente un metodo, e, in specie nelle fasi di
prova di programmi, le doti di intuizione e il sapere
alternare processi deduttivi a quelli euristici, ovvero
per prova ed errore. Per le professioni informatiche,
così recenti, almeno nelle quantità significative
per il mercato del lavoro, non esiste un albo, né,
spesso, un iter preciso dal punto di vista del curriculum
scolastico. All'attività di programmatore si
può arrivare in modi diversi. Senza un curriculum
scolastico orientato a questa professione alle spalle,
si può ugualmente imparare a programmare seguendo
un corso di formazione presso un centro di formazione
professionale, normalmente dalle 600 alle 1200 ore,
o un corso di teoria della programmazione e di uno o
più linguaggi tenuti da case di informatica.
Oggi cominciano a giungere sul mercato, a livello di
diplomati, coloro che hanno seguito scuole tipo ITC
o TI orientati alla programmazione: nel primo caso il
titolo di maturità conseguito è quello
di "ragioniere programmatore", nel secondo
di "perito informatico". Per la specificità
dei due curriculum, abbiamo nel primo una competenza
orientata al software gestionale, quello tipicamente
legato alle procedure contabili e amministrative, nel
secondo un orientamento verso il mondo della produzione,
con capacità e conoscenze non disgiunte dal mondo
dell'hardware (l'elettronica è una materia che
si studia in parallelo all'informatica). Ad un livello
ancora più elevato e specifico, si collocano
i laureati in materie tecniche, specialmente ingegneri
elettronici, che rappresentano il bacino di reclutamento
più battuto dalle aziende alla ricerca di personale
qualificato. Spesso una competenza di programmazione
è acquisita anche all'interno di una laurea tecnico
scientifica, come astronomia, fisica, matematica. Esistono
anche, ma si contano sulla punta delle dita, corsi di
laurea specificatamente in informatica a Pisa, a Milano,
a Bari, e, in fase di decollo, a Bologna.
Prospettive
di carriera
L'iter
consolidato, in azienda, che segue la carriera di programmatore,
è quello di un periodo di tempo con la qualifica
di programmatore junior. Normalmente tale periodo dura
un biennio. Successivamente si parla di programmatore
senior. Il passaggio tra le due qualifiche è
praticamente automatico, in quanto derivante unicamente
dall'esperienza e non dalle abilità e predisposizioni
personali. Il successivo passaggio da programmatore
senior ad analista programmatore, è per quanto
consequenziale, tutt'altro che scontato. Di fatto, qui
entrano in gioco le capacità personali, oltre
ai fattori ambientali legati al tipo di azienda entro
il quale ci si muove. Ma non è facile individuare
requisiti di un buon analista, perché non esiste
a tutt'oggi la ricetta buona per l'analisi. Essa è
attività creativa e artigianale, spesso recitata
a soggetto dalle varie persone, anche se sulla scorta
di ben precisi sussidi tecnici e, normalmente di una
metodologia. L'importante è capire che non vi
è stretto collegamento tra la predisposizione
alla programmazione e quella all'analisi. Un buon analista
non è necessariamente un programmatore migliore
di altri, né un buon programmatore è senz'altro
in grado di assumere compiti di analisi. Quest'ultima
competenza, inoltre, presuppone non dirado anche una
certa predisposizione ai rapporti umani, poiché
i dati dell'analisi vanno spesso ricavati da colloqui
con le persone. Detto qual' é l'iter interno
all'azienda, si deve notare che la professione in esame
offre notevoli possibilità di lavoro autonomo.
Diremmo anzi che l'epilogo normale di questo tipo di
professione, per chi abbia ambizione e capacità,
e quello del lavoro in proprio, o come libero professionista,
o attraverso la costituzione di società, di persone
o di capitale, con altri. Questo fenomeno è relativamente
frequente, e si instaura anche grazie al tipo di dipendenza
che l'azienda di provenienza ha con un buon analista
programmatore. Infatti, l'azienda di provenienza può
diventare uno dei migliori clienti dell'analista programmatore
che si è messo in proprio: questi continuerà
a prestare la sua opera, a tariffe ben più elevate.
D'altra parte, poiché la produzione di software
avviene normalmente a ritmi discontinui, è frequente
che un'azienda anche grossa sia sottodimensionata nell'EDP
e quindi disposta ad acquistare molta consulenza esterna.
Professioni
simili e correlate
L'analista
programmatore può essere considerato una figura
correlata con le due competenze che in lui assommano:
quella di analista e quella di programmatore. Senza
dubbio comunque, come si è detto, la sua specificità
non si realizza compiutamente né nell'una né
nell'altra, proprio perché, come si è
detto, esse sono sostanzialmente dissimili.
Livelli
occupazionali e previsioni a medio termine
Come
al solito per e figure informatiche non è facile
stimare correttamente la consistenza numerica di una
professione. Infatti, in specie nel lavoro dipendente,
possono non essere pochi i programmatori che vengono
censiti semplicemente come impiegati, in quanto inquadrati
come tali. Una stima prudenziale potrebbe essere di
30000 unità. Dal punto di vista delle previsioni
a medio termine, il mercato del software è in
forte espansione. Esso è valutato, per il 1986,
in circa 2000 miliardi, e le stime per i prossimi anni
novanta si orientano sui 10.000 miliardi. Il numero
degli addetti del settore sarà quindi senza dubbio
in espansione. Tuttavia, è bene tenere presente
che alcuni tipi di scuola, come si è spiegato
sopra, cominciano ad immettere sul mercato in modo sistematico
figure a professionalità informatica.
Fonti di in formazione
Riportiamo
qui di seguito alcune indicazioni utili per poter avere
informazioni più approfondite e mirate relative
alle figure professionali dell'area informatica. Si
sottolinea, inoltre, che le fonti informative indicate
sono state individuate fra tutte in base al criterio
di facile accessibilità. - ASSOCIAZIONI Dl CATEGORIA
AICA - RIVISTE Zero Uno Informatica oggi Computerworld
Media 2000 - CHI FA CORSI Operatori privati Centri di
Formazione Professionale (finanziamenti CEE).
Fonte:
www.regione.lazio.it
|