Kontakt

TelefonE-mailGithub

Det här är en placeholder där ett personligt brev kan läggas in. Annars står här ingenting (annat).

Arbetslivs­erfarenhet

Folksam

System Engineer, C3, 2022-08 -

C3, Cloud, Container & Common Systems, startades för att jobba med infrastrukturdelar och "DevOps" som de övriga teamen saknade kompetens inom. I min roll som System Engineer jobbar jag brett, men till stor del med plattformen OpenShift, integration mot GitLab CI/CD, Java, och att stötta andra team med allt däremellan t.ex. genom utbildningar, exempel och hjälp vid felsökning.

Utvecklade en Spring Boot-baserad proxy som tar emot godtyckliga HTTP-anrop av typ multipart/form-data, vidarebefordrar eventuella filer till en antivirustjänst för genomsökning och därefter antingen returnerar skanningsresultatet eller vidarebefordrar anropet till en annan tjänst.
 Utvecklade en routingproxy med Python/Flask som användes av andra team för att enklare testa nya feature-grenar innan merge.
 Hjälper både team som redan använder OpenShift, samt team som vill komma igång på plattformen, med hur de ska sätta upp sina namespaces, applikationer och pipelines. Har också ofta hjälpt till med felsökning, både plattforms- och applikationsrelaterat.
 Hjälpte till att sätta upp och underhålla en uppsättning Gitlab-pipelines som andra team kunde använda för att testa, bygga och produktionssätta sina applikationer. Skapade Helm-charts för vissa vanliga applikationer och hjälpte till med konfiguration av ArgoCD.
 Utbildar övriga utvecklare om OpenID Connect, och underhöll en proxy som användes för att hantera OIDC internt. Utvecklade en Spring Boot-baserad OIDC-proxy för att förenkla inloggning i testmiljöer efter att den tidigare togs ur bruk.
 

Folksam

Systemutvecklare Java, Mina Sidor Företag, 2019-09 - 2022-07

Var med och startade upp ett nytt team som enda backend-utvecklare, Mina Sidor Företag, som skulle ta fram ett digitalt kundmöte för företagskunder.

Utvecklade flera backendtjänster, helt eller delvis från grunden, med Java/Spring. Inledningsvis användes GigaSpaces som plattform. Tjänsterna användes för att hantera dokument, autentisera och administrera företagens tjänster.
 Utvecklade ett flertal stödsystem för testmiljöer med Python/Flask. Främst mockade backendtjänster och olika proxies som underlättade arbetet i testmiljöer.
 Var en av ett mindre antal personer som aktivt drev på för att gå över till OpenShift som plattform, vilket till slut skedde för vårt teams del, då vi var först ut i produktion bland teamen i Webbleveransen. Var en av de drivande i att ta fram metoder för att effektivt arbeta med plattformen.
 

Folksam

Systemutvecklare Java, Mina Sidor Privat, 2019-01 - 2019-08

Backendutvecklare på "Kundmötet Online", Mina Sidor Privat. Byggde främst backendtjänster i Java, Spring MVC osv.

Programmerade backendtjänster i främst Java 8, med Spring MVC, för Gigaspaces-plattformen, och baserade på framför allt REST.
 Skapade Python-skript för att testa/anropa undersystem, bland annat SOAP-tjänster. Byggde också populeringsskript för teamets Backend-tjänster, och programmerade en webbtjänst som gerererar boilerplate-kod för Java.
 Gick på en introduktionsdag för OpenShift och blev frälst. Deltog därefter i en Camel-kurs med visst fokus på OpenShift/3Scale.
 

m punkt nu Sverige AB

Teknisk mångsysslare, 2014-08 - 2018-12

m punkt nu Sverige AB är Sveriges ledande återförsäljare av hemautomationsprylar, ämnade för att bygga "smarta hem". Försäljningen är helt belagd på nätet, på hemsidan www.m.nu, och kundnöjdhet står i fokus. Företaget har konsekvent rankats bland de bästa på Prisjakt.nu. Jag var heltidsanställd nummer två.

