Professionsbachelor i softwareudvikling

En professionsbachelor i softwareudvikling er en 1 ½ årig it-uddannelse, som går i dybden med udvikling af software, databaser, it-arkitektur og komplekse it-systemer. Denne uddannelse er en overbygningsuddannelse til datamatiker uddannelsen som tager 2 ½ år. Det efterfølgende muligt at læse videre på en kandidatuddannelser med en professionsbachelor i softwareudvikling.

Jeg er i den heldige situation, at jeg er blevet optaget på en professionsbachelor i softwareudvikling i Odense, som jeg starter på d. 21 August 2018 til Januar 2020. Hele forløbet vil jeg dokumenterer her i denne artikel, som bliver til en længere dybdegående artikel om hvordan det er at studere på en professionsbachelor i softwareudvikling.

Jeg har tidligere gået på datamatiker uddannelsen på UCN i Aalborg, hvor jeg blev færdiguddannet i Januar 2016. Jeg har efter datamatiker uddannelsen arbejdet fuldtid i ca 2 ½ år som IT konsulent og softwareudvikler. Nu er tiden så kommet til at jeg skal læse videre igen.

Du kan også læse mine refleksioner omkring forløbet med min master i datalogi og informatik, som jeg efterfølgende har læst for at få min en kandidatuddannelse.

Hvorfor læse videre og hvorfor tage uddannelsen i Odense?

Efter at havde arbejdet i 2 ½ år lige efter datamatiker uddannelsen, kunne jeg godt mærke at jeg havde lyst til at prøve noget nyt. Jeg har længe studeret og fulgt udvikling af robotteknologi og kunstig intelligens. Både robotteknologi og kunstig intelligens er begge teoretisk tunge områder indenfor it. Jeg synes derfor det gav god mening for mig at læse videre for at bygge mere teoretisk datalogi viden på min tekniske profil, da jeg kun har en kort videregående uddannelse i form af en datamatiker.

I forhold til valg af videre uddannelse havde jeg muligheden for enten at læse mit matematik op på A niveau og så starte op på en bachelor i datalogi, hvor jeg så kunne bruge merit for min datamatiker uddannelsen. Den anden mulighed var at tage en professionsbachelor i softwareudvikling, da jeg kunne blive optaget direkte med min datamatiker uddannelse.

Jeg kiggede på flere forskellige studiebyer, da jeg godt kunne tænkte at prøve og studere et andet sted end Aalborg. Jeg fandt ud af at Odense har et rigtig spændende erhvervsliv på over 100 virksomheder indenfor robotteknologi. Mange af disse robot virksomheder vækster rigtig meget, hvilket skaber en masse nye jobs indenfor it og programmering. Jeg tænkte at Odense kunne være en spændende by at studere i. Med min datamatiker uddannelse var det muligt for at tage en professionsbachelor i software på UCL i Odense. Jeg søgte ind på uddannelsen og blev optaget i sommeren 2018.

Professionsbachelor i softwareudvikling opbygning

Uddannelsen startede med et kort intro forløb, hvor jeg og mine medstuderende blev præsenteret for uddannelsens opbygning. På uddannelsen skal jeg have følgende fag:

  • Databaser for udviklere
  • Moderne distribuerede systemer med .NET Core
  • Test
  • Systemintegration
  • Udvikling af store systemer
  • Projektledelse

På 1. semester har jeg undervisning mandag, tirsdag og torsdag hver uge, hvor der er fjernundervisning med studerende fra Vejle. Vores lærere skifter mellem at være i Odense og Vejle. Det har givet nogle gode erfaringer med det at arbejde remote. Undervisningen starter normalt 8.15 med forelæsning til 11:30. Fra 12:00 til 13:45 er det muligt at stille spørgsmål til læreren og arbejde på opgaver med de andre studerende.

Der er en del lektier på uddannelsen i form af læsning til hver undervisning. Ca 25-50 siders engelsk til hvert fag hver uge. Vi skulle købe 3 bøger, og så er der rigtig mange pdf’er, som bliver udleveret online på skolens it-system.

1. Semester

På 1. semester har jeg fagene databaser for udviklere, test og udvikling af store systemer.

Databaser

Databaser for udviklere går i dybden med teorien bag de forskellige typer af databaser bla. relationelle databaser, NoSQL databaser og distribueret databaser. Undervisningen starter som regel med gennemgang af teori, hvorefter der er massere af opgaver med databaser. Der er en mundtlig eksamen til faget databaser, og så skal der laves en skriftlig rapport i slutningen af semesteret, hvor man selv kan vælge forske i sit eget valgfrie emne. Jeg valgte at forske i databaser til selvkørende biler, sikkerhed i databaser og opbevaring af sensor data.

Jeg udarbejdede en synopsis om databaser til selvkørende biler, og jeg fik et 7 tal i min mundtlige eksamen, hvor jeg trak et spørgsmål om transaktioner i databaser.

Test

Test faget går i dybden med test af software. Her fik vi erfaringer med mange af de nyeste værktøjer til test af software, og teorien bag test af software. Der er en mundtlig eksamen til faget test, og så skal der laves en skriftlig rapport i slutningen af semesteret, hvor man selv kan vælge forske i sit eget valgfrie emne. Den skriftelige rapport skal så forsvares til den mundtlige eksamen. Jeg valgte at forske i test af software i livskritiske systemer såsom selvkørende biler.

