|
|
Le Certificazioni Professionali S U N Per Java
di FabrizioGianneschi, Settembre 2003
pubblicato su http://www.programmazione.it Introduzione Di questi tempi, a causa della contrazione del mercato del lavoro nel settore IT, la ricerca di personale qualificato è divenuta da parte delle aziende unÂ’attività decisamente critica. Se negli anni del boom della cosiddetta new economy bastava professarsi “programmatori”, con poca o scarsa esperienza, per avere ottime speranze di assunzione, oggi la situazione è notevolmente cambiata. Molti di coloro che si sono improvvisati ora sono stati licenziati e persino chi riteneva di essere in una botte di ferro in realtà non può dormire sonni tranquilli. Senza tuttavia essere troppo catastrofisti, dato che per fortuna alcuni fattori indicano i primi segni di risveglio del settore (alternante cicli positivi e negativi, come tutti gli altri), non si può negare che lÂ’elevata professionalità sia uno dei fattori che possono garantire un maggiore successo sul lavoro e prospettive di crescita migliori. Le certificazioni professionali sono uno degli strumenti che un informatico può sfruttare a tal proposito. Che cos'è una certificazione Una certificazione è un attestato rilasciato da una azienda dÂ’informatica, a seguito di uno o più esami, che dimostra la competenza tecnica e teorica di un candidato relativamente ad un prodotto o ad una tecnologia dellÂ’azienda certificante. Tutte le maggiori aziende IT (Microsoft, Oracle, IBM e naturalmente anche SUN) dispongono di propri programmi di certificazione e rilasciano gli attestati secondo modalità dÂ’esame (costi, numero di prove, difficoltà) diverse le une dalle altre. Sostenere un esame di certificazione comporta generalmente uno studio intenso, andando spesso a toccare gli argomenti in maniera molto più dettagliata di quanto si faccia abitualmente nellÂ’attività lavorativa quotidiana. Il premio a seguito di tanto impegno è un riconoscimento ufficiale , che senzÂ’altro valorizza il proprio profilo professionale (oltre ad una discreta dose di soddisfazione, che non guasta mai). Che cosa propone SUN per Java Avendone dato i natali, SUN dispone da parecchio tempo di un programma di certificazione per Java. Attualmente, le certificazioni previste sono cinque; due sono dedicate a J2SE, il nucleo del linguaggio, mentre le restanti sono relative a J2EE, ovvero la piattaforma Enterprise. Stupisce la mancanza di esami per J2ME, nonostante il crescente successo di questa edizione. ![]() Figura 1 – Le certificazioni SUN per Java. Modalità Per sostenere un esame bisogna essere in possesso di un voucher, in Italia acquistabile esclusivamente e direttamente da SUN Microsystems Italia (4). Se lÂ’esame consta di più prove si rendono necessari più voucher, facendo crescere così i costi da un minimo di circa 150 euro fino a qualche centinaio (per la certificazione Architect – 3 prove), più IVA. Una volta ottenuti i voucher necessari, ci si può prenotare per sostenere le prove. Gli esami SUN, come quelli della stragrande maggioranza delle aziende IT, si sostengono presso centri autorizzati Prometric, società specializzata negli esami di certificazione (5). Le prove si tengono al calcolatore, in stanzette videosorvegliate, silenziosissime e poco affollate, in unÂ’atmosfera abbastanza austera. Chi si illude di sbirciare qualcosa, o imbrogliare, è avvertito: avrà vita dura. Dopo alcuni minuti dal termine della prova è possibile conoscerne lÂ’esito ed ottenere il primo certificato attestante il risultato del test. Trofei di caccia Coloro che superano con profitto le prove ricevono a casa un secondo certificato, da appendere al muro - “ A Certification certificate looks good on your wall ” – dicono in (1), unitamente ad unÂ’inutile spilletta (non si è mai visto nessuno andare in giro con una di quelle addosso) e, recentemente, una ben più utile tesserina stile carta di credito, da tenere nel portafoglio e mostrare a richiesta. Infine, dopo aver firmato e rispedito indietro un contratto da accettare, si riceve anche la versione digitale del logo della certificazione, che farà bella mostra di sé nel curriculum, biglietto da visita e carta intestata. Non ci sono, per chi si fosse illuso, premi in denaro dÂ’alcun genere. Quelli dovrete spuntarli al vostro capo! Validità Dopo aver attraversato un periodo durante il quale tutte le certificazioni emesse avevano durata biennale, da Agosto 2003 sembra che SUN abbia finalmente deciso di legare tutte le certificazioni ad una particolare versione del prodotto, facendole di fatto durare “a vita” (ovviamente del prodotto stesso). Ad esempio, attualmente esistono due versioni della certificazione “Programmer”, rispettivamente per J2SE v1.2 e J2SE v1.4, e chi ottiene lÂ’una non è automaticamente (e giustamente) certificato anche per lÂ’altra, a meno di un ulteriore esame. Stesso discorso per le certificazioni relative a J2EE, per il momento vincolate alla versione 1.3. In caso di insuccesso Chi non ce la fa non disperi. Previo riacquisto dei voucher necessari e lasciate trascorrere almeno due settimane, può ripetere le prove. Fallire una prova può essere molto facile in caso di preparazioni incomplete o insufficienti, ma lo stress e la fretta possono giocare brutti scherzi anche ai più preparati, specialmente la prima volta, in cui ci si reca “alla cieca” al centro Prometric. Le Certificazioni Entriamo ora più nel dettaglio in ogni singola certificazione, illustrandone le caratteristiche. SCJP – Sun Certified Programmer for Java 2 È la certificazione di base, quella che si deve prendere per prima. Tutte le altre (esclusa la SCEA) la prevedono come requisito obbligatorio. Tratta i fondamenti del linguaggio, dalla programmazione ad oggetti ai Thread, passando per la Garbage Collection, Swing, AWT, lÂ’I/O, secondo la versione dellÂ’esame. Nel rispondere alle domande bisogna stare attenti alle maiuscole (Java, lo ricordiamo, è un linguaggio case-sensitive ), allÂ’accesso alle variabili private/pubbliche e così via. È un test molto severo e puntiglioso, fatto apposta per far cadere in errore gli ex programmatori C/C++ con false similitudini. Un esempio è il seguente test, relativamente famoso, la cui risposta è lasciata per esercizio: Listato 1 – Esempio di domanda dÂ’esame SCJP
Provate a rispondere alla domanda, ma soprattutto sforzatevi di comprendere il motivo del risultato ottenuto. SCJD - Sun Certified Developer for Java 2 È una certificazione di secondo livello, in due prove, volta ad accertare le capacità del candidato di portare a termine un vero programma Java, come in una reale situazione lavorativa. La conoscenza del linguaggio è data per scontata dallÂ’acquisita SCJP, per cui il programma verterà su argomenti più complessi, come lÂ’interazione con un database, la comunicazione client/server e così via. Le specifiche vengono scaricate dal sito della SUN. Una volta completato il tutto con comodo a casa, si rispedisce tutto indietro per la valutazione. Se la valutazione è positiva, si passa alla seconda prova, nella quale si discute in maniera scritta dei pregi, difetti e caratteristiche dellÂ’applicazione realizzata nella prima prova. Seppur sempre validissima, è una certificazione un poco in declino a causa del suo legame con Swing e AWT. Al giorno dÂ’oggi, infatti, forse sono meglio spendibili le certificazioni maggiormente legate al mondo Web, come quelle relative a J2EE. SCWCD - Sun Certified Web Component Developer for J2EE È una certificazione di secondo livello, a prova unica (quiz). La figura di questo profilo è lo sviluppatore che si occupa di realizzare applicazioni Web attraverso Servlet e JSP, utilizzando magari EJB sviluppati da programmatori più esperti. Viene richiesta familiarità nello sviluppo di componenti Web riutilizzabili, quali i JavaBeans ed i Custom Tags, insieme ad unÂ’infarinatura teorica di alcuni Design Pattern di base. LÂ’esame è molto simile alla SCJP in quanto a puntigliosità; è richiesta, infatti, unÂ’ottima conoscenza della struttura del deployment descriptor di unÂ’applicazione Web secondo J2EE. Per fortuna, nel complesso lÂ’esame sembra lievemente più semplice. Ci sono delle fughe di notizie secondo le quali lÂ’esame sarebbe in corso di ridefinizione per adeguarsi alle nuove specifiche J2EE 1.4. Per chi non volesse correre rischi di interrompere la preparazione, si consiglia di aspettare direttamente il nuovo esame (probabilmente in autunno-inverno 2003) oppure affrettarsi per sostenere lÂ’attuale. SCBCD - Sun Certified Business Component Developer for J2EE È la certificazione più recente, uscita a fine Agosto 2003. Può essere vista come il proseguimento della SCWCD, anchÂ’essa è di secondo livello e ha come prerequisito la sola SCJP. Tratta in maniera esaustiva la specifica EJB 2.0 ed è rivolta agli sviluppatori di componenti di business per applicazioni Web distribuite, aventi necessità di scalabilità, alta affidabilità, supporto transazionale, terreno nel quale gli EJB si collocano per definizione. LÂ’esame, prova unica a quiz, è meno puntuale della SCWCD per quanto riguarda i deployment descriptor (è sufficiente essere a conoscenza dellÂ’esistenza di alcune informazioni, piuttosto che della loro sintassi), ma in compenso la specifica EJB è sviscerata in ogni singolo paragrafo, con particolare enfasi sui ruoli previsti dallÂ’architettura e sui cicli di vita dei bean. Prima di tuffarsi in questo nuovo esame, è consigliabile avere acquisito un poÂ’ dÂ’esperienza pratica con gli EJB. SCEA - Sun Certified Enterprise Architect for J2EE È considerata la vetta delle certificazioni per Java, la più ambita poiché, non a caso, consente di fregiarsi del titolo di “J2EE Architect”. Le figure professionali di questo tipo progettano, analizzano ed implementano soluzioni J2EE-compliant per applicazioni di livello Enterprise: le più complesse. Più o meno è la stessa classe di problemi degli sviluppatori della SCBCD, ma con un raggio più ampio di visione sul progetto. Oltre alla conoscenza (stavolta solo di base) della tecnologia EJB, è richiesta dimestichezza nellÂ’affrontare problemi di connessione a sistemi proprietari ( legacy ), conoscenza del linguaggio UML, dei Design Pattern, delle problematiche di sicurezza dei sistemi. In particolare, è verificata lÂ’abilità di riconoscere lÂ’effettiva applicabilità di J2EE ad un problema dato. LÂ’esame consta di ben tre prove: un quiz a risposta multipla, un progetto da realizzare autonomamente ed una discussione sul progetto stesso. Potrà sembrare a prima vista strano, ma questa certificazione non ha nessun prerequisito, nemmeno la SCJP. In realtà, la decisione è corretta: un architetto software non deve necessariamente essere un buon programmatore, così come un buon ingegnere non deve saper necessariamente costruirsi una casa con le proprie mani. Il suo ruolo è la progettazione, generalmente anche il coordinamento; lo sviluppo è svolto occasionalmente. Anche questa certificazione è in corso di revisione presso la SUN (come detto per la SCWCD), pertanto è auspicabile una nuova versione dellÂ’esame per la fine del 2003. Il lato oscuro delle certificazioni Si è parlato dellÂ’utilità delle certificazioni e del grande peso che possono rivestire nella figura di uno sviluppatore. Fin qui sembrerebbero tutte rose e fiori: una certificazione porta con sé maggiore cultura, gloria ed onori, riconoscimenti. In realtà non è sempre così o, meglio, non lo è per forza. Esistono alcuni “lati oscuri” nel mondo delle certificazioni che devono essere doverosamente segnalati. LÂ’aspetto commerciale Le certificazioni professionali sono prima di tutto un grande business per le aziende che le creano. Queste guadagnano dai costi dÂ’esame, dai corsi, dai libri dedicati e, non ultimo, dal fatto che voi, una volta certificati, andrete ovviamente in giro a diffondere il verbo che più loro aggrada (cioé le loro tecnologie), alimentando la catena. Non aspettatevi dunque di campare una vita da una certificazione: prima o poi questa scadrà oppure il prodotto cui è indissolubilmente legata diventerà obsoleto, annullando il valore del vostro pezzo di carta. Se non scadessero, non ci sarebbero più guadagni. Il riconoscimento sul lavoro Sul posto di lavoro non sempre una certificazione viene riconosciuta come ci si aspetta. Questo è dovuto a volte ad una scelta sbagliata delle certificazioni (es: certificazioni Java in unÂ’azienda orientata a Microsoft), ma anche alla diffidenza che alcuni hanno sullÂ’argomento. In azienda conta prima di tutto il “saper fare” (presto, a poco prezzo e bene), pertanto alcuni manager potrebbero essere riluttanti a concedere riconoscimenti economici o di carriera sulla base dÂ’esami che magari, spesso non a torto, sono definiti troppo nozionistici. Quello che conta è che basiate il vostro studio per imparare veramente qualcosa di nuovo e non per avere solo una medaglia in più; i riconoscimenti verranno di conseguenza perché sarete più competenti, capaci e quindi produttivi. Qualità della certificazione Un altro aspetto negativo è la cattiva fama che alcune certificazioni hanno ormai acquistato. Per soddisfare il più ampio numero di candidati (v. aspetto commerciale ), alcune aziende hanno ridotto via via la difficoltà degli esami (o la sorveglianza durante gli stessi), col risultato di abbassare la qualità media del personale certificato. Cosa ancora più grave, in alcuni casi sono reperibili in rete copie delle reali domande dÂ’esame, copiate da qualche candidato. Il segreto sui reali testi dÂ’esame è uno dei vincoli ai quali un programmatore certificato dovrebbe attenersi, perché va a scapito della qualità della sua stessa certificazione; purtroppo, non è sempre così. SUN, in questo scenario, rappresenta per fortuna ancora una sorta “dÂ’isola felice”: la difficoltà degli esami è ancora abbastanza elevata (rapportata ad altre aziende) e le procedure rigorose, in modo da tenere alto il valore aggiunto delle proprie certificazioni. Conclusioni In questo articolo si sono messi in evidenza i punti salienti del percorso di certificazione relativo alla piattaforma Java, secondo quanto previsto da SUN Microsystems, che risulta essere attualmente uno dei più autorevoli e riconosciuti a livello internazionale. Come citato in (1), “la Certificazione non è un punto di arrivo della carriera di uno sviluppatore, ma una prova del proprio costante aggiornamento professionale, nel mentre che la tecnologia progredisce inesorabilmente”. È un esame serio, che affrontare impreparati, e quindi fallire, può essere causa di grosse frustrazioni, al pari del suo superamento privo di adeguato riconoscimento. Spetta al candidato stabilire il proprio percorso di studi, compatibilmente con le sue ambizioni professionali e con un occhio alle novità che il panorama Java offre in continuazione, sempre nellÂ’ottica di fare qualcosa di positivo per la propria azienda, per la propria carriera, ma soprattutto per la propria cultura personale. Bibliografia (1) Sam Dalton, Dan Jepp - "Professional SCWCD Certification", Wrox Press Ltd, 2002 Riferimenti (1) SUN Microsystems - "Home page certificazioni Java" - http://suned.sun.com/US/certification/java/index.html (2) JavaRanch - "La migliore community sulle certificazioni Java" - http://www.javaranch.com/ (3) SUN Microsystems Italia - "FAQ Certificazione" - http://it.sun.com/education/certif03.html (4) Prometric – “Per iscriversi ad un esame” - http://www.2test.com/ LeCertificazioniProfessionaliSUNPerJava is mentioned on: CertificazioniJavaInSardegna |