Marcus Löf

Marcus är en systemutvecklare med erfarenhet av att bygga robusta skalbara lösningar. Framförallt har Marcus arbetat med backendutveckling i Java och Kotlin av mikro- och molntjänster, men har viss erfarenhet av hela stacken i flertalet kodspråk. Han har arbetat både med förvaltning och nyutveckling, och har en civilingenjörsexamen från KTH i ryggen.

Marcus är en hårt arbetande problemlösare som är bekväm i att ta sig an komplexa utmaningar, och är inte rädd för att kavla upp ärmarna för att lösa problem i okänd terräng. Det finns ett kvalitétsfokus i allt han gör, Marcus trivs bäst när han får bygga långsiktigt hållbara backendsystem. Han är en utomordentlig lagspelare som sätter laget framför jaget. Marcus är väldigt prestigelös och arbetar aktivt för att de bästa idéerna ska premieras. Utanför arbetstid tränar Marcus gärna på gym, tävlar i tennis och spelar schack.

Tidslinje


Uppdrag

I ett team på sju utvecklare utveckla, designa arkitektur och testa mjukvara för en SaaS-tjänst i AWS som ger kunder smart data för att fatta affärsbeslut.

Nytta

Som specialistutvecklare bidrar Marcus till produktutveckling genom att ta fram tekniska lösningar och arkitekturer. Han stöttar kollegor, agerar löpande mentor för juniora utvecklare och tillför både kvalitet och energi till teamets arbete för att nå produktmålen. Marcus deltar även i kravinsamling, bland annat genom att leda och medverka i kundintervjuer, vilket bidrar till att produkten kontinuerligt förbättras utifrån användarbehov.

Tekniker
Java, Kotlin, REST, Cucumber, Docker, Kubernetes, Elasticsearch, MongoDB, SQL, Redis, SOAP, RabbitMQ, Kafka, Python, Cassandra, Open Policy Agent (OPA), OAuth2,  Bitbucket, GitHub, Bamboo, JSON, JWT, Yaml, AWS, Spring Boot, Ktor

2023 - (Nuvarande)

Developer Specialist

Stort amerikanskt bolag inom data analytics


Uppdrag

Nyutveckla, modernisera och förvalta system för bolagets tjänstepensionsaffär, som utgör cirka 10 % av Sveriges icke-kollektivavtalade tjänstepensionsmarknad. Marcus ingick i ett team på 4–6 utvecklare. Systemen omfattade interna admin-gränssnitt, pensionsförsäkringssystem, externa partnerintegrationer, betalnings- och fonddistributionssystem, faktureringssystem, externa webbgränssnitt samt bolagets Företagswebb och Förmedlarwebb.

Nytta

Marcus tog stort ansvar för att göra systemen mer robusta och pålitliga. Äldre system migrerades till ny teknikstack, och ett nytt feltolerant faktureringssystem byggdes, inklusive möjlighet att skicka fakturor via mejl.

Han medverkade aktivt i design och implementering av den nya arkitekturen under migrationen och var drivande i att införa automatiska tester i byggkedjan. Detta möjliggjorde effektiv leverans med hög kvalitet genom continuous deployment och minskade behovet av manuella tester, både för webbläsargränssnitt och API:er. Vid ersättning av äldre system användes jämförelsetester för att säkerställa att det nya systemet uppförde sig korrekt i relevanta scenarier.

Tekniker

Java, HTML, CSS, JSP, Angular, Typescript, Javascript, Kafka, gRPC, Cypress, Cucumber, Docker, GigaSpaces, MongoDB, SQL, REST, GitLab, Jenkins, JSON, Spring Boot 

2022 - 2023

Developer

Svensk modern nätbank


2021 - 2021

Tech Lead

Stort amerikanskt bolag inom data analytics

Uppdrag

Leda ett team på 4–5 utvecklare för en SaaS-produkt i AWS som erbjuder skalbara REST-API:er för persondata. Teamet ansvarade även för förvaltning av ytterligare en tjänst för API:er som hanterar företagsdata.

Nytta

Marcus ledde det tekniska arbetet i teamet, ansvarade för systemarkitektur och samordning med andra team och ledare inom bolaget. Under hans ledning vidareutvecklades bland annat integrationer mot nordiska statliga datakällor. Han tog ansvar för teamets tekniska dokumentation som krävdes för att bli godkänd leverantör av data från det norska statliga Folkeregistret.

Marcus deltog i hela utvecklingskedjan, från kravinsamling till levererad produkt, och medverkade även i tekniska kundintervjuer för att förbättra tjänsten utifrån kundernas behov.

Tekniker

Java, Kotlin, REST, Cucumber, Docker, Kubernetes, Elasticsearch, MongoDB, SQL, Redis, SOAP, RabbitMQ, Kafka, Python, Cassandra, Open Policy Agent (OPA), OAuth2,  Bitbucket, Bamboo, JSON, JWT, Yaml, AWS, Spring Boot


Uppdrag

I ett team på 4–5 utvecklare vidareutveckla en SaaS-produkt i AWS som erbjuder skalbara REST-API:er för persondata.

Nytta

Marcus hade en drivande roll i systemets arkitektur med fokus på att förbättra prestanda och funktionalitet. Han arbetade aktivt med att höja kvaliteten på sökresultat vid sökningar efter exempelvis personer och adresser genom metoder inom Information Retrieval (IR), såsom stemming.

Med hjälp av en särskild testsvit för informationssökning kunde systemets träffsäkerhet mätas genom F-score, vilket gjorde det möjligt att kontinuerligt justera och optimera algoritmerna för bättre sökresultat.

