Marcus Laurila
Systemutvecklare
Marcus har tio års erfarenhet av systemutveckling och agilt ledarskap. Han har haft roller som teamledare, scrum master, produktägare, utvecklare och kompetensgruppsledare - oftast i kombination. Han har arbetat med allt ifrån inbyggda system, radiobasstationer, GPS-teknik, storskaliga webbapplikationer till förstudier inom offentlig sektor. Han har erfarenhet av leveranskoordinering, continuous integration/continuous delivery samt både frontend- och backend-utveckling.
Områden
- Systemutvecklare
- Teamledare/Scrum master
- Produktägare
Om Marcus
Som person är Marcus ansvarstagande, driven och har en strävan att alltid utvecklas. Han är strukturerad, analytisk och räds inte nya utmaningar. På fritiden ägnar han sig gärna åt systemutveckling för att realisera idéer som dyker upp, allt från hemautomation till produkter som potentiellt kan generera intäkter. Marcus har även ett stort intresse för värdepappershandel och självledarskap. Han lyssnar gärna på poddar och böcker inom teknik/programmering/ekonomi för att hålla sig uppdaterad. Kombinationen av att ha arbetat som scrum master och systemutvecklare gör att han hänger med i de tekniska diskussioner som bedrivs i utvecklingsteamen. Han har därför förmågan att skapa en brygga mellan utvecklare och icke-teknisk personal, t.ex. en chef eller styrgrupp. Marcus är en lagspelare som månar om att alla i teamet ska trivas och utvecklas tillsammans men har inga problem med att lösa uppgifter på egen hand.Marcus CV
-
ITAB
Systemutvecklare
2024 - 2024
UPPDRAG:
Felsökning och dokumentation av ett distribuerat system vars ändamål var att styra belysning, displayer och ljudanläggningar i butiker runt om i världen. En kväll slutade anslutningarna från den centrala portalen till butikerna att fungera, utan att det skett några kod- eller konfigurationsändringar. I brist på tydlig dokumentation behövde jag kartlägga systemet för att skapa mig en bild om hur kommunikationen flödar och hur infrastrukturen är uppbyggd. Backend var kodat i Cython, kortfattat innebär det Python med stöd för integration av C/C++-kod. Vid felsökning använde jag mig av remote-debugging via PyCharm IDE, analys av loggar och diverse Linux-kommandon för att analysera nätverkstrafik och processer.
Tekniker: Linux (Ubuntu, Raspbian), VS Code, PyCharm, Git, Gitlab, Confluence, Cython, Python, RabbitMQ, MySQL, websockets, SoftEther VPN, Javascript, Vue.js -
Jordbruksverket
Systemutvecklare/Scrum master/Produktägare
2022 - 2024
UPPDRAG: Utveckling av ny programperiod. Merparten av tiden spenderade Marcus i ett DevOps-team med stort fokus på QA. Teamet utvecklade bland annat ett helt nytt system för hantering av grunddata. Tidigare hade kravarna matat in grunddatan manuellt i exceler som sparades i sharepoint, därefter behövde utvecklarna, också manuellt, lägga in motsvarande i en json-struktur som systemet kunde använda. Det nya systemet var utformat med ett webbgränssnitt istället för excel och grunddatan exporterades till det format som systemet använda sig av, json. Detta ökade användarväldigheten, minimerade risk för "human errors" och tillförde även referensintegritet - ett stort lyft. Teamet hade även CM (Configuration manager/delivery) som ett ansvarsområde. Även om Marcus inte huvudsakligen ägnade sig åt detta så var han till stor del inblandad i leveransplanering och koordinering av leveranser.
Under perioden kombinerade han rollerna teamledare och produktägare samt systemutvecklare och produktägare. I rollen som produktägare för teknisk skuld hade Marcus som ansvar att kartlägga den tekniska skulden och lägga upp en plan både på kort och lång sikt. Han hade dialog med utvecklare, testare, portföljledare och chefer för att få en god uppfattning av de mest kritiska områdena. Även löpande prioritering av målen och hantering av avvikelser från plan samt budgetfrågor ingick i arbetet.
Teknik: Scrum, Jira, TDD, Java 8, Objektorienterad design, CQRS, EJB3, Hibernate, JavaScript, Angular.js, JBoss, Drools, SQL, REST, JMS, PostgreSQL, Maven, Git, Gitlab, Jenkins, Docker, Kubernetes, Eclipse, IntelliJ. -
Jordbruksverket
Systemutvecklare/Scrum master
2020 - 2022
UPPDRAG: Implementation av de åtgärder som beskrevs i förstudien. Stor del handlade om att likrikta processflödet, modularisera och refaktorera komponenter. Marcus hade en tät dialog med uppdragsledaren och hjälpte till att prioritera arbetet.
Teknik: Scrum, Jira, TDD, Java 8, Objektorienterad design, CQRS, EJB3, Hibernate, JavaScript, Angular.js, JBoss, Drools, SQL, REST, JMS, PostgreSQL, Maven, Git, Gitlab, Jenkins, Docker, Eclipse, IntelliJ. -
Jordbruksverket
Systemutvecklare/Scrum master
2019 - 2020
UPPDRAG: Marcus arbetade i ett team där majoriteten av medlemmarna var från föregående projekt, Jorden förstudie. Teamets uppgift var att förbereda applikationen och implementera åtgärder som rekommenderas i förstudierapporten. Arbetet handlade främst om att refaktorera kod, minska komplexiteten i den CQRS-baserade arkitekturen och att bryta ut en gigantisk monolit till moduler.
PROJEKTSTORLEK: ca 50 pers
TEKNIK: Java EE, Git, Gitlab, PostgreSQL, AMQ, Jira, JBoss, CQRS
KUNDNYTTA: Arbetet är en förutsättning för att kunna genomföra de åtgärder som rekommenderas i förstudierapporten och därmed framtidssäkra systemet Jorden. -
Jordbruksverket
Systemutvecklare/Scrum master
2019 - 2019
UPPRAG: Deltagare i Jorden förstudie. Jorden, ett handläggningssystem för Jordbrukarstöd, har kantats av stora svårigheter och brister. Sammanfattningsvis en hög komplexitet, enorma datavolymer och långa driftsättningstider. I förstudien identifierades ett tiotal områden. För varje område detaljerades bristerna och rekommenderade lösningar togs fram. För varje lösning beskrevs risker, nytta och kostnadsestimat. Slutligen redovisades en genomförandeplan. Marcus har tagit fram samt varit med och beslutat kring systemarkitekturella förändringar i systemet, men även haft rollen som teamleadre/scrum master. Förstudien initierades på uppdrag av Jordbruksverket för att framtidssäkra systemet, i synnerhet inför nästkommande programperiod.
PROJEKTSTORLEK: 8 pers
TEKNIK: Java EE, AngularJS, Git, Gitlab, Jira, Drools, Sharepoint, CQRS, EJB3, Maven
KUNDNYTTA: Resultatet av förstudien, slutrapporten, beskriver vad som behöver göras och hur det ska göras för att framtidssäkra Jorden-systemet. -
Jordbruksverket
Systemutvecklare/Scrum master
2018 - 2019
UPPDRAG: Arbetet innefattade att kartlägga beroenden mellan generella Java-komponenter i JUP (Jordbruksverkets Utvecklingsplattform). Marcus var med och tog fram en roadmap för hur problematiken med de generella komponenterna skulle lösas och deltog även i genomförandet. Uppdraget togs fram på initiativ av Mjukvarugruppen men fick läggas på is eftersom samtliga resurser i teamet behövdes till ett mer tidskritiskt uppdrag, Jorden förstudie. Vid det här laget hade man upptäckt att databasen var så pass stor att och att vissa brukares händelseströmmar var problematiska att läsa in. Teamet tog fram ett verktyg som komprimerade lantbrukarnas händelseströmmar till ett format som tog betydligt mindre utrymme i databasen.
PROJEKTSTORLEK: ca 20 pers
TEKNIK: Java EE, Git, Jira, Jenkins
KUNDNYTTA: Åtgärder som föreslås i roadmapen kommer innebära lägre komplexitet och högre kvalitet för de generella Java-komponenterna i JUP-plattformen. -
Jordbruksverket
Systemutvecklare/Scrum master
2017 - 2018
UPPDRAG: Marcus arbetade i ett DevOps-team i projektet Jorden. Teamet jobbade främst med QA och kvalitetshöjande åtgärder. Han har varit med och tagit fram en webbapplikation som automatiserar driftdataändringar - något som tidigare har varit otroligt tidskrävande inför och vid driftsättningar. Stor del av tiden ägnades åt CI/CD, där han bl.a. satte upp Jenkinsjobb för att automatisera kodbyggen, tester och leveranser. Marcus har även bidragit till arbetet att sätta upp dynamiska testmiljöer genom Docker. Teamet tog också fram ett nytt verktyg för att underlätta eventhanteringen mellan handläggningsplattformen och andra system.
PROJEKTSTORLEK: ca 80 pers
TEKNIK: Java EE, Javascript, AngularJS, Groovy, Bash, Git, Gitlab, PostgreSQL, AMQ, Nexus, Jenkins, Jira, SonarQube, Docker, JBoss, Maven
KUNDNYTTA: Långsiktigt förbättrad kvalitet på produkten och tidsbesparing för utvecklare, testare och verksamhet i och med ökad automation. -
Entify Handelsbolag
Medgrundare/Fullstackutvecklare
2017 -
Utvecklade och sålde elektronisk körjournal för fordon. Terminalerna importerades från en leverantör i Kina och var utrustade med batteri, antenn, GPS-sändare och GSM-modem.
Marcus implementerade både backend och frontend. Varje resa registrerades med starttid, sluttid och sträcka. Kunden kunde sedan exportera journalen i diverse format. Koden testades kontinuerligt via pipelines med bl.a. enhetstester och regressionstester i Jenkins. Docker och Kubernetes användes för att hantera skalbarhet, resurshantering och effektiva driftsättningar. Säljsidan skrevs med hjälp av Wordpress och tillägget Elementor Pro. Majoriteten av kunderna är nöjda med tjänsten och har varit företaget trogna sedan start. Marcus och hans kollega har även varit noga med att ha dialog med kunden för att ständigt förbättra tjänsten.
Planering skedde genom veckovis möten där vi gick igenom en backlogg med tillhörande kanban-tavla. För dokumentation användes Confluence.
Tekniker: Linux CentOS och Ubuntu, Git, Github, Java SE, nodejs/express, MariaDB, React, html, css, javascript, bootstrap, CI/CD (Jenkins), Docker, Kubernetes, nginx, letsencrypt, bash/pythonscript/grafana för drift/prestandaövervakning, Confluence -
Entify Handelsbolag
Medgrundare/Fullstackutvecklare
2015 - 2017
Marcus utvecklade en tjänst där användaren kunde söka efter specifikt innehåll i svenska streamingtjänster. T.ex. kunde sökordet vara en filmtitel och tjänsten visar en lista på vilka på vilka aktörer som erbjuder utbudet. Daglig inhämtning av innehåll från de största streamingtjänsterna, dels genom öppna REST API:er men till stor del web scraping.
Tekniker: Linux Ubuntu, Git, Github, Python, Django, html, css, javascript, bootstrap, mysql, CI/CD (Jenkins) -
Ericsson AB
Systemutvecklare/Scrum master
2014 - 2017
UPPDRAG: Marcus arbetade i Ericssons MS-RBS (gen 2) projekt. Scrum-teamet hade stor variation av arbetsuppgifter, främst inom DevOps/QA. Området innefattade bl.a. utveckling och underhåll av utvecklingsmiljön, continuous integration/delivery, komplexa byggsystem i GNU Make, produktbinärleveranssystem och metadatahantering. Teamet har även jobbat med att utveckla features rörande loggning och administrationskommandon för systemövervakning samt utveckling av unit-, system- och regressionstester. Teamet var även med och skapade ett webbgränssnitt som användes till att följa leveransflödet.
ROLL: Utvecklare och axlade även rollen som scrum master ca ett år efter uppdragsstart.
PROJEKTSTORLEK: ca 150 pers
TEKNIK: Java EE, Python, Bash, Groovy, Linux, Jenkins, Gerrit, Git, Clearcase, Javascript, Scrum, Jira, Nexus, Maven, Hansoft
KUNDNYTTA: Långsiktigt förbättrad kvalitet på produkten och tidsbesparing i och med ökad automation. -
Sigma IT Consulting
Systemutvecklare
2014 - 2014
UPPDRAG: Utvecklade på egen hand en prototyp för en generell betalningsautomat bestående av en Linuxmaskin, touch LCD-display, kreditkortsterminal och kvittoskrivare. Arbetet gick ut på att skapa en mjukvarulösning med ett grafiskt användargränssnitt lämpat för touch-displayer samt att ta fram lämplig hårdvara. Automatens tilltänkta tillämpningsområden var många; uthyrning av skridskor och skidor, båtparkering m.fl.
TEKNIK: Java SE, Swing, MySQL, Linux, CEPA, Git
KUNDNYTTA: Prototypen kunde vidareutvecklas och potentiellt generera intäkter på sikt. -
Host Mobility AB
Systemutvecklare
2014 - 2014
EXAMENSARBETE: Masterarbetet innefattade migrering av arkitektur inkl. implementation för ett befintligt positioneringssystem avsedd för fordon. Systemet bestod av en mikrokontroller, batteri, GPRS-modem och GPS-modul. Rapporten finns publicerad i Chalmers e-bibliotek.
TEKNIK: MPLAB, Git, C, Assembler, Java ME, GPS, GPRS
KUNDNYTTA: Resultatet ledde till lägre komponentkostnader, energiförbrukning och produktvikt.
Marcus kompetensområden
-
Hårdvara
PC, Mac -
Metoder & Processer
KANBAN, Continious Delivery, Scrum, Continuous Integration, Agila metoder allmänt -
Operativsystem/plattformar
Linux, Mac OS X, Windows 7 -
Roller
Team-ledare, Scrum master, Utvecklare/Programmerare -
Systemtyper
Objektorienterade system -
Utbildning
civ.ing -
Utvecklingsspråk
JUnit, HTML5, Angular 2, Rust, Java, Javascript, SQL, XML, Unix Shell script, Python -
Verktyg & Middleware
Atlassian Jira, Gerrit, Jenkins, JBoss, Eclipse, Jira, Maven, Git
Marcus anställningar
-
Styrelseledamot, Larcus Development AB
2020 -
-
Medgrundare, Entify Handelsbolag
2015 -
-
IT-konsult, Sigma IT Consulting
2014 - 2020
Marcus utbildningar
-
DISC-analys, BRA HR
2019 - 2019
-
Scrum master, Informator
2016 - 2016
-
CCNA Exploration: Network Fundamentals, Chalmers Tekniska Högskola / Cisco
2013 - 2013
-
Datateknik Civilingenjör, Chalmers Tekniska Högskola
2009 - 2014