Instapcompetentieprofiel van een programmeur



Vergelijkbare documenten
PROGRAMMEUR PROGRAMMEUR BASISVAARDIGHEDEN

Instapcompetentieprofiel van een calculator

Instapcompetentieprofiel van een management assistant

Instapcompetentieprofiel van een magazijnier

PROGRAMMEUR PROGRAMMEUR BASISVAARDIGHEDEN

Instapcompetentieprofiel van een administratief bediende personeelszaken

Examenprogramma wiskunde D havo

WISKUNDE D HAVO VAKINFORMATIE STAATSEXAMEN 2016 V15.7.0

Vlaams Archeologencollectief

Hoe kan je breed en permanent evalueren?

Instapcompetentieprofiel van een receptioniste/telefoniste

Thomas Voorbeeld. Thomas Leiderschap Vragenlijst. Persoonlijk & Vertrouwelijk

Formulier A. Inventarisatie takenpakket

stafmedewerker Voorjaar 2018

360 FEEDBACK 15/06/2012. Thomas Leiderschap Vragenlijst. Thomas Voorbeeld. Persoonlijk & Vertrouwelijk

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

DIENSTHOOFD. Netinfradiensten Domeindiensten/Technische diensten Asse, Brugge, Gent, Ronse

2.3 HET STARR-INTERVIEW IN THEORIE & PRAKTIJK

Examenprogramma wiskunde D vwo

FUNCTIEFAMILIE 5.1 Lager kader

Competentiemanagement bij de federale overheid

TAXONOMIE HISTORISCH DENKEN

Voorjaar I. Missie van het centrum

FUNCTIEBESCHRIJVING ADVISEUR (M/V)

STARR-interview in theorie & praktijk

360 FEEDBACK 30/07/2013. Thomas Vragenlijst

FUNCTIEBESCHRIJVING DIVISIEMANAGER (M/V)

DISCO : Algemene handleiding

De Taxonomie van Bloom Toelichting

KNELPUNTBEROEPEN LOKALE BESTUREN Focus op een aantal knelpuntfuncties

Afdelingshoofd Maatschappelijke Dienstverlening

Projectmedewerker lokaal cultuurbeleid

Takenpakketprofiel ( )

Het verzamelen van de opleidingsbehoeften gebeurt in verschillende fases:

Identificatiegegevens kandidaat. Identificatiegegevens onderneming. Naam* Adres* Telefoon* adres* Naam. Ondernemingsnummer* Datum van onderzoek

Verdere evolutie van de geharmoniseerde werkloosheid in ruime zin

FUNCTIEFAMILIE 1.2 Klantenadviserend (externe klanten)

FUNCTIEFAMILIE 1.3 Technisch specialist

Hoe goed of slecht beleeft men de EOT-regeling? Hoe evolueert deze beleving in de eerste 30 maanden?

Advies over de modulaire opleiding NT2 alfa R1, traject 1.2 voor de basiseducatie

Competentiemanagement bij de federale overheid

Instapcompetentieprofiel van een werfleider-wegenbouw

Competentietest. Hoe werkt de test?

C e v o r A. Beroepsprofielen van bedienden Leertraject. Bouwsector. Polyvalent bediende. tempera in opdracht van Cevora Juni

Conferentie Met Recht Geletterd 29 november De g-factor in uw bedrijf of organisatie

Bantopa Terreinverkenning

WISKUNDE D VWO VAKINFORMATIE STAATSEXAMEN 2016 V15.7.0

FUNCTIEBESCHRIJVING SENIOR PROJECTLEIDER (M/V)

VOORBEELD VAN FEEDBACKRAPPORT SELOR TAALTEST

Competentieprofiel Praktijkdocent Duaal Leren

Coach Profession Profile

Praktische handleiding FSMA_2018_07 van 22/05/2018

360 FEEDBACK 10/08/2012. Thomas Commercieel Vragenlijst. Thomas Voorbeeld. Persoonlijk & Vertrouwelijk

Standpunt rapport in het basisonderwijs PBD Basisonderwijs (september 2015)

Profiel en tevredenheid van uitzendkrachten. In samenwerking met

Uitbesteding van boekhoudkundige activiteiten bij Vlaamse kmo s

Indien uw project geselecteerd wordt, krijgt u ongeveer 6 sessies coaching verspreid over de periode januari 2016 december 2016.

De onderbouwing in het ervaringscertificaat

Evaluatie stage extra muros

Selectiereglement dossierbeheerder personeel

FUNCTIEFAMILIE 5.3 Projectmanagement

WKK-barometer 2016 juni Zwartzustersstraat 16, bus Leuven

Functiebeschrijving: Deskundige (m/v)

6. Project management

Rapport Docent i360. Test Kandidaat

SUCCESVOL LEREN. Tips voor studenten.

Agile game productie

Jaarproject programmeren bij LORE

3. Opleidingskader voor de opleiding Informatiecoördinator

Hoe kan u strategie implementeren en tot leven brengen in uw organisatie?

WP 8.3 Resultaten van de videoanalyse van de gebruiksgroeptesten.

Functiebeschrijving. Systeembeheerder. Graad B1-B3

INTRODUCTIE TOOLBOX voor GEBRUIKERS. duurzame plaatsing van werknemers met autisme

Informatica 2 Studiehandleiding

DIENSTHOOFD. Netinfradiensten Domeindiensten/Technische diensten Asse, Brugge, Gent, Ronse

PE-PLUS TOETSTERMEN WFT-MODULE. Consumptief Krediet

Vertrek van je eigen brede kijk op jeugd en jeugdbeleid

Opleiding en inscholing ORPADT

Arc-en-Ciel Functieprofiel

Tabel competentiereferentiesysteem

Project methodiek. Auxilium BV Oude Delft CD Delft. T: F: E:

Huistakenbeleid. 1. Visie op huistaken/lessen. 2. Concrete afspraken binnen de school. Samengesteld door WG Leren Leren, in samenwerking met het team.

NT2-docent, man/vrouw met missie

FUNCTIEBESCHRIJVING BELEIDSMEDEWERKER ONDERZOEKSINFRASTRUCTUUR

FUNCTIEBESCHRIJVING ADJUNCT TEAMVERANTWOORDELIJKE SPORT (ADJUNCT WERKLEIDER) (M/V)

STAGES IN ARBEIDS- EN ORGANISATIEPSYCHOLOGIE: FEEDBACKINSTRUMENT

Competentieprofiel Mentor Duaal Leren

De afmetingen en waarde van onroerende goederen vaststellen (terreinen, gebouwen, werktuigen, ) om ze zo precies mogelijk financieel te kwalificeren

Functiefamilie ET Thematische experten

FUNCTIEBESCHRIJVING JURIST

Voorjaar I. Missie van het centrum

WKK-barometer december. Zwartzustersstraat 16, bus Leuven

FUNCTIEBESCHRIJVING STAFMEDEWERKER GIS

Handleiding bij projectvoorstel Geïntegreerd strategisch loopbaanbeleid

Concreet wordt aan de respondent de volgende ultieme vraag gesteld:

Maak de juiste keuze. Coaching. Selectie/Promotie. Management Ontwikkeling. Loopbaanbegeleiding. Copyright 2005 Alert Management Consultants

Combinatiefunctie Wijkwerk-coach (Wijkwerken Zuid-West-Vlaanderen) & Trajectbegeleider Anzegem/Deerlijk Functiebeschrijving en competentieprofiel

VOORBEELD VAN FEEDBACKRAPPORT SELOR TAALTEST