Jeg udarbejdede en synopsis om test af software i selvkørende biler, og jeg fik et 12 tal i min mundtlige eksamen, hvor jeg først havde 15 minutter til at fremlægge min synopsis og derefter spørgsmål om pensum.

Store systemer

Store systemer går i dybden med skalering af software og skalering af de organisationer som udvikler software. Et rigtig spændende fag som kommer bredt omkring med det at bygge store software systemer. Der er en mundtlig eksamen til faget test, og så skal der laves en skriftlig rapport i slutningen af semesteret, hvor man selv kan vælge forske i sit eget valgfrie emne med fokus på continuous integration og continuous delivery. Jeg valgte at forske i opsætningen af CI/CD i ROS – et udviklingsmiljø til udvikling af software til selvkørende biler.

Jeg udarbejdede en synopsis om en continuous integration & continuous delivery pipeline til udvikling af selvkørende biler, og jeg fik et 10 tal i min mundtlige eksamen, hvor jeg trak et spørgsmål om udrulning af store systemer.

2. Semester

På andet semester havde jeg fagene moderne distribuerede systemer med .NET Core, projektledelse og systemintegration.

Moderne distribuerede systemer med .NET Core

Dette fag gav en dybdegående introduktion til microservice baseret udvikling, hvor jeg bla. fik indblik i nyeste trends indenfor ASP.NET Core til udvikling at microservices. Vi kom omgang mange forskellige teoretiske områder indenfor datalogi bla. CAP theorem, Domain-driven design (DDD), Messaging, Queues, Event sourcing, Command Query Responsibility Segregation (CQRS), Saga Pattern.

Til eksamen i dette fag udarbejdede jeg et microservice baseret system. Systemet blev sat i docker container med kubernetes til orchestration. Til eksamen skulle jeg præsentere mit systemet, hvorefter der var spørgsmål om pensum fra faget. Jeg fik 12 for projektet.

Projektledelse

Faget projektledelse startede ud med grundlæggende undervisning i projektledelse, hvad er et projekt, projektets faser, hvad er projektlederens rolle osv. Samtidig med undervisningen skulle vi arbejde på en case, hvor vi skulle udvikle et nyt it-system til nogle brugere. Her arbejdede vi er team, hvor vi lærte at arbejde som projektleder.

Til eksamen skulle jeg lave en refleksion rapport baseret på undervisningen og arbejdet med den her case vi fik til opgave at løse. Eksamen foregik som en dialog baseret på refleksion rapporten. Jeg fik 12 til denne eksamen.

Systemintegration

Systemintegegration faget gik igennem en lang række af patterns til systemintegration i enterprise regi med bla. Message construction patterns, message routing patterns, message transformation pattern, messaging endpoint, messaging channels, systems management. Vi brugte også en del tid på service-orienteret arkitektur med web services baseret på WSDL og SOAP, messaging og RESTful API’s. Det meste af pensum var baseret på bogen Enterprise Integration Patterns af Gregor Hohpe og Bobby Woolf.

Til eksamen skulle jeg trække et tilfældigt nummer, hvor jeg så skulle svare på nogle spørgsmål som vi kendte på forhånd. Pensum var meget bredt, og der var mange spørgsmål. Jeg havde taget nogle gode noter i forbindelse med kurset, og brugte tid over hele semestret på at læse godt op på pensum. Jeg fik 12 til eksamen.

3. Semester

Det sidste semester på uddannelsen bestod af en praktikperiode og mit afsluttende bachelorprojekt.

Praktikperiode

Jeg valgte at tage min praktikperiode i min egen virksomhed, hvor jeg arbejdede på et større projekt igennem hele forløbet. Efter pratikperioden blev der afholdt en praktikmesse, hvor alle praktikanter og virksomheder kunne spare med hinanden.

Eksamen blev afholdt på praktikmessen, hvor jeg skulle fortælle og reflektere over forløbet. Jeg fik 12 til denne eksamen.

Bachelorprojekt

Mit bachelorprojekt omhandlede en IoT / data streaming platform til transport branchen. Her skrev jeg om hvordan data kan opsamles fra biler og bruges til at øge sikkerheden i trafikken. Jeg fik 4 for projektet.

Refleksion omkring uddannelsen

Jeg var alt i alt glad for at have taget uddannelsen. Jeg kom ud af min komfort zone ved at flytte fra Aalborg til Odense for at studere. Her fik jeg mødt en masse nye spændende mennesker, som har været med til at udvide mit personlige netværk i Odense området. Fagligt synes jeg uddannelse var af høj kvalitet, og der var mange nye emner indenfor datalogi, som jeg slet ikke kendte til før jeg startede på uddannelsen. Jeg fik god indsigt hvad det vil sige at arbejde med større it-systemer, testing, avanceret database teknologi og jeg lærte omkring nyeste tendenser inden for udvikling af software.

Uddannelsen er ret fleksibel hvad angår studie og projektarbejde, hvilket gjorde at jeg selv kunne vælge emner som havde jeg en stor passion for at dykke ned og studere i dybden. Uddannelsen krævede en høj grad af selvdisciplin, da det var ens eget ansvar at få læst op på pensum og deltage aktivt i undervisningen for at få udbytte af undervisningen. Der blev stillet høje krav til undervisning og til eksamen, og det gjorde det fagligt og social givende at være på uddannelsen. Der var et par studerende som havde fuldtidsarbejde ved siden af studiet, hvor de blev undervist med os andre bare på deltid. Vi havde nogle diskussioner ind i mellem, da der både kom teoretiske inputs men også mere praktiske inputs baseret på erfaring fra erhvervslivet.