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