Magnar Sveen

Magnar kaller seg framsieutvikler, men egentlig trives han godt i hele stacken. Han er opptatt av og oppdatert på webutvikling. Han har et entusiastisk forhold til frontendutvikling - webstandarder, frontendytelse, brukergrensesnitt, responsiv design, browserproblematikk, html, css og javascript.

Magnar får svært gode tilbakemeldinger fra våre kunder. Etter kundenes ønske har han holdt flere kurs der han har vært konsulent, blant annet om JavaScript og testing.

Favoritter for tiden: ClojureScript, Ansible, Responsive Design og Emacs
Bruker på jobben: Clojure, ClojureScript, DataScript og Datomic
Vil lære mer: Kubernetes, Jprofiler og clojure.spec

Magnars anbefalinger

Literate interactive coding: Devcards

Tester du UI-komponentene dine ved å klikke omkring i applikasjonen og gjenskape situasjoner manuelt? Unødvendig. Tidssløseri. Frustrerende. Bruce Hauman viser vei med Devcards. Se foredraget

Simple Made Easy

Det er ikke lett å lage noe enkelt. Rich Hickey snakker om forskjellen på nærliggende (subjektivt lett) og ukomplisert (objektivt enkelt). Og implikasjonene for hvordan du bør tenke rundt software. Se foredraget

On the Spectrum of Abstraction

Rich Hickey har noen fantastiske talks. Han snakker om generelle prinsipper, og gir deg ofte noen nye konsepter og ord du kan bruke til å tenke med rundt programmering.

Det er ikke ofte jeg ser talks av andre enn Hickey som har denne typen øye-åpnende innhold, men dette er en. Det er litt knot og kluss i starten, men det tar seg veldig opp. Han introduserer noen spissede begreper (power vs usefulness / properties) og bruker de til å snakke om abstraksjonnivåer på en veldig interessant måte. Mye godt tankemateriale her. Anbefales! Se foredraget

Snakker gjerne om

Brettspill

Det er mer enn Monopol og Ludo i verden. Har du prøvd Settlers? Moro, ikke sant? Det er bare begynnelsen. Det er en verden av interessante, artige, morsomme brettspill der ute - bare du kommer deg ut av bokhandleren og inn i en skikkelig brettspillforretning. Noen tips fra meg: Dominion, Galaxy Trucker, eller hvis dere bare er to: Lord of the Rings: The Confrontation. Anbefales.

Screencasts

Zombie TDD - Testdrevet JavaScript

Bli med når jeg skal skrive et spill fra scratch med JavaScript og Node.JS - testdrevet etter beste evne. I løpet av serien parprogrammerer jeg med gjestestjernene Christian Johansen og Johannes Brodwall - noen av episodene er endatil tatt opp foran et live publikum Se videoene.

Zombie CLJ - Clojure og ClojureScript

I denne oppfølgeren til ZombieTDD lager Christian og jeg spill med Clojure og ClojureScript. Det går i parprogrammering hele veien. Og jaggu skriver vi ikke flere tester først. Skulle tro XP hadde noe for seg. Se videoene.

Emacs Rocks!

Jeg ble så begeistret for Emacs at jeg trengte et utløp for all min entusiasme. Resultatet ble denne serien med 3-minutters videoer av kule triks som nå er sett over tre hundre tusen ganger. Se videoene.

Parens of the dead

Mer zombier og Clojure, denne gangen på engelsk. Jeg tenkte det kunne være moro å lage noe for et større publikum. Litt mer finpussa og litt mindre jovialt enn originalen. Se videoene.

Sideprosjekter

mytomatoes

Et lite produktivitetsverktøy jeg smalt sammen på en uke, som nå har flere tusen besøkende daglig - med 3,5 millioner 25 minutters arbeidsøkter registrert. Den første versjonen var kodet med PHP, men nylig lagde jeg en Clojure backend som er litt morsommere å vedlikeholde. Prøv app'en

Adventur Delux

Et tekstbasert eventyrspill jeg har skrevet på siden 1997, på størrelse med Ringenes Herre fire ganger. Som en ung lovende sverdsvinger går du rundt, sier vittige ting og kverker en haug med orker, zombier, kannibaler og andre kjipinger. Jeg har lagd fem forskjellige editorer opp gjennom årene - i AMOS, Java, Ruby on Rails, Groovy, samt den siste inkarnasjonen som har en Clojure backend til en Emacs Lisp frontend. Prøv spillet

Magnars bloggposter

5 JavaScript-uvaner du må legge av deg

Jeg tør påstå at JavaScript er et av språkene som er mest utsatt for cargo culting. For noen år siden var det utstrakt klipping og liming, og uvanene spredte seg fortere enn du kunne si globalt navnerom. Her er noen saker du må slutte med. Les posten

OOCSS: Et paradigmeskifte