Marcus betonade även kvalitet och robusthet i systemet. Han bidrog till att mikrotjänsterna kunde hantera hög belastning genom kodoptimering, förbättrade databasindex för snabbare uppslag samt införande av rate limiting och circuit breakers för att skydda systemet mot överbelastning och DoS-attacker.

Tekniker

Java, Kotlin, REST, Cucumber, Docker, Kubernetes, Elasticsearch, MongoDB, SQL, Redis, SOAP, RabbitMQ, Kafka, Python, Cassandra, Open Policy Agent (OPA), OAuth2,  Bitbucket, Bamboo, JSON, JWT, Yaml, AWS, Spring Boot 

2020 - 2021

Developer

Stort amerikanskt bolag inom data analytics


Uppdrag

Utveckla en plattform för containerbaserad deployment anpassad för bolagets system, då Kubernetes inte tilläts användas för vissa use case.

Nytta

Marcus utvecklade, tillsammans med 2–3 utvecklare, en plattform som möjliggjorde containerbaserad drift på ett antal on-prem-servrar. Ett CLI togs fram där ett önskat systemtillstånd kunde definieras och skickas in via konfigurationsfiler, varefter applikationerna automatiskt driftsattes i enlighet med specifikationen.

Marcus ansvarade även för dokumentation samt för att utbilda både utvecklare och driftpersonal i hur plattformen fungerade och skulle användas.

Tekniker

Java, REST, Docker, Kubernetes, Helm, etcd, Kafka, Yaml, JSON, GitLab, Bitbucket, TeamCity

2019 - 2020

Lead Developer

Ledande amerikansk börsleverantör


Uppdrag 

Ansvara för att migrera ett tradingsystem till att kunna driftas i molnmiljö.

Nytta

Marcus anpassade systemet till att bli kompatibelt att driftas i molnet som mikrotjänster, samt såg till att tjänsterna kunde konfigureras enligt behov. Marcus höll även utbildningar kring molntjänster och hur molninstallationen fungerade för övrig personal eftersom det var bolagets första i molnet. Således behövde han i sitt arbete även sätta upp mycket av molninfrastrukturen för att kunna genomföra uppdraget.

Tekniker

Java, REST, Docker, Kubernetes, Helm, Kafka, Yaml, JSON, AWS, SQL

2019 - 2019

Lead Developer

Ledande amerikansk börsleverantör


Uppdrag

Tillsammans med ett team på tre utvecklare ta fram en core-plattform för Java och C++ som skulle användas av bolagets samtliga applikationer för monitorering, exekvera kommandon, loggning och konfigurationshantering.

Nytta

Marcus bidrog till att etablera agila arbetssätt med starkt fokus på kvalitet genom Scrum och gedigna code reviews. Han utvecklade plattformsfunktionalitet och gjorde den tillgänglig för både C++- och Java-applikationer i enlighet med intressenternas behov.

Automatiserade komponenttester togs fram för att simulera en exempelapplikation som kördes på plattformen, vilket möjliggjorde kontinuerlig verifiering av funktionaliteten i en CI/CD-pipeline. Marcus var även aktiv i samarbetet med stakeholders och systerteam i andra länder, bland annat i USA, Indien och Litauen, och deltog i en bootcamp i New York med syfte att samordna och integrera teamens system.

Tekniker

Java, C++, Kafka, Docker, Kubernetes, Helm, Yaml, JSON, REST, Redis

2017 - 2019

Developer

Ledande amerikansk börsleverantör


2017 - 2017

Developer

Världsledande musikstreamingtjänst

Uppdrag

Personalisera albumsidan för användare hos ett av världens största musikstreamingbolag, med utgångspunkt i att olika användare har olika preferenser.

Nytta

Marcus utvecklade mjukvara för att personalisera albumsidan med hjälp av metoder inom Information Retrieval (IR) i kombination med statistiska modeller. Lösningen gjorde det möjligt att dynamiskt anpassa ordningen på sidans kategorier — exempelvis populära låtar, biografi och liknande innehåll — så att de presenterades på det sätt som var mest relevant för varje enskild användare.

Algoritmen baserades på användarens tidigare beteende i relation till andra användares intressen. Genom att beräkna ett tf-idf-baserat statistiskt mått kunde systemet ranka och prioritera kategorier individuellt per användare.

Tekniker

Java, Cassandra, GCP, BigQuery, REST


Uppdrag

Utforska vad Blockchain-teknologin kan användas till inom transportindustrin.

Nytta

Bolagets lastbilar samlade in stora mängder data om miljö- och väglag. Marcus utredde hur bolaget på ett rättvist sätt skulle kunna dela denna data med konkurrenter, samtidigt som parterna ekonomiskt kompenseras utifrån hur mycket data de bidrar med.

Som en del av arbetet var Marcus med och tog fram en patenterad algoritm för att möjliggöra ett atomiskt utbyte av data mot tillgångar via en blockkedja – Blockchain Two-Phase Contract.

Marcus utvecklade även en Android-applikation som demonstrerade hur betalningar skulle kunna genomföras med en egen digital valuta, säkrad via Bitcoins blockkedja, genom så kallade Colored Coins.

Tekniker

Java, Android, Blockchain

2017- 2017

Developer

Stor svensk lastbilstillverkare

Uppdrag

Exempelkod till bolagets utvecklingsmiljö (IDE) för inbyggda system.

Nytta

Marcus utvecklade och portade exempelkod för flera olika arkitekturer i syfte att demonstrera hur bolagets IDE kan användas vid utveckling av inbyggda system. Exempelkoden, som är tillgänglig direkt i utvecklingsmiljön, ger en användarvänlig startpunkt och gör det enkelt för kunder att snabbt komma igång med sin utveckling.

Tekniker

C/C++

2016 - 2016

Developer

Verktygsproducent för inbyggda system