Administrerade företagets inspirationsblogg, som startades i samband med att jag började. Jag skrev också en stor del av de inlägg som gjordes under min tid där, bland annat två nybörjarkurser i programmering (Python och Lua).
 Skapade en uppsättning Python-script som laddade ner och utvann produktdata från en av våra största leverantörers hemsidor (med bl.a. Selenium och BeautifulSoup). Prisuträkningar och försök att räkna ut vikt med mera gjordes också. Informationen sammanställdes i ett Excel-dokument och konverterades till XLSX. Därefter importerades filen i vår webbutiks backend, även detta genom Selenium då det ej fanns något API att tillgå.
 Översåg 2018 en överflytt av supporthanteringen från mailklient till Freshdesk, och administrerade användare samt filter och automatiska åtgärder för tickets. Detta gjordes för att minska mängden onödigt arbete och få ett smidigare sätt för flera anställda att hantera supportärenden samtidigt.
 Gav teknisk support på Z-wave, IoT och försökte besvara frågor relaterade till de produkter vi sålde. Kunderna var extremt nöjda med vår support, och själv lärde jag mig mycket om hemautomation, elektronik och elektricitet.
 Orderingången var ibland betydligt större än normalt. Vid behov hoppade jag in och hjälpte till att packa ordrar.
 Framställde mellan 2014-2016 olika former av grafik till verksamheten, t.ex. reklambanners, ikoner, loggor/headers till bloggen. Inledningsvis använde jag GIMP, men då dess texteffekter är snudd på obefintliga bytte vi snart till Photoshop.
 På företaget jobbade vi kontinuerligt med att åtgärda problem som dök upp, på ett sådant sätt att de inte skulle upprepas, och för att undvika eventuella framtida problem. För att strömlinjeforma detta gjorde vi under 2017/2018 en rad förbättringar för att bli certifierade enligt ISO9001 och ISO14001, bland annat utbildades de anställda och verksamhetsrelaterade dokument omformades på samma sätt.
 Administrerade butiken och dess innehåll; lade till och tog bort produkter, ändrade priser, modifierade beställningar och kundkonton på olika sätt. Gjorde återbetalningar i betalväxlar m.m.
 Deltog i såväl förhandlingar med leverantörer samt arbetsintervjuer inför nyanställning. Förhandlade också själv om priser med leverantörer i många fall.
 Kom genom arbetet i kontakt med olika eCommerce-plattformar. De två vi använde var osCommerce och Carismar. Kom också i kontakt med tilläggstjänster som Nosto, Addwish, Loop54 och betalväxlar från Klarna och Svea.
 

Stadium centrallager

Lagerarbetare, 2013-07 - 2013-10

Extrajobb jag hade en kortare period, vid sidan av studierna. Stadiums centrallager i Norrköping är fyllt med många tusen olika artiklar.

Som orderplockare gick man långa sträckor varje dag (1-2 mil), och bytte station frekvent baserat på distributionssystemets nycker.
 

Studentrekrytering, Linköpings Universitet

Studentambassadör, 2011-02 - 2014-05

Studentrekrytering arbetar aktivt för att locka nya studenter till universitetet. Jag arbetade deltid vid sidan av studierna, och åkte på ungefär 10-15 resor per år till olika mässor och temadagar på gymnasier.

Mina arbetsuppgifter bestod huvudsakligen av att besöka gymnasiemässor av olika storlek, och prata om utbildningar, studier och studentliv. Publikens storlek har varierat, från enstaka personer till fullsatta aulor.
 

Com Hem AB

Supportpersonal, 2007-01 - 2008-06

Företaget är Sveriges ledande leverantör av TV-tjänster men tillhandahåller även Bredband- och Telefoni-tjänster. Då man satt i grupper var det bra för att förbättra båda självständig problemlösning och samarbete.

För det mesta hjälpte jag kunder med tekniska problem per telefon, och efter ett år hade jag i princip alla behörigheter för supportfrågor som finns på företaget vilket var ganska ovanligt överlag, och jag kunde i vissa fall även mer än utbildarna.
 En del kundserviceärenden rörde fakturor, abonnemang och beställningar. Merförsäljning förekom också.
 Till supporten hade vi en rad hjälpverktyg, men tyvärr var dessa ganska undermåliga när det kom till att exempelvis guida kunden till Windows-inställningar för nätverk. Trots att jag själv aldrig hade använt Windows Vista vid det laget kunde jag, baserat på vad jag lärt mig från tidigare samtal, snart guida kunder utan hjälpmedel.
 Fördjupade mig mycket inom elektronisk utrustning (DOCSIS, kabel-TV, IP-telefoni, portering) och datorkommunikation (nätverk).
 