Jeg satt min stolthet i å skrive slank HTML. Jeg kjente alle triksene i boka for å få nettlesere til å oppføre seg. Men selv om HTMLen var ryddig og semantisk, så hadde CSS’en eksplodert. Kunne det være noe i OOCSS? Det var jo i mot alt jeg hadde lært. Les posten

Å generere tester og dokumentasjon

En gjestebloggpost på Torbjørn Marø sin Programmeringsblogg om å kombinere testing og dokumentasjon ved hjelp av makroer og Emacs Lisp sin homoikonisitet. Les posten

Magnars foredrag

Strøm data til nettleseren uten å lage det på nytt hver gang

Vi gikk bort fra skreddersydd data-streaming per feature og kvittet oss med kilovis med kode. Ikke var det noe moro å skrive den koden heller. Når vi legger til nye features nå, så får vi streaming med på kjøpet. I dette foredraget prater jeg om den snedige løsningen vår -- hvordan og når den funker bra, og i hvilke tilfeller den ikke funker så bra. Se video

16 minutter om Pure Functions

Jeg snakker hva, hvorfor og hvordan om Pure Functions, i et utbrudd av entusiasme etter å ha jobbet med en kodebase basert på disse prinsippene et par år. Se video

ZombieCLJ: Live parprogrammering

Christian og jeg parprogrammerer på et nettspill med Clojure og ClojureScript. Syns du det er moro å se folk parprogrammere mens de prater om hva de driver med? Det er Clojure med hanskene av, så du må tåle å ikke forstå alt. Er du helt ny til funksjonell programmering kan du muligens få eksplodert hodet. Se video

Zombie TDD: Live parprogrammering

Christian og jeg setter oss ned med emacsen og parprogrammerer foran publikum. Se hvordan to typer som digger JavaScript angriper problemer og gjør koden testbar. Se video

Emacs Rocks WebDev Special

A high speed tour through some pretty darn snazzy features of Emacs when developing for the web. Even if you're not looking to change editors any time soon, this talk should have you hacking at your own editor in the following break. Se video

Lyntale: Wrap Ajax'en din

Jeg tegner og forteller hvordan du får ryddig kode og trivelig testing ved å wrappe ajaxen din. Se video Se koden

Open source

JavaScript

Clojure

Emacs

Java

Prosjekter

Norled 2016-

Utvikler nye informasjonssystemer for fergedrift for Norled. Jobber også med billett-app for kunder, samt app for fergebillettørene.

Hafslund Strøm 2016

Hadde ansvar for utvikling av Hafslund sin nye Strøm-app og Link-app for smarthjem. Ved hjelp av responsiv design kunne et lite team levere app for både web, iOS og Android.

Hafslund Strøm 2015

Utviklet verktøy for kontroll over hardware ute hos kunder, med live oversikt og regelbasert utrulling av oppgraderinger.

Hafslund Strøm 2014-2015

Link er Hafslund sin satsning på monitorering og automatisering i hjemmet. Jeg holdt i automatisering av bygg og utrulling. Stikkord er one-click deploy, blue-green utrulling, integrasjonstesting, og generelt hjelpe utviklerteamet på veien til kontinuerlig utrulling.

Schibsted Payment ID (SPiD) 2014

Utviklet nytt nettsted for teknisk dokumentasjon. Vi gjør mange grep for å holde dokumentasjonen aktuell og oppdatert. Sidene blir bygget opp basert på informasjon hentet rett fra SPiD sitt REST API. Eksempler i guides hentes fra fungerende eksempler, for å sikre at kodeeksempler ikke er utdatert.

Oiiku 2013-2014

Jobbet i et lite team med å utvikle eventsystemet Oiiku. Vi måtte alle bidra på alle fronter: fra frontend, via backend, til database og drift. Systemet består av mange frittstående applikasjoner (pluss SSO) som kommuniserer via REST.

FINN Reise 2013

Leid inn for å bidra til storsatsning på ny platform til FINN reise. Fokus på testdrevet utvikling, samt kontinuerlig integrasjon og utrulling. Mitt ansvar var å løfte frontendkompetansen på tvers av fire team.

FINN Oppdrag 2009-2013

Ansvarlig frontendutvikler. Utviklet hele framsia fra bunnen av. Vi var første marked i FINN til å bruke responsiv design. Skrev over 1000 JavaScript tester og likte det.

FINN Reise 2009

Stor opprydding og omlegging av JavaScript-bruken på reisesidene, da særlig søkeskjemaene. Endringene gjorde det lett å tilby skjemaene i iframe for VG, Aftenposten, Aftonbladet og www.destination.se. Holdt JavaScript-kurs for teamet, deretter alle FINNs frontend-utviklere, og til slutt et JavaScript for Javautviklere-kurs for hele FINNs utviklingsavdeling. Orkestrerte omlegging av FINNs CSS-organisering for å lette utviklernes jobb.

FINN Surf Sammen 2008-2009

Lagre annonser og del dem med venner og familie. En satsning på samhandling på FINN.no, med stort fokus på brukervennlighet og Ajax. Var med fra starten, jobbet med skisser til løsning og databasestruktur. Gikk fort over i rolle som frontendansvarlig på scrumteamet. Står bak mesteparten av Ajax- funksjonaliteten i forbindelse med lagring og deling av annonser.

Bravida 2005

BraWeb Bestilling: Et arbeidsverktøy for Bravidas prosjektledere og montører, som lot Bravidas kunder holde seg fortløpende oppdatert på status på sine bestillinger. Utviklet systemet egenhendig - fra analyse og design, til implementasjon og testing. Systemet hadde mange interaktive elementer a.la Ajax før begrepet ble myntet.

Se flere prosjekter i Magnars CV

Magnars referanser

Owen Fraser-Green

Leder MyEnergy, Hafslund

Magnar is one of the smartest full-stack developers I've ever met. I had the great pleasure of working with him on our Smart Home project at Hafslund where we tested his flexibility by asking him to take over our DevOps stack, write one of the back-end services and lead the rewrite of our app. All of which he pulled off with stunning success. Besides his prowess as a developer, we also miss his sharp wit in the office. Magnar would be a fantastic asset to any team.


Geir Henning Pettersen

Tech Lead, FINN reise

Magnar kom inn tidlig i et prosjekt der vi ønsket å øke kompetansen vår på frontendteknologi. Magnar hadde en vanskelig rolle, hvor vi ønsket at han skulle påvirke vår teknologi uten å løse problemene for oss. Hovedoppgaven hans var å gjøre våre faste ansatte og vår frontendteknologi bedre. Magnar gjorde våre folk bedre og la opp løpet rent tenkologisk slik at vi lærte å jobbe testdrevet i frontend. Læringen fra Magnar har vært veldig viktig for vårt prosjekt. Han er meget faglig dyktig i alle lag, men på frontend er han blandt de beste i Norge. Han er dessuten meget pedagogisk anlagt og enkel å jobbe med. Nå ca. ett år etter er jeg ikke i tvil om at grunnen til at vi har flere flinke folk på frontendteknologi er mye takket være at Magnar var hos oss i en tidlig fase. Jeg gir Magnar mine beste anbefalinger.


Bjørn Henrik Vangstein

Avdelingsleder IT, FINN.no

Magnar Sveen skiller seg klart ut i mengden, både faglig og personlig. Han ble raskt ettertraktet på huset, både på grunn av sine fagkunnskaper, som stikker dypt og favner bredt, men også på grunn av sine initiativ, pedagogiske evner, og behagelige vesen. Det er generell oppfatning i FINN at Magnar overgår de fleste når det gjelder utvikling av front-endløsninger. Magnar har et modent perspektiv på faget, og klarer å se bruker, teknologi og lønnsomhet i sammenheng. Magnars gode sosiale evner, kombinert med vilje og evne til å dele sine kunnskaper med andre gjør ham til en svært ettertraktet ressurs i de fleste utviklingmiljøer.


Kaija Ommundsen

Prosjekteier, FINN oppdrag

Jeg har hatt glede av å bygge opp FINN oppdrag sammen med Magnar. Jeg har sjelden møtt en utvikler som han; svært opptatt av å lage gode opplevelser for brukeren med god flyt og godt språk i sentrum. Kombinerer du dette med et sylskarpt hode og evne til å tenke helhetlig og konseptuelt, får du Magnar. Han er en usedvanlig dyktig frontutvikler, men jeg har satt minst like stor pris på hans deltagelse i diskusjoner om strategi, konsept, design, arkitektur, datamodell og arbeidsmetodikk. Hans evne til å jobbe i team og finne måter å komme videre på når det stopper opp, hans til tider skarpe spissformuleringer og hans evne til å finne pragmatiske løsninger på komplekse problemer har gjort at hele teamet som står bak FINN oppdrag har oppnådd gode resultater. Grip sjansen om du får mulighet til å jobbe sammen med Magnar - det skaper gode løsninger, interessante diskusjoner og garantert læring underveis.


Endre Midtgård Meckelborg

Teknisk Leder, FINN oppdrag

Ved oppbyggingen av FINN oppdrag jobbet jeg sammen med Magnar, og det var en lærerik og morsom opplevelse. Magnar er en av de beste frontend-utviklere jeg har jobbet med. Han har veldig god forståelse for brukergrensesnitt, og ser raskt hva som fungerer og hva som ikke gjør det. Magnar er dyktig i alle applikasjonslag, men utpeker seg spesielt for sin kunnskap rundt JavaScript/HTML/CSS. JavaScript-koden til Magnar er fritatt for dårlig klipp-og-lim-kode, og fungerer perfekt på alle plattformer! Sjekk ut hans omdømme på StackOverflow.


Magnar Sveen

Systemutvikler
+47 918 56 425
magnar@kodemaker.no