Wervings- en selectieprocedures en discriminatie: een bevraging van HRpersoneel. Lieve Eeman en Miet Lamberts - HIVA

Transcriptie:

Instapcompetentieprofiel van een programmeur In opdracht van Cevora (maart 2012) Michel Albertijn & Johan Desseyn

Instapcompetentieprofiel van een programmeur Inhoudstafel Inleiding 2 1. Een instapcompetentieprofiel 3 1.1. Concept 3 1.2. Gebruikswaarde 5 1.3. Gegevensverzameling 6 2. De instapcompetenties doorgelicht 7 2.1. Een leertraject 7 2.2. Het leertraject van de programmeur 9 2.3. Samenvatting: het twaalfmaandenprofiel 17 3. Het instapcompetentieprofiel en opleiding 18 3.1. Totaalopleiding gericht op eenvoudige en goed afgebakende realisaties 19 3.2. Leerdoelstellingen voor de programmeur 21 3.3. Opleiding en beroepsevoluties 26 3.4. Andere bijzonderheden 30 Bijlage 1: Lijst van competenties die werden voorgelegd aan de respondenten 31 Bijlage 2: Tijdsintensiteit en moeilijkheidsgraad van de competenties voor programmeur 35 Bijlage 3: Bevraagde bedrijven 40 P A G I N A 1

Inleiding 1. Wat is een instapcompetentieprofiel? Een instapcompetentieprofiel is een doorlichting van de noodzakelijke competenties voor een beginnend programmeur. komt tot stand op basis van twintig gestandaardiseerde interviews met bedrijven. is geen opleidingsprofiel. biedt ondersteuning bij het inhoudelijk en structureel uitwerken van opleidingen. kan gelezen worden als een verzameling leerdoelstellingen. is kwantitatief onderbouwd. 2. Concrete uitwerking Een instapcompetentieprofiel deelt de competenties voor een programmeur in volgens het tijdstip waarop ze van een beginnend beroepsbeoefenaar verwacht worden. geeft per competentie een indicatie van belang voor de dagelijkse uitoefening van het beroep, gebaseerd op tijdsintensiteit en moeilijkheidsgraad. peilt naar mogelijke evoluties in het beroep die een impact kunnen hebben op het profiel. Dit rapport bevat verder een overzicht van de gebruikte programmeertalen en omgevingen bij de bevraagde bedrijven. P A G I N A 2

1. Een instapcompetentieprofiel 1.1. Concept Doorlichting van de noodzakelijke competenties voor een beginnend medewerker Dit onderzoek brengt de instapcompetenties van een programmeur in kaart. De instapcompetenties zijn de competenties die bedrijven verwachten van een beginnend medewerker. Een beginnend medewerker wordt gedefinieerd als een persoon zonder specifieke beroepservaring tijdens het eerste jaar voltijdse tewerkstelling in de nieuwe functie. Bij instapcompetenties gaat het enerzijds om een pakket competenties die werkgevers verwachten vanaf de eerste werkdag, en anderzijds om competenties die de beginneling gaandeweg aanleert, terwijl hij het beroep in kwestie al uitoefent. Samen vormen zij het geheel van competenties dat gedurende het eerste jaar noodzakelijk is. Het leertraject Dit rapport belicht het leertraject van een programmeur. Het leertraject biedt een overzicht van de competenties die in de praktijk achtereenvolgens van een beginnend programmeur verwacht worden: Welke competenties zijn noodzakelijk om kans te maken op aanwerving? Welke competenties dient de beginnende programmeur als eerste onder de knie te krijgen? Hoe verloopt het verdere leerproces? Het belang van competenties op basis van tijdsintensiteit en moeilijkheidsgraad Sommige competenties vergen in de uitoefening van het beroep van programmeur meer tijd dan andere of zijn moeilijker. De mate waarin een programmeur precies deze competenties vlot beheerst is bepalend voor zijn rendement binnen het bedrijf. Daarom is het gerechtvaardigd zulke tijdsintensieve en moeilijke competenties binnen het instapcompetentieprofiel een groter belang toe te kennen. De gemeten tijdsintensiteit en de moeilijkheidsgraad van de verschillende competenties worden in dit rapport verwerkt naar een schaal voor het relatieve belang van elke competentie. Deze vormt in het kader van opleiding een belangrijke aanvulling op het leertraject. Waar het leertraject enkel de volgorde van aanleren van de diverse competenties blootlegt, geeft het relatieve belang bijkomende informatie: het brengt een rangorde onder de P A G I N A 3

competenties aan en maakt bijgevolg duidelijk op welke competenties een opleiding de nadruk dient te leggen. Geen geïdealiseerd beeld Het leertraject stelt géén ideaalbeeld voorop. Het leertraject beschrijft de realistische verwachtingen die in de praktijk door bedrijven gehanteerd worden. Geen statisch gegeven Competentieprofielen evolueren. Innovatie en herdefiniëring van de functie kan ervoor zorgen dat de verhoudingen tussen de competenties wijzigen. Daarom peilt dit onderzoek naar toekomstige ontwikkelingen. De analyse wijst uit welke competenties in de nabije toekomst waarschijnlijk in belang zullen afnemen dan wel toenemen. Daarnaast speelt er een tweede dynamisch element: ook de situatie op de arbeidsmarkt heeft invloed. In tijden van arbeidsschaarste zullen bedrijven immers aan een beginnend programmeur lagere eisen stellen dan wanneer er een groot aantal sollicitanten beschikbaar is. Het is dus goed voor ogen te houden dat vraag en aanbod op de arbeidsmarkt een bepalende rol spelen in de reële verwachtingen ten aanzien van de (kandidaat-)beroepsbeoefenaars. Gehanteerde programmeertalen en ontwikkelomgevingen In het verlengde van het instapcompetentieprofiel peilde het onderzoek ook naar de programmeertalen en omgevingen die binnen de bevraagde bedrijven gebruikt werden. Het resultaat geeft een overzicht van de variatie in gehanteerde talen en de populariteit van bepaalde ontwikkelomgevingen. P A G I N A 4

1.2. Gebruikswaarde Basis voor opleiding Een instapcompetentieprofiel is een basisinstrument voor het uitwerken en verfijnen van een opleidingsaanbod voor kandidaat- of beginnende beroepsbeoefenaars. Het baseert zich op de huidige verwachtingen op de arbeidsmarkt ten aanzien van een beginnend beroepsbeoefenaar om de noodzakelijke competenties tegenover elkaar af te wegen en te rangschikken. Het overzicht van welke competenties op welk ogenblik in het leertraject belangrijk zijn, biedt een uitgebreide basis voor het uitstippelen van een nieuw opleidingsaanbod of het evalueren en actualiseren van een bestaand programma. Het bevat informatie die helpt bij het beantwoorden van volgende vragen: Is het zinvol een onderscheid te maken tussen een basis- en een vervolmakingsopleiding?; Kiest men best voor een intensief totaalpakket?; Moet men de opleiding beperken tot een selectie van competenties?; Welke competenties verdienen aandacht in een (eventuele) basisopleiding? Welke competenties dienen in een (eventuele) vervolmakingsopleiding aan bod te komen? Op welke competenties moet een (eventuele) totaalopleiding de nadruk leggen? Met welke trends moet de opleider rekening houden bij het uitstippelen van het aanbod? Geen opleidingsprogramma Een instapcompetentieprofiel is geen opleidingsprogramma. De doorlichting van de noodzakelijke competenties levert informatie over wanneer welke competenties belangrijk zijn, maar zegt niets over hoe dergelijke competenties aangeleerd moeten worden. Het profiel resulteert in leerdoelstellingen. Het leertraject zegt wanneer een bepaalde competentie verworven moet zijn, en de schaal voor het relatieve belang vertelt iets over het belang van de competentie in het profiel. Als een opleiding niet alle competenties kan aanleren, is het belang het beste criterium om bepaalde competenties als leerdoelstelling te weerhouden en andere te schrappen. Hoe die leerdoelstellingen finaal in een opleidingsprogramma moeten worden omgezet is het werk van pedagogen. Instrument voor screening Een instapcompetentieprofiel is eveneens een handig instrument bij het screenen van werkzoekenden en het detecteren van opleidingsbehoeftes bij beginnende beroepsbeoefenaars. Ook bij het evalueren van startende werknemers kan het instapcompetentieprofiel een nuttige controlelijst zijn. P A G I N A 5