Ericsson Network Technologies

Kapare, 2006-05 - 2006-08

Företaget tillverkar opto- och kopparkablar. Mina arbetsuppgifter bestod bland annat av att hämta in trummor i olika storlekar, spola över en viss längd på ny trumma och kapa kabeln som sedan skulle vidare till kund. Hjälpte även till att skrota kasserad kabel.

Fick här köra en hel del truck (främst B1 och B3) vilket krävdes för att flytta de stora kabeltrummorna.
 

Bromangymnasiet, Hudiksvall

Lärarvikarie, 2005-05 - 2005-06

Gick in som lärarvikarie för fyra olika klasser under några veckor.

Lärde ut Matematik A/B till några estetklasser, och programmering till Naturteknisk matte/data-inriktning. Programmeringsklasserna var relativt självgående, för esteterna blev det lite mer lärardrivet upplägg med exempel på tavlan m.m.
 

Prix Hudiksvall

Butiksbiträde, 2004-11 - 2004-12

Praktik i matvaruaffär. Stundtals hårt och stressigt arbete, men jag tycker det var en bra upplevelse.

Iggesund Paperboard

Operatör efterbehandling, 2003-06 - 2003-08

Företaget tillverkar kartong. Mina uppgifter bestod till stor del att med en stor maskin kapa upp s.k. "toppark" som används för att skydda toppen på pallarna med kartongark som ska till kund.

Tog här mitt truckkort under en tvådagars-utbildning. Körde A4- och B1-truck, främst för att hämta material till kapen men hjälpte även kollegor på avdelningen.
 

Iggesund Paperboard

Sommarprojekt Teknikprogrammet, 2002-06 - 2002-08

Företaget tillverkar kartong. Jag och några andra elever på Hudiksvalls gymnasiala Teknikprogram fick i uppgift att skriva ett kompendium om företagets Efterbehandling, bland annat emballering och andra förberedelser innan produkterna skickas till kund.

Utbildningar

Kandidat i Datavetenskap vid Linköpings Tekniska Högskola  2010-08 -

Började studera på högskola för andra gången 2010. Är nästan klar med studierna men annat har kommit emellan för det sista (två kurser och exjobb).

  • Designmönster: Designmönster inom objektorienterad programmering, baserat på boken av "Gang of Four". Förutom tenta löste vi även 5 labbar i Java.
  • Artificiell intelligens: Automatisering, sökalgoritmer, Bayesiska nätverk, förstärkningsinlärning (Q-learning), planer. Flera av labbarna implementerades i Java.
  • Funktionell programmering och Lisp: Den, för utbildningen, inledande programmeringskursen ämnade att lära oss tillämpa funktionell programmering och begrepp som rekursion, lambda-funktioner med mera. Språket vi använde oss av var Lisp, som förvisso är rätt gammalt men har annorlunda och vacker syntax.
  • Imperativ programmering och Ada: Programmeringskurs med fokus på den imperativa programmeringsparadigmen, i språket Ada. Innehöll också två labbar i C, och ett stort avslutningsprojekt vi löste i grupper om 4 personer, som gick ut på att lösa en godtycklig Soma-figur.
  • Objektorienterad programmering och Java: I denna kurs skulle vi lära oss Objektorienterad programmering. Vi jobbade primärt i Java, men gjorde även en lite större labb i C++
  • Datastrukturer och algoritmer: Labbar och tenta, där labbarna skrevs i Java. I kursen behandlades t.ex. hashtabeller, binära träd, sortering, kortaste väg.
  • Användbara system: Interaktionsdesign exklusive kodimplementation. Brainstorming, skapande och utvärdering av prototyper på papper och digitalt.
  • Kognitiv psykologi: Främst fokus på den mänskliga hjärnan, olika typer av minne m.m.
  • Interaktionsprogrammering: UI-programmering i Java, med Swing. En lite större labb i JavaFX.
  • Språkteknologi: Textanalys, n-gram, tokenisering för översättning och innebördsanalys. Som slutprojekt byggde vi en chat-bot ("Chat App") som med hjälp av ett flertal webbsidor försökte räkna ut innebörden av en ställd fråga och besvara den efter bästa förmåga.
  • Databasteknik: ER-modellering och normalisering av databaser samt SQL-uttryck. Vi använde MySQL för labbarna.
  • Design och programmering av datorspel: Här skulle vi designa och programmera ett spel. Vi hade rätt fria tyglar, och gjorde därför en implementation i Java med LibGDX. Slutresultatet blev ett slags 2.5D-lerduve-shoot'em up, inspirerat av gamla konsollspel.
  • Webbprogrammering och interaktivitet: Webbprogrammering i GWT, labbar och slutprojekt där vi gjorde ett enkelt forum.
  • Programmering i C och .NET Framework: I den här kursen låg fokus på WPF, men i de flesta fall användes C som underliggande språk.
  • Enterprise Systems: REST, SOA, TDD. Implementation i Java, med Netbeans. Code Coverage utvärderades kontinuerligt av en Jenkins-server.
  • Datornät och distribuerade system: Tung kurs i nätverk, där vi fördjupade oss i protokoll, routing och server-klient-kommunikation. Labbarna skrevs i Java.

Civilingenjör i Medieteknik vid Linköpings Tekniska Högskola  2003-08 - 2004-02

Avbrutna civilingenjörsstudier. Läste klart en Engelska-kurs och lite programmering.

Teknikprogrammet, inriktning Matematik/Data, Bromangymnasiet  2000-08 - 2003-08

Studieförberedande, likt Natur. Vårt program samarbetade med stadens industrier, vilka vi fick arbeta i projekt hos. Vi fick bl.a. lära oss att skriva rapporter, arbeta i grupp och hålla föredrag.

Övriga färdigheter

Hårdvara

Raspberry Pi - Köpte min första Raspberry Pi kort efter att de släpptes. Många fler har det blivit genom åren, kanske framför allt då jag jobbat på en återförsäljare för dem.
Arduino/ESP8266 - Arduino och liknande mikroprocessorbestyckade produkter har vi på ¤m.nu använt till Temperatur-rapporteringsenheter, automatiskt bevattningssystem, WiFi-baserad rullgardinskontroll och fjärrstyrd RGB-ljusslinga. Själv har jag, med Arduino, byggt en temperaturstyrd fläktkontroller.
Komponenter - Har erfarenhet av bland annat dioder, transistorer, relän, H-bryggor, optokopplare och olika sensorer.
Hemautomation - Använder Z-wave hemma (Homey, NEEO). Har hyfsad koll på hur Z-wave fungerar på protokollnivå då jag implementerat stöd för ett antal Z-wave-produkter i Homey (#Javascript). Har även lite koll på ZigBee-, Bluetooth- och 433MHz-baserade produkter samt för- och nackdelar med dessa.
Ljudutrustning - Erfarenhet av passiva och aktiva högtalare, filter, förstärkare, elgitarr och olika typer av mikrofoner.

Linux

Debian/Ubuntu som skrivbordsmiljö - Har sen 2008, till och från, kört framför allt Ubuntu som skrivbordsmiljö. Särskilt mycket gillar jag det för utveckling och enkelheten som pakethanterarna innebär.
Debian/Ubuntu Server - Satte upp min första, helt CLI-baserade, Debian-server 2015 (ARM-baserad). Uppgradera 2017 till en x86-baserad UDOO x86 med Ubuntu Server. 2020 flyttades detta till en ny server med Debian, och alla webbtjänster flyttades in i Docker. Förutom #Bash och SSH har jag använt #Apache och #MySQL (LAMP), Cron, Samba och annan servermjukvara.
Bash - Bash är inte ett så värst kompakt språk, men det är ett kraftfullt skriptspråk och integrationen med Linux CLI är otroligt praktisk. Har mest skrivit korta skript för att flytta, extrahera och konvertera filer i olika sammanhang.

Mjukvara

Ljudredigering - Har skapat musik sen ~2004 med bland annat Reason och Cubase (exempel). Har även hjälpt till att spela in sång för ett musikprojekt.
Videoredigering - Redan i gymnasiet filmade och klippte jag och några vänner egna kortfilmer (av mycket varierande kvalité). Skrev manus för en lite "seriösare" kortfilm under utbildningen i Norrköping, och regisserade och klippte denna i Premiere Pro. Har därefter gjort några andra kortfilmer, varav ett fåtal finns på Youtube (exempel 1, exempel 2). Har även klippt en kortfilm i Blender.
3D-animering - Läste en distanskurs på HiG där jag fick lära mig både modellering, ljussättning och animering i Blender. Att klippa film i programmet ingick också i kursplanen och mitt slutprojekt finns att beskåda på Youtube.

Molntjänster

Docker - Migrerade sommaren 2020 min hemmaserver till en Debian-server, och gick över från "bare metal" till Docker, med docker-compose. Har nu ca 30 Docker-containers som körs på servern, och använder Nginx med reverse proxy samt Let's Encrypt för att exponera tjänsterna utåt.
ArgoCD - Har använt ArgoCD på Folksam sen 2022 för att tillförlitligt driftsätta applikationer.

Produktivitet

Git - Har använt Git sen högskoleutbildningen, men på allvar sen 2015 då jag satte upp en egen GOGS-server (GO Git Server). Har också ett Github-konto med diverse små "contributions" på sådant jag använder mig av. Sedan 2020 har jag börjat gå över till egenhostad Gitlab CE, och har tänkt börja experimentera med Runners och CI/CD.
Slack - Administrerar Slack-kanaler och har bland annat lagt in "Incoming Webhooks" för återkoppling kring ärenden från Freshdesk.

Programmering

Javascript - I och med att jag sysslar med webscraping har jag haft behov av att förstå Javascript i viss mån, förutom den sporadiska JS-programmering jag gjort. Har även gjort GreaseMonkey-script för att modifiera layout och funktion på webbsidor on-the-fly. Har också skapat en egen app för hemautomationskontrollern Homey (till största delen NodeJS men även lite klientkod i HTML/JS).
JSON - JSON används i en stor del av de REST-APIer jag arbetat med, och är även ett ypperligt sätt att representera data i de flesta moderna programmeringsspråk.
Webscraping - Världen är full av information, och denna vill jag så klart utvinna och utnyttja på bästa sätt för att förenkla mitt liv. Med framför allt Python, Beautiful Soup och Selenium har jag skrivit program i varierande storlekar som utvinner, och bearbetar, data.

Servermjukvara

Apache - Driftar flera webbsidor, däribland några #Wordpress, GOGS, Jenkins och Subsonic. Dessa styr jag åtkomst till m.h.a. Apache, antingen via direkt åtkomst eller reverse proxies till andra server-mjukvaror.
MySQL - Använde MySQL i utbildningen, framförallt i kursen $TDDD12 och $examensjobb. Kör numera MySQL för databaslagring för några av de webbsidor jag driftar (däribland denna sida).
Domänhantering - Har ägt egna webbdomäner i flera år, och i nuläget sköter jag all serverdrift själv då tillgängligheten inte behöver vara 100%, och använder endast registrar för DNS-tjänster.
Let's Encrypt - Använder Let's Encrypt för att kryptera kommunikationen med större delen av mina webbsidor, sen det släpptes för allmänheten.
Nginx - Har erfarenhet av konfiguration av Nginx (samt F5), främst från arbetet men också viss privat användning.

Språk

Svenska - Modersmål. Behärskar i såväl tal som skrift.
Engelska - Mycket bra i skrift, kan även uttrycka mig väl i tal. Har alltid varit bra på engelska, mycket tack vare TV-spelande och filmer från ung ålder.
Tyska - Begränsad förståelse. Mitt tillvalsspråk i högstadiet. Jag har inte varit i kontakt med det så mycket därefter (utöver Rammstein), men jag förstår fortfarande en del ord.
Spanska - Begränsad förståelse. Har pluggat lite via "Duolingo", så kan några hundra ord.
Japanska - Okej talförståelse, kan formulera enklare meningar. Mycket begränsad förståelse av skrift. Självlärd.