1.3. Gegevensverzameling Competentielijst gebaseerd op uitgebreid vooronderzoek Dit instapcompetentieprofiel vertrekt vanuit eerder onderzoek van Tempera naar de competenties van een programmeur (zie margetekst). Deze voorstudie bakent het beroep af, situeert het binnen de sector, om vervolgens de inhoud van de verschillende vaardigheden voor een programmeur op te lijsten en te detailleren. Dit gebeurt onder meer via competentieomschrijvingen die een vaste zinsopbouw volgen. Het zijn deze beschrijvingen die gehanteerd werden bij de interviews met bedrijven. Omwille van hun gelijkvormige opbouw zijn ze haast in één oogopslag te begrijpen, en daardoor zeer praktisch in gebruik voor het peilen naar competentieverwachtingen bij bedrijven. Basis voor de competentielijst De gehanteerde lijst van competenties is overgenomen uit een voorstudie die Tempera in opdracht van Cevora uitvoerde en die het profiel van programmeur in kaart bracht. (Kwalificatieprofiel Programmeur. Beschrijving van de benodigde competenties voor een programmeur. Tempera -studie in opdracht van Cevora, december 2011) Steekproef van twintig Belgische bedrijven Het onderzoek steunt op de bevraging van zaakvoerders of (direct) leidinggevenden van de programmeurs bij twintig Belgische bedrijven. Deze steekproef werd samengesteld uit een lijst van bedrijven die eerder gebruik maakten van de informatica-opleidingen van Cevora. De selectie gebeurde verder op basis van de beschikbaar- en bereidwilligheid van een Nederlandstalige gesprekspartner, en beoogde eveneens een zo groot mogelijke geografische spreiding en een variatie in grote en kleine bedrijven, al dan niet gespecialiseerd in ICT. Gestandaardiseerde interviews De interviews zijn volledig gestandaardiseerd en kwantitatief van inslag. Dit verzekert de onderlinge vergelijkbaarheid van de interviews en maakt een transparante analyse en rapportering mogelijk. Elk interview levert soortgelijke gegevens op rond het leertraject, de relatieve tijdsintensiteit en moeilijkheidsgraad van competenties, mogelijke evoluties in de competentieverwachtingen en de gehanteerde programmeertalen en omgevingen. De interviews vonden plaats in de periode januari- februari 2012. P A G I N A 6

2. De instapcompetenties doorgelicht 2.1. Een leertraject Leervolgorde Op de volgende bladzijden staat het leertraject van een programmeur beschreven. Het geeft aan in welke fase een beginnend programmeur een bepaalde competentie onder de knie heeft. Om te berekenen wanneer een programmeur een competentie heeft aangeleerd, wordt de mediaan van de inschatting van het leertraject door de bedrijven gehanteerd. De mediaan is de middelste waarde van een verdeling. De mediaan werd boven het rekenkundig gemiddelde verkozen, omdat afwijkende scores bij het rekenkundig gemiddelde een veel groter gewicht krijgen. De competenties worden opgedeeld in competenties te beheersen bij aanwerving, en nadien per leerperiode van twee maanden tot het tweede semester. Voor de programmeur resulteert dit in vijf onderscheiden leerfases: competenties te beheersen bij aanwerving; competenties aangeleerd na 2 maanden; competenties aangeleerd na 4 maanden; competenties aangeleerd na 6 maanden; competenties aangeleerd in het tweede semester. De mediaan in plaats van het rekenkundig gemiddelde Een voorbeeld verduidelijkt waarom de mediaan te verkiezen is: Een vaardigheid krijgt van zeven geïnterviewden de volgende scores: 5 maanden 6 maanden 6 maanden 6 maanden 6 maanden 7 maanden 14 maanden Mediaan = 6 Rekenkundig gemiddelde = 7,1 Slechts één bedrijf situeert het aanleren van de vaardigheid na 14 maanden. Werken met de mediaanwaarde nuanceert het gewicht van dit bedrijf, terwijl het rekenkundig gemiddelde dit afwijkende bedrijf een zodanig belang toekent, dat het gemiddelde hoger eindigt dan het oordeel van de zes overige bedrijven. Uitdieping gebaseerd op belang Het beschreven leertraject wordt aangevuld met informatie over het relatieve belang van de competenties. In de tabellen op de volgende bladzijden geeft de kolom uiterst rechts het belang van een competentie weer. Dit belang is gebaseerd op de tijdsintensiteit en moeilijkheidsgraad van de competenties. Aan bedrijven werd gevraagd een tijdsscore en een moeilijkheidsscore toe te kennen aan de verschillende competenties (zie bijlage). Het gemiddelde van beide scores resulteerde in een schaal voor het relatieve belang van de competenties. De schaal verdeelt de competenties in vier groepen. De belangrijkste competenties krijgen vier zwarte bolletjes naast hun omschrijving, de minst belangrijke één. P A G I N A 7 De competenties ingedeeld op basis van hun relatief belang Het belang van competenties binnen het profiel wordt afgeleid uit hun score voor tijdsintensiteit en moeilijkheidsgraad. Via het gemiddelde van beide waardes worden de competenties van hoog naar laag gerangschikt in vier groepen die telkens een kwart van het totale aantal competenties vertegenwoordigen. Het aantal zwarte bolletjes geeft aan tot welk kwart een competentie behoort: Minst belangrijk \/ Meest belangrijk

Competenties die zich tussenin situeren, krijgen naargelang hun belang in het profiel twee of drie zwarte bolletjes. De schaal geeft in een oogopslag een indicatie van het belang van elke competentie binnen het leertraject en vormt dus een belangrijke inhoudelijke uitdieping. Consensus over competenties verwacht van volleerde programmeurs Bedrijven zijn het grotendeels eens wat betreft de competenties die ze verwachten van hun volleerde programmeurs. Op twee na alle competenties uit de voorgelegde lijst worden door meer dan 2/3 van de bedrijven onderschreven als must voor hun volleerde programmeurs. Deze vaardigheden staan in de tabellen tegen een witte achtergrond vermeld. De twee resterende competenties worden door respectievelijk 13 (comp. 25 ivm. Handleidingen voor eindgebruikers) en 11 (comp. 33 ivm rechten en plichten met betrekking tot het gebruik van software) bedrijven verwacht van hun programmeurs. Deze vaardigheden staan afgebeeld tegen een grijze achtergrond. Het zijn vaardigheden die blijkbaar minder vaak verwacht worden van programmeurs, maar niettemin relevant blijven: méér van één derde van de bedrijven vindt ze immers wel degelijk essentieel voor hun programmeur. Interpretatie van de tabellen De tabellen met het leertraject geven per competentie informatie over drie elementen: de chronologische plaats in het leertraject, bij aanwerving, en per verdere leerperiode; het relatieve belang van elke competentie op basis van tijdsintensiteit en moeilijkheid (het aantal zwarte bolletjes); het al dan niet bestaan van een consensus over de noodzaak van de competentie binnen het profiel (de witte of grijze achtergrondkleur). De gecombineerde resultaten voor de drie elementen maken het mogelijk de sleutelcompetenties duidelijk te onderscheiden van de minder belangrijke competenties. Voor sommige competenties stemmen de drie elementen minder overeen. In dat geval is het uiteindelijke gewicht van een competentie binnen het profiel voor interpretatie vatbaar. Een grijze achtergrondkleur of een plaats verderop in het leertraject nuanceren immers enigszins het belang van een competentie met veel zwarte bolletjes. Hoewel dus niet alle bedrijven zo n competentie (bij aanvang) van programmeur verwachten, is ze op basis van tijdsintensiteit en moeilijkheid nog steeds van belang. P A G I N A 8

2.2. Het leertraject van de programmeur Hoge aanwervingsdrempel Voor de programmeur bestaat er een aanzienlijke aanwervingsdrempel. Bij aanwerving moeten 19 van de 33 competenties beheerst zijn. Dit komt overeen met 57,6 procent van het totale aantal competenties. Tabel 1 geeft een overzicht. Zes van de negentien competenties zijn zeer belangrijk (vier zwarte bolletjes). Drie andere competenties krijgen elk drie zwarte bolletjes en behoren dus eveneens tot de belangrijkste helft competenties. Eén van de twee competenties uit het profiel waarover minder eensgezindheid bestaat of ze essentieel zijn voor een programmeur, duikt eveneens op in deze lijst. Ze staat tegen een grijze achtergrond. De prioritair te beheersen competenties spreiden zich over een groot variatie aan competentie. Van enkele competentieclusters wordt verwacht dat ze reeds volledig beheerst worden. Dit is het geval voor de clusters code schrijven, testen, en overleg plegen. Ook het duo competenties met betrekking tot leervermogen en bereidheid ( opvolgen van evoluties en het opnemen van leerervaringen) kan als geheel worden beschouwd dat reeds bij aanwerving verworven dient te zijn. Ook een aantal andere competenties met een belangrijke attitude component vinden we in dit lijstje: discreet omgaan met informatie, tijdsbesteding loggen en kunnen omgaan met veranderingen. Daarnaast valt in de lijst ook op dat reeds een deel van de competenties uit de cluster analyse voorkomen. Tabel 1: De aanwervingsdrempel voor een beginnend programmeur Categorie Competentie Belang CODE SCHRIJVEN CODE SCHRIJVEN 1. kan, aan de hand van een programmeerontwikkelomgeving eigen aan de programmeeromgeving (bvb. Eclipse en Netbeans voor Java; Visual Studio voor.net), uitvoerbare code genereren om een volledig uitgeanalyseerd ontwerp (één op één relatie tussen code en ontwerp) te realiseren 2. kan standaarden en bedrijfs- en projectgebonden afspraken, regels en conventies omtrent de manier wanneer waarop code eruit moet zien (bijv. naamgeving variabelen, ) toepassen om gestandaardiseerde en bedrijfs- of projectconforme code op te leveren P A G I N A 9

CODE SCHRIJVEN CODE SCHRIJVEN PROGRAMMA S DOCUMENTEREN PROGRAMMA S DOCUMENTEREN TESTEN TESTEN 3. kan de bijhorende programmadocumentatie (over functionaliteit, installatie, opbouw, ) van een benoemd stuk code, bibliotheek (libraries, API s) of programma begrijpen om de bestaande code te integreren, te hergebruiken of gericht aan te passen bij het oplossen van een specifieke ontwikkeluitdaging 4. kan, eventueel aan de hand van bijhorende documentatie, de structuren van een ontwikkelpatroon concreet invullen om een benoemd ontwikkelpatroon (design pattern) toe te passen op een specifieke ontwikkeluitdaging 7. kan, aan de hand van benoemde en gedefinieerde ontwikkeluitdagingen, oplossingsstrategieën zoeken (op het internet, via overleg met collega s, in bestaande programma s, op basis van ervaring en creativiteit) om niet-uitgeanalyseerde opdrachten te detailleren in een onmiddellijk uitvoerbaar ontwerp 9. kan gekregen opdrachten die geschetst zijn via een ontwerp aan de hand van pseudocode en grafische schema s (UML, flowcharts, ) begrijpen om de zelf te nemen stappen in de opdrachtuitvoering (onmiddellijk omzetten in code, verfijnen, verduidelijking vragen, ) te bepalen 10. kan gekregen opdrachten die geformuleerd zijn in een natuurlijke taal begrijpen om de zelf te nemen stappen in de opdrachtuitvoering (onmiddellijk omzetten in code, verfijnen, verduidelijking vragen, ) te bepalen 16. kan het gebruik en de installatie van een zelf geschreven stuk code schriftelijk documenteren in een handleiding (deployment guide) om bevoegden (bvb. andere projectmedewerkers) toe te laten om en te ondersteunen bij het installeren en gebruiken van het gedocumenteerde onderdeel 17. kan de interne opbouw van een zelf geschreven stuk code (onderdeel of programma), onder meer via commentaren, schriftelijk documenteren om andere bevoegden (bvb. andere projectmedewerkers) toe te laten het gedocumenteerde onderdeel vlot te hergebruiken, onderhouden en corrigeren 19. kan, aan de hand van bepaalde testingscenario s, onderdelen zelfgeschreven code (units) testen om eventuele fouten die de uitvoerbaarheid van de code in de weg staan aan te wijzen 20. kan, aan de hand van bepaalde testingscenario s, onderdelen code (units) die door anderen zijn geschreven testen om eventuele fouten die de uitvoerbaarheid van de code in de weg staan aan te wijzen P A G I N A 10

TIJDSBESTEDING DOCUMENTEREN OVERLEG PLEGEN MET PROJECTTEAM OVERLEG PLEGEN MET PROJECTTEAM HANDLEIDING VOOR EINDGEBRUIKERS OPSTELLEN ADEQUAAT OMGAAN MET VERANDERINGEN EVOLUTIES BINNEN TALEN EN OMGEVINGEN OPVOLGEN ONTWIKKELERVARINGEN EN FEEDBACK OPNEMEN ALS LEERERVARINGEN DISCREET OMGAN MET VERTROUWELIJKE GEGEVENS 22. kan, eventueel aan de hand van een tijdsregistratiesysteem, de bestede tijd per opdracht of project loggen om correcte facturatie toe te laten en om te gebruiken als basis voor latere estimaties 23. kan binnen het projectteam mondeling en schriftelijk, onder andere in het kader van een iteratief ontwikkelproces, rapporteren over de voortgang (resultaten, moeilijkheden, vooruitzichten) van de eigen opdracht om bij te dragen tot een correcte projectopvolging en verdere planning 24. kan, voornamelijk mondeling, binnen het projectteam overleg plegen over de aanpak van een opdracht (argumenten uitwisselen, feedback geven en krijgen, ) om in samenspraak de optimale oplossingstrategie te bepalen 25. kan handleidingen opstellen voor het zelf ontwikkelde programma om eindgebruikers toe te laten het geschreven programma efficiënt te gebruiken 27. kan veranderingen (in team, in manier van werken, in projectdoelen, in klanten) een plaats geven om ongeacht de gewijzigde omstandigheden de gestelde kwaliteitsstandaarden te bereiken 29. kan actief evoluties binnen de gehanteerde talen en omgevingen (bvb. updates, nieuwe bibliotheken, ) opvolgen om op elk moment een actueel beeld te hebben van de beschikbare oplossingsmogelijkheden voor een ontwikkeluitdaging 30. kan eerdere ontwikkelervaringen en feedback van partners (collega s, andere projectmedewerkers, klanten, ) opnemen als leerervaringen om vergelijkbare problemen en uitdagingen in de toekomst efficiënter aan te pakken 31. kan bedrijfsinformatie (intern of van klanten) discreet behandelen en zonodig afschermen om te vermijden dat onbevoegden zicht krijgen op de gegevens Vier extra competenties in eerste twee maanden Tabel 2 geeft een overzicht van de competenties die een beginnend programmeur moet verwerven tijdens de eerste twee maanden voltijds werken. Het gaat om vier van de in totaal 33 noodzakelijke competenties voor een programmeur. Eén competentie daarvan is zeer belangrijk (vier zwarte bolletjes), een tweede telt drie zwarte bolletjes is behoort dus eveneens tot de belangrijkste helft competenties. Samen P A G I N A 11

met de competenties uit de aanwervingsdrempel beheerst de beginnende beroepsbeoefenaar na twee maanden werkervaring dus 23 van de 33 competenties, of 69,7 procent van het totale pakket. Daartoe behoren intussen ook alle competenties die te maken hebben met het documenteren van programma s. Daarnaast wordt er een bijkomende analyse-competentie verwacht en komen er de competenties rond versiebeheer en het schakelen tussen deelopdrachten bij. Tabel 2: Het leertraject van een beginnend programmeur tijdens de eerste en de tweede maand Categorie Competentie Belang PROGRAMMA S DOCUMENTEREN VERSIES BEHEREN ADEQUAAT SCHAKELEN TUSSEN VERSCHILLENDE PROJECTEN/OPDRACHTEN DIE PARALLEL LOPEN 8. kan, aan de hand van pseudocode en grafische schema s (bvb. UML, flowcharts, ), niet-uitgeanalyseerde opdrachten detailleren om een onmiddellijk uitvoerbaar ontwerp te bekomen 18. kan, eventueel in het kader van een issuemanagementsysteem, problemen met stukken code of programma s schriftelijk documenteren (oa. symptomen en oorzaken) om gelijkaardige problemen in de toekomst te kunnen voorkomen of snel te kunnen verhelpen 21. kan, eventueel aan de hand van een versiebeheerssysteem, de verschillende versies van een programma of van een stuk code documenteren om sneller en efficiënter programma s te kunnen onderhouden en corrigeren 28. kan tussen verschillende deelopdrachten schakelen om parallelle opdrachten volgens de gestelde kwaliteitsstandaarden en tijdslimieten te volbrengen Vijf bijkomende competenties na vier maanden Tabel 3 geeft een overzicht van de competenties die een programmeur verwerft tijdens maand drie en vier voltijdse tewerkstelling. Het gaat over vijf competenties, waarvan vier uit de cluster analyse en een vijfde die betrekking heeft op het inschatten van de werklast. De plaats die ze innemen in het dit gemiddelde P A G I N A 12

leertraject verbergt echter heel wat variatie in waar deze competenties zich situeren in het leertraject dat bedrijven individueel voorzien. Sommigen bedrijven situeren deze competenties bij aanwerving, anderen verwachten ze na een jaar of zelfs twee jaar. Tabel 3: Het leertraject van een beginnend programmeur tijdens de derde en de vierde maand Categorie Competentie Belang WERKLAST INSCHATTEN 5. kan de eigen vrijheidsmarge om functionaliteiten te realiseren in code, eventueel ten aanzien van een meegegeven ontwerp, inschatten om de meest efficiënte ontwikkelingsstrategie te bepalen (ontwerp schools volgen, ontwerp autonoom bijsturen, via overleg aansturen op bepaalde wijzigingen, ) 6. kan, via een verwijzing naar patronen en structuren, een ontwikkeluitdaging beschrijven en definiëren om voor niet-uitgeanalyseerde opdrachten gericht oplossingsstrategieën zoeken 11. kan, aan de hand van kennis van de gebruiks- en technische omgeving waarin de toepassing moet werken, vereisten die niet-geëxpliciteerd zijn, afleiden om de opdrachtbeschrijving te detailleren of om er rechtstreeks rekening mee te houden bij de uitwerking 13. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus- en minpunten met betrekking tot ontwikkeltijd van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht 26. kan, rekening houdend met de eigen capaciteiten, de eigen werklast verbonden met een opdracht inschatten in termen van werkuren en doorlooptijd om bij te dragen aan een correcte projectplanning Nog vier competenties na zes maanden Tabel 4 bevat de vier competenties die de beginnende programmeur in maanden vijf en zes moet verwerven. Opnieuw gaat achter de P A G I N A 13

plaats van deze competenties in het gemiddelde leertraject echter heel wat variatie schuil in de situering van deze competenties bij bedrijven. Tabel 4: Het leertraject van een beginnend programmeur tijdens de vijfde en de zesde maand Categorie Competentie Belang INZICHT IN VEILIGHEIDSRISICO S RECHTEN EN PLICHTEN VERBONDEN MET HET GEBRUIK VAN SOFTWARE INTERPRETEREN 12. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus en minpunten met betrekking tot performantie en stabiliteit van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht 14. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus en minpunten met betrekking tot onderhoudbaarheid van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht. 32. kan de veiligheidsrisico s verbonden aan een bepaalde ontwikkeling (zowel gedurende het ontwikkelproces, als met betrekking tot de afgewerkte applicatie) (verlies van gegevens, ongewenste publiciteit van gegevens, blokkeren van een systeem, ) bepalen om gepaste oplosstrategieën te kunnen bepalen 33. kan de juridische rechten en plichten verbonden met het gebruik van bestaande code en programma s interpreteren om de wenselijkheid om bestaande code en programma s te integreren, te bepalen Laatste competentie in tweede semester Tabel 5 bevat de resterende competentie die de beginnende beroepsbeoefenaar onder de knie krijgt in het tweede halfjaar voltijds werk. Ook P A G I N A 14

over de plaats van deze competentie in het leertraject verschillen bedrijven echter nogal van mening. Tabel 5: Het leertraject van een beginnend programmeur tijdens het tweede semester tewerkstelling Categorie Competentie Belang 15. kan de plus- en minpunten van een oplossingsstrategie in verschillende domeinen (performantie, stabiliteit, ontwikkeltijd, onderhoudbaarheid, veiligheid, ) tegen elkaar afwegen om de optimale oplossingsstrategie voor een specifieke opdracht te bepalen Onenigheid in situering in leertraject kan verklaard worden door belang context De aangehaalde variatie tussen bedrijven in de situering van competenties die in dit gemiddeld leertraject na meer dan twee maanden gesitueerd worden, is niet toevallig. De meningsverschillen hebben immers vooral betrekking op competenties die verwijzen naar abstracte structuren en niet-nader gedefinieerde patronen, maw. de competenties waarvan de link met bekwaamheid grotendeels bepaald wordt door de context waarbinnen ze ingezet moeten worden. De interviewresultaten zijn consistent in de mate dat bedrijven de betreffende competenties bij hun programmeurs reeds verwachten van bij aanwerving als het gaat om een eenvoudige, beperkte en goed afgebakende context. Als de competentie echter beheerst moet worden binnen een complexe en gevarieerde context, verwacht men deze pas veel later in het leertraject. Het wijst erop dat de beginselen reeds van bij de aanwerving aanwezig moeten zijn, maar dat er heel wat ervaring vereist is om deze ook met succes in te zetten in complexe en gevarieerde contexten. Gemiddeld leertraject is consistent binnen een bepaalde context Dat de geciteerde variaties gelinkt zijn aan de context die men als referentie aanhoudt voor de evaluatie van competenties en de verschillende beoordelingen wel degelijk consistent zijn, blijkt ook uit de volgorde waarin de competenties in het gemiddelde leertraject hun plaats krijgen. Niet toevallig is competentie P A G I N A 15

15 die betrekking heeft op het afwegen van alle deeldomeinen die belangrijk zijn om een goed programma te schrijven, de laatste competentie in het leertraject. Er kan gesteld worden dat de gemiddelde leertraject een goed beeld heeft van hoe de verschillende competenties achtereenvolgens verwacht worden binnen een bepaalde afgebakende context. P A G I N A 16

Aantal competenties 2.3. Samenvatting: het twaalfmaandenprofiel Consensus over de verwachte competenties Over bijna alle competenties zijn bedrijven het eens dat een volleerd programmeur deze moet beheersen. Geen enkele competentie werd door minder dan één derde van de bedrijven genoemd, slechts twee competenties worden door niet meer dan 2/3 van de respondenten geacht tot het profiel te behoren. De mate van overeenkomst over het beroepsprofiel toont aan dat de gehanteerde lijst van competenties representatief is zowel ten aanzien van het onderzochte beroep als ten aanzien van de geïnterviewde personen. Dit geeft deze studie een grote geldigheid. Steile verwachtingen voor de beginner Het leertraject biedt een overzicht van de competenties die verwacht worden van een beginnend programmeur. Hieruit blijkt vooral een hoge aanwervingsdrempel (bijna 60 procent van de competenties moet reeds beheerst worden bij aanwerving). Door de band genomen dienen ook de resterende competenties vrij snel verworven te worden (op één na alle competenties worden gesitueerd in het eerste semester voltijdse tewerkstelling). Voor complexe en gevarieerde contexten kan het beheersen van sommige competenties jaren duren Voor bepaalde competenties (vooral bepaalde analysevaardigheden) zijn er grote verschillen in het tijdstip waarop bedrijven ze verworven willen zien. De grote verschillen in inschatting kunnen toegeschreven worden aan de verschillende contexten die voor de bedrijven het referentiekader vormen (complexiteit van de toepassing, variatie in te analyseren toepassingen). Ze wijzen erop dat de programmeurs de competenties reeds dienen te beheersen binnen eenvoudige en goed afgebakende contexten, maar dat het verwerven van deze competenties ten aanzien van complexe en gevarieerde contexten soms jaren in beslag kan nemen. vertrouwd moeten zijn met de vaardigheden voor Schematische voorstelling van het leertraject Grafiek 1 stelt het leertraject van een programmeur voor. De X-as onderscheidt de verschillende leerperiodes, de Y-as geeft het aantal te beheersen competenties. De grafiek illustreert dat het zwaartepunt voor het leertraject in termen van aantal competenties bij de aanwerving ligt. P A G I N A 17 Grafiek 1: Het leertraject visueel voorgesteld Aantal nog te verwerven competenties Aantal verworven competenties 45 40 35 30 25 20 15 10 5 0 1 0 5 10 14 32 33 28 23 19 Bij aanwerving Na twee maanden Na vier maanden Na zes maanden Na één jaar

3. Het instapcompetentieprofiel en opleiding Van instapcompetentieprofiel naar opleiding Het instapcompetentieprofiel is een vertrekpunt voor het uitwerken van een opleidingsaanbod. Via de selectie van instapcompetenties uit het beroepsprofiel en het bepalen van de onderlinge waardeverhoudingen tussen die instapcompetenties, levert het informatie op die helpt bij het beantwoorden van een aantal cruciale vragen: Is het zinvol een onderscheid te maken tussen een basis- en een vervolmakingsopleiding? Kiest men best voor een intensief totaalpakket?; Moet men de opleiding beperken tot een selectie van competenties?; Welke competenties verdienen aandacht in een (eventuele) basisopleiding? Welke competenties dienen in een (eventuele) vervolmakingsopleiding aan bod te komen? Welke competenties verdienen tijdens een opleiding extra aandacht? Met welke trends moet de opleider rekening houden bij het uitstippelen van het aanbod? Leerdoelstellingen In het kader van opleidingen laten de competenties zich lezen als leerdoelstellingen. Ze omschrijven wat iemand op het einde van een opleiding moet beheersen. Hoe een bepaalde competentie aangeleerd moet worden, is niet gespecifieerd. Het instapcompetentieprofiel is dus geen kant-en-klaar opleidingsprogramma, maar verduidelijkt wel de doelen en prioriteiten. Een opleidingsprogramma moet deze doelen en prioriteiten vervolgens vertalen in vorming en training. P A G I N A 18

3.1. Totaalopleiding gericht op eenvoudige en goed afgebakende realisaties Totaalopleiding binnen eenvoudige contexten Het instapcompetentieprofiel levert sterke argumenten op om alle competenties uit het kwalificatieprofiel op te nemen als leerdoelstellingen van een opleiding voor werkzoekenden. Om kandidaat-programmeurs af te leveren die een reële kans maken op aanwerving en ook voor werkgevers een interessante aanwinst kunnen zijn, kan best geopteerd worden voor een opleiding die alle competenties aanleert, weliswaar binnen een eenvoudige context. Dit betekent dat de competenties nagestreefd worden ten aanzien van eenvoudige en goed afgebakende realisaties. Deze conclusie steunt op de volgende vaststellingen: Er is nauwelijks verdeeldheid over de competenties die van toepassing op een programmeur. Alle bedrijven vragen zowat dezelfde competenties van hun programmeurs. Differentiëren of het laten vallen van bepaalde leerdoelstellingen omwille van niet gevraagd, blijkt niet op zijn plaats. Bedrijven verwachten bijna 60 procent van de competenties voor een programmeur reeds bij aanwerving. Wie deze competentie niet op zak heeft, komt zelfs niet in aanmerking voor de job. In de eerste twee maanden na aanwerving moeten nog vier extra vaardigheden onder de knie gekregen worden. Werkgevers die kandidaten aanwerven die enkel voldoen aan de aanwervingsdrempel vergen onmiddellijk na aanwerving bijscholing. Kandidaten die deze extra competenties reeds beheersen hebben een daardoor een stapje voor op de gemiddelde kandidaat. Een opleiding die ook deze competenties in het leertraject opneemt voorziet sowieso reeds in een opleiding die bijna 70 procent van de competenties bijbrengt. De opvallende variatie in situering in het leertraject van de resterende competenties, met daaraan gelinkt dat sommigen deze competenties reeds bij aanwerving verwachten, wijst erop dat bedrijven willen dat kandidaat-programmeurs deze competenties van bij de P A G I N A 19

aanwerving reeds in beginsel beheersen. Met name binnen eenvoudige en goed afgebakende contexten, zouden ze deze vaardigheden moeten kunnen inzetten. Virtueel leer- en uitwisselingplatform als verlengstuk In de loop van de interviews werd gesuggereerd om in het verlengde van een opleiding die de vaardigheden aanleert ten aanzien van eenvoudige en goed afgebakende realisaties, een virtueel leer- en uitwisselingsplatform te voorzien. Dat zou cursisten kunnen ondersteunen in hun vervolmaking als programmeur. Beter dan bij elke andere doelgroep sluit een virtueel platform immers goed aan bij het profiel van een programmeur. Bovendien laat het medium goed toe om het soort ondersteuning te bieden dat een zich ontwikkelende programmeur kan gebruiken (bvb. uitwisselen van code). Het biedt kansen om flexibel in te spelen om de verschillende specialisaties en contexten waarin programmeurs zich verder bekwamen. P A G I N A 20

3.2. Leerdoelstellingen voor de programmeur Alle competenties aanleren binnen eenvoudige context Tabel 6 lijst de competenties op die een dergelijke totaalopleiding aanbiedt en rangschikt ze volgens hun belang op basis van tijdsintensiteit en moeilijkheid. Het gemiddelde leertraject zoals weergegeven in het vorige hoofdstuk kan extra houvast bieden om de volgorde te bepalen waarin de competenties stap voor stap aan de cursisten worden bijgebracht. Tabel 6: Leerdoelstellingen van een opleiding programmeur Categorie Competentie Belang CODE SCHRIJVEN CODE SCHRIJVEN PROGRAMMA S DOCUMENTEREN TESTEN 1. kan, aan de hand van een programmeerontwikkelomgeving eigen aan de programmeeromgeving (bvb. Eclipse en Netbeans voor Java; Visual Studio voor.net), uitvoerbare code genereren om een volledig uitgeanalyseerd ontwerp (één op één relatie tussen code en ontwerp) te realiseren 2. kan standaarden en bedrijfs- en projectgebonden afspraken, regels en conventies omtrent de manier wanneer waarop code eruit moet zien (bijv. naamgeving variabelen, ) toepassen om gestandaardiseerde en bedrijfs- of projectconforme code op te leveren 10. kan gekregen opdrachten die geformuleerd zijn in een natuurlijke taal begrijpen om de zelf te nemen stappen in de opdrachtuitvoering (onmiddellijk omzetten in code, verfijnen, verduidelijking vragen, ) te bepalen 15. kan de plus- en minpunten van een oplossingsstrategie in verschillende domeinen (performantie, stabiliteit, ontwikkeltijd, onderhoudbaarheid, veiligheid, ) tegen elkaar afwegen om de optimale oplossingsstrategie voor een specifieke opdracht te bepalen 17. kan de interne opbouw van een zelf geschreven stuk code (onderdeel of programma), onder meer via commentaren, schriftelijk documenteren om andere bevoegden (bvb. andere projectmedewerkers) toe te laten het gedocumenteerde onderdeel vlot te hergebruiken, onderhouden en corrigeren 19. kan, aan de hand van bepaalde testingscenario s, onderdelen zelfgeschreven code (units) testen om eventuele fouten die de uitvoerbaarheid van de code in de weg staan aan te wijzen P A G I N A 21

OVERLEG PLEGEN MET PROJECTTEAM WERKLAST INSCHATTEN ADEQUAAT SCHAKELEN TUSSEN VERSCHILLENDE PROJECTEN/OPDRACHTEN DIE PARALLEL LOPEN CODE SCHRIJVEN CODE SCHRIJVEN 23. kan binnen het projectteam mondeling en schriftelijk, onder andere in het kader van een iteratief ontwikkelproces, rapporteren over de voortgang (resultaten, moeilijkheden, vooruitzichten) van de eigen opdracht om bij te dragen tot een correcte projectopvolging en verdere planning 26. kan, rekening houdend met de eigen capaciteiten, de eigen werklast verbonden met een opdracht inschatten in termen van werkuren en doorlooptijd om bij te dragen aan een correcte projectplanning 28. kan tussen verschillende deelopdrachten schakelen om parallelle opdrachten volgens de gestelde kwaliteitsstandaarden en tijdslimieten te volbrengen 3. kan de bijhorende programmadocumentatie (over functionaliteit, installatie, opbouw, ) van een benoemd stuk code, bibliotheek (libraries, API s) of programma begrijpen om de bestaande code te integreren, te hergebruiken of gericht aan te passen bij het oplossen van een specifieke ontwikkeluitdaging 4. kan, eventueel aan de hand van bijhorende documentatie, de structuren van een ontwikkelpatroon concreet invullen om een benoemd ontwikkelpatroon (design pattern) toe te passen op een specifieke ontwikkeluitdaging 5. kan de eigen vrijheidsmarge om functionaliteiten te realiseren in code, eventueel ten aanzien van een meegegeven ontwerp, inschatten om de meest efficiënte ontwikkelingsstrategie te bepalen (ontwerp schools volgen, ontwerp autonoom bijsturen, via overleg aansturen op bepaalde wijzigingen, ) 7. kan, aan de hand van benoemde en gedefinieerde ontwikkeluitdagingen, oplossingsstrategieën zoeken (op het internet, via overleg met collega s, in bestaande programma s, op basis van ervaring en creativiteit) om niet-uitgeanalyseerde opdrachten te detailleren in een onmiddellijk uitvoerbaar ontwerp 8. kan, aan de hand van pseudocode en grafische schema s (bvb. UML, flowcharts, ), niet-uitgeanalyseerde opdrachten detailleren om een onmiddellijk uitvoerbaar ontwerp te bekomen 11. kan, aan de hand van kennis van de gebruiks- en technische omgeving waarin de toepassing moet werken, vereisten die niet-geëxpliciteerd zijn, afleiden om de opdrachtbeschrijving te detailleren of om er rechtstreeks rekening mee te houden bij de uitwerking P A G I N A 22

PROGRAMMA S DOCUMENTEREN PROGRAMMA S DOCUMENTEREN 13. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus en minpunten met betrekking tot ontwikkeltijd van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht 14. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus en minpunten met betrekking tot onderhoudbaarheid van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht. 6. kan, via een verwijzing naar patronen en structuren, een ontwikkeluitdaging beschrijven en definiëren om voor niet-uitgeanalyseerde opdrachten gericht oplossingsstrategieën zoeken 9. kan gekregen opdrachten die geschetst zijn via een ontwerp aan de hand van pseudocode en grafische schema s (UML, flowcharts, ) begrijpen om de zelf te nemen stappen in de opdrachtuitvoering (onmiddellijk omzetten in code, verfijnen, verduidelijking vragen, ) te bepalen 12. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus en minpunten met betrekking tot performantie en stabiliteit van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht 16. kan het gebruik en de installatie van een zelf geschreven stuk code schriftelijk documenteren in een handleiding (deployment guide) om bevoegden (bvb. andere projectmedewerkers) toe te laten om en te ondersteunen bij het installeren en gebruiken van het gedocumenteerde onderdeel 18. kan, eventueel in het kader van een issuemanagementsysteem, problemen met stukken code of programma s schriftelijk documenteren (oa. symptomen en oorzaken) om gelijkaardige problemen in de toekomst te kunnen voorkomen of snel te kunnen verhelpen P A G I N A 23

TIJDSBESTEDING DOCUMENTEREN OVERLEG PLEGEN MET PROJECTTEAM HANDLEIDING VOOR EINDGEBRUIKERS OPSTELLEN TESTEN VERSIES BEHEREN ADEQUAAT OMGAAN MET VERANDERINGEN EVOLUTIES BINNEN TALEN EN OMGEVINGEN OPVOLGEN ONTWIKKELERVARINGEN EN FEEDBACK OPNEMEN ALS LEERERVARINGEN DISCREET OMGAN MET VERTROUWELIJKE GEGEVENS INZICHT IN VEILIGHEIDSRISICO S 22. kan, eventueel aan de hand van een tijdsregistratiesysteem, de bestede tijd per opdracht of project loggen om correcte facturatie toe te laten en om te gebruiken als basis voor latere estimaties 24. kan, voornamelijk mondeling, binnen het projectteam overleg plegen over de aanpak van een opdracht (argumenten uitwisselen, feedback geven en krijgen, ) om in samenspraak de optimale oplossingstrategie te bepalen 25. kan handleidingen opstellen voor het zelf ontwikkelde programma om eindgebruikers toe te laten het geschreven programma efficiënt te gebruiken 20. kan, aan de hand van bepaalde testingscenario s, onderdelen code (units) die door anderen zijn geschreven testen om eventuele fouten die de uitvoerbaarheid van de code in de weg staan aan te wijzen 21. kan, eventueel aan de hand van een versiebeheerssysteem, de verschillende versies van een programma of van een stuk code documenteren om sneller en efficiënter programma s te kunnen onderhouden en corrigeren 27. kan veranderingen (in team, in manier van werken, in projectdoelen, in klanten) een plaats geven om ongeacht de gewijzigde omstandigheden de gestelde kwaliteitsstandaarden te bereiken 29. kan actief evoluties binnen de gehanteerde talen en omgevingen (bvb. updates, nieuwe bibliotheken, ) opvolgen om op elk moment een actueel beeld te hebben van de beschikbare oplossingsmogelijkheden voor een ontwikkeluitdaging 30. kan eerdere ontwikkelervaringen en feedback van partners (collega s, andere projectmedewerkers, klanten, ) opnemen als leerervaringen om vergelijkbare problemen en uitdagingen in de toekomst efficiënter aan te pakken 31. kan bedrijfsinformatie (intern of van klanten) discreet behandelen en zonodig afschermen om te vermijden dat onbevoegden zicht krijgen op de gegevens 32. kan de veiligheidsrisico s verbonden aan een bepaalde ontwikkeling (zowel gedurende het ontwikkelproces, als met betrekking tot de afgewerkte applicatie) (verlies van gegevens, ongewenste publiciteit van gegevens, blokkeren van een systeem, ) bepalen om gepaste oplosstrategieën te kunnen bepalen P A G I N A 24

RECHTEN EN PLICHTEN VERBONDEN MET HET GEBRUIK VAN SOFTWARE INTERPRETEREN 33. kan de juridische rechten en plichten verbonden met het gebruik van bestaande code en programma s interpreteren om de wenselijkheid om bestaande code en programma s te integreren, te bepalen P A G I N A 25

3.3. Opleiding en beroepsevoluties Verwachte evoluties De respondenten gaven bij hun inschatting van het leertraject aan welke evolutie het profiel volgens hen zal doormaken. Op die manier peilde het onderzoek naar trends binnen het competentieprofiel van een programmeur. De respondenten duidden met een pijl de competenties aan die volgens hen in de nabije toekomst in belang zullen afnemen dan wel toenemen. De nabije toekomst werd gedefinieerd als de komende vijf jaar. Afnemend belang: code schrijven Alle twintig bedrijven voorspelden een dalend belang van in totaal dertien competenties. Van deze dertien werden er vier meer dan twee maal Tabel 7 zet ze op een rijtje. Hier en daar wordt blijkbaar verwacht dat code schrijven zal afnemen aan belang in het geheel van de competentieverwachtingen ten aanzien van een programmeur. Tabel 7: Competenties die volgens meer dan twee bedrijven in belang zullen afnemen Categorie Competentie Aantal pijlen CODE SCHRIJVEN CODE SCHRIJVEN CODE SCHRIJVEN CODE SCHRIJVEN 1. kan, aan de hand van een programmeerontwikkelomgeving eigen aan de programmeeromgeving (bvb. Eclipse en Netbeans voor Java; Visual Studio voor.net), uitvoerbare code genereren om een volledig uitgeanalyseerd ontwerp (één op één relatie tussen code en ontwerp) te realiseren 2. kan standaarden en bedrijfs- en projectgebonden afspraken, regels en conventies omtrent de manier wanneer waarop code eruit moet zien (bijv. naamgeving variabelen, ) toepassen om gestandaardiseerde en bedrijfs- of projectconforme code op te leveren 3. kan de bijhorende programmadocumentatie (over functionaliteit, installatie, opbouw, ) van een benoemd stuk code, bibliotheek (libraries, API s) of programma begrijpen om de bestaande code te integreren, te hergebruiken of gericht aan te passen bij het oplossen van een specifieke ontwikkeluitdaging 4. kan, eventueel aan de hand van bijhorende documentatie, de structuren van een ontwikkelpatroon concreet invullen om een benoemd ontwikkelpatroon (design pattern) toe te passen op een specifieke ontwikkeluitdaging 3 3 3 3 P A G I N A 26

Toenemend belang: analyse, opvolgen evoluties en communiceren Alle twintig bevraagde bedrijven benoemden ook competenties die in belang zouden stijgen. In totaal werden maar liefst 26 van de 33 competenties in dat verband aangeduid. Ze kregen in totaal 108 pijlen. Tabel 8 heeft een overzicht van de competenties die het vaakst naar voren werden geschoven als competenties die de komende vijf jaar aan belang zouden winnen. Daaruit blijkt dat behalve het opvolgen van evoluties in talen en omgevingen en overleg plegen, vooral de competenties uit de cluster analyse veel kans maken om nog belangrijker te worden. Tabel 8: Competenties die volgens meer dan twee bedrijven in belang zullen toenemen Categorie Competentie Aantal pijlen EVOLUTIES BINNEN TALEN EN OMGEVINGEN OPVOLGEN OVERLEG PLEGEN MET PROJECTTEAM 29. kan actief evoluties binnen de gehanteerde talen en omgevingen (bvb. updates, nieuwe bibliotheken, ) opvolgen om op elk moment een actueel beeld te hebben van de beschikbare oplossingsmogelijkheden voor een ontwikkeluitdaging 8. kan, aan de hand van pseudocode en grafische schema s (bvb. UML, flowcharts, ), niet-uitgeanalyseerde opdrachten detailleren om een onmiddellijk uitvoerbaar ontwerp te bekomen 24. kan, voornamelijk mondeling, binnen het projectteam overleg plegen over de aanpak van een opdracht (argumenten uitwisselen, feedback geven en krijgen, ) om in samenspraak de optimale oplossingstrategie te bepalen 10. kan gekregen opdrachten die geformuleerd zijn in een natuurlijke taal begrijpen om de zelf te nemen stappen in de opdrachtuitvoering (onmiddellijk omzetten in code, verfijnen, verduidelijking vragen, ) te bepalen 12. kan, eventueel aan de hand van bijhorende documentatie, maar zonder de strategie als test toe te passen, de plus en minpunten met betrekking tot performantie en stabiliteit van een bepaalde oplossingsstrategie (gebruik van een bepaald ontwikkelpatroon, hergebruik van een bepaald programma/stuk code, gebruik van een bepaalde bibliotheek, (kortom van een bepaald ontwerp, ), benoemen om de wenselijkheid van de oplossingsstrategie te bepalen in functie van een bepaalde opdracht 10 7 7 6 6 P A G I N A 27