Inlägg om intervju

Publicerat Personligt

Möt Oskar Selberg – med genuint intresse och kunskap om Blockchain

Kort intervju med Oskar Selberg – en av Spinits nya systemutvecklare
Hej och välkommen till Spinit. Nu efter ett par veckor in i jobbet så är det dags att presentera dig kort här på bloggen.

Hur brukar du beskriva dig själv i ett par meningar?

– Väldigt mycket energi, extremt driven och målmedveten. Mina främsta intressen är datorer, teknik, driva företag, träna och umgås med min flickvän.

Vad studerade du innan du började jobba här på Spinit?

– Jag pluggade till civilingenjör i datateknik, och tog min master inom software engineering. En stor anledning till att jag valde att läsa Software engineering var för att få ett mer holistiskt synsätt på mjukvaruutveckling överlag och för att förstå både management och utvecklingen.

Vad jobbar du med nu?

– Just nu jobbar jag mot en av våra viktigaste kunder, min nuvarande uppgift är att integrera en ny funktionalitet som ger deras kunder möjligheten att kunna beställa rapporter på hur olika leveranser har gått. Arbetet rör alla olika delar av webbprogrammering; front, middle och back-end.

Hur har den första tiden på jobbet varit?

– Väldigt rolig! Jag har fått lära mig väldigt mycket nya saker, och varit med och deploy:at nya lösningar till kunder, något som blir ännu roligare när man är med från start till mål! Under tiden har jag också lärt känna flera nya personer som har gjort arbetet lättare och roligare, man behöver verkligen inte vara rädd att fråga efter hjälp. Och nu när snön äntligen och våren äntligen börjar komma blir det ju bra bättre!

Har du några tips till dem som pluggar idag som vill jobba som programmerare i framtiden?

– Se till att skaffa en sidosyssla/jobb eller hobby som har med programmering att göra, och var inte rädd att testa nya idéer, det är under studieperioden som man har tid. Varför inte testa att starta ett företag med en kompis för att få se hur det är att driva eget och ragga kunder? När man studerar har man inget att förlora!

Har du något specialintresse inom programmering?

– Mitt intresse är kanske lite udda, jag gillar att lära mig nya programmeringsspråk, detta gör att jag alltid är uppdaterad och har en bred kunskap inom många olika områden. Problemet med det är dock att jag är mindre ”spetsig” inom ett område, men det tycker jag vägs upp genom att jag har en bred kunskap! Jag är också intresserad av design och har designat en hel del webbapplikationer.

Vilka tekniker ser du fram emot att lära dig mer om?

– WebAssembly är jag riktigt sugen på, sedan är det management och mer allmänt C#/.Net och andra backend-tekniker som kanske inte just syns, utan mer dess flöden och systemarkitektur. Sedan är jag väldigt intresserad av block-chain tekniken, jag ser dagligen mängder med möjligheter inte minst hos företag utan också hos samhället. Att kunna applicera block-chain tekniken hade varit riktigt häftigt, och det är något jag ser väldigt mycket fram emot att lära mig mer om och arbeta med.

Tack!

Publicerat Nyheter
Jonas Lindblom, systemutvecklare Spinit

Möt Jonas Lindblom – en av Spinits seniora systemutvecklare med över 20 år i branschen

Sofie Sandell pratar med Jonas Lindblom om hans jobb som sysmteutvecklare på Spinit.

Hur beskriver du dig själv i ett par meningar?

Jag är en av veteranerna här på Spinit och har jobbat med systemutveckling sedan slutet av 90-talet. På fritiden så tycker jag om att resa, spela brädspel, se på film och göra andra roliga aktiviteter.

Om du skulle förklara vad du gör för en 10-åring hur skulle du beskriva ditt jobb då?

En tioåring idag har antagligen ganska bra koll på vad programmering är, jag skulle säga att jag bygger hemsidor och gör datorprogram. Dagens tioåringar har bra mycket bättre koll än vad jag hade på den tiden.

Hur kom det sig att du började jobba som systemutvecklare?

När jag pluggade på Chalmers så läste jag först elektroingenjör, jag kommer från en elektrikerfamilj och brukade sommarjobba som elektriker. Men jag tyckte inte att det var så roligt, utan det var programmeringskurserna som inspirerade mig mest så jag styrde min utbildning åt det hållet. Efter det så började jag jobba som utvecklare och då var det lite mer hårdvarunära programmering av micro-processorer och så. Sen så har jag gått åt mer administrativa system och programmering på en högre nivå med Window-program och webb-programmering.

Hur ser din arbetsdag ut?

Det är ganska varierat. Jag har en del kundkontakt, möten, kommunikation med de som är med i mina team och en del kodande själv också.

Som systemutvecklare så handlar det ju bland annat om att koppla ihop data på olika sätt och få ut relevant information från den data som man har tillgängligt. Hur ser du på utvecklingen och de fördelarna man har fått de senaste 20 åren genom att kunna använda mer data?

Jag tror att många företag sitter på en guldgruva av data utan att veta om det. För oss som försöker få struktur på datan så är det en rolig utmaning att försöka få fram kundnytta av den information som redan finns. Det kan ju handla om hjälp i produktionsplanering, kundanalyser, försäljningsstatistik och prognoser. Det finns mycket roligt man kan göra med den datan som kunden redan har.

Är det stor skillnad på hur man ser på data idag jämfört med 15-20 år sedan?

Jag tror att man är mycket mer medveten om vad man kan få ut av sin data idag. Tidigare så samlade man på sig mer data utan att göra så mycket med den. Idag har vi bättre verktyg för att kunna se olika mönster i den datan vi har och det hjälper oss fatta beslut.

Vilka har varit de bästa projekten du har jobbat med här på Spinit?

Ett av mina favoritprojekt är företaget Conscriptor* som vi har jobbat med i över tio år. Vi har varit med dem på hela resan, sen de startade och tills nu när de har flera hundra anställda.

Bland annat så har vi byggt Dictapool som är kärnan i deras verksamhet och det verktyg alla deras anställda använder. Sen har vi också byggt det som vi kallat dashboard som är en kontrollpanel där vi visualiserar deras data. Här får de en översikt över hur produktionen går, produktionsplanering, vilka typer av kompetenser som de har just nu och en hel del annat, med hjälp av grafer, diagram och listor så skapar man en bättre översikt.

Det jag förövrigt gillar med konsultverksamheten är att man får jobba med projekt i så många branscher, och får lära sig saker om varje bransch. Jag har jobbat i allt från blommor och radio till containerfrakt och fastighetsförvaltning under tiden på Spinit.

*Conscriptor hjälper sjukvården med deras journalhantering och nu jobbar över 200 läkarsekreterare på distans åt drygt 4 000 olika läkare.

Spinit är ett ovanligt it-företag på det sättet att man vill att minst 80% av alla systemutvecklare sitter tillsammans på kontoret i Sisjön. Hur hjälper det dig när du jobbar att ha 25 andra systemutvecklare på kontoret?

Jag tycker att det är jättebra. Det finns alltid någon att fråga om man kör fast och det finns nästan alltid någon som har haft samma problem. Det hjälper verkligen när någon tittar med nya ögon på problemet och när någon kommer med en annan infallsvinkel. Att jobba så här tror jag är bra för alla, både de nyare och de mer erfarna. Det är ett bra sätt att komma in i hur vi jobbar och vi har en bred kompetensbas på samma ställe.

Här på Spinit så har man odlat fram sin egen arbetskultur under åren. Hur beskriver du den?

Vi jobbar mycket tillsammans och hjälper varandra. Det är en platt struktur och det är ingen direkt hierarki här.

Du är ju mentor till en del nya medarbetare. Hur ser du på mentorskap inom systemutveckling?

Det är ett väldigt bra sätt för alla nya att komma in i verksamheten. Att vara mentor innebär att man lägger en del tid på det, både på kodgranskning och försöka lära ut hur vi jobbar – det är inget som kommer av sig själv, utan man får ta tag i det och lägga ner den tiden som behövs. Dilemmat är att man alltid känner att man skulle kunna göra mer, men det är kanske så det är.

Finns det några indikationer eller tecken på när man bör bygga en helt ny webbapplikation istället för att förbättra den som man har idag?

Ett problem kan vara att det är ett riktigt gammalt system med tekniker som inte stöds längre. Vi har till exempel en kund som fortfarande använder program utvecklat i Visual Basic 6, ett föråldrat system som vi håller på att ersätta nu, supporten för Visual Basic 6 slutade 2008.

Om ett system har blivit så komplext och monolitiskt att varje förändring tar för lång tid att göra, det är då man tjänar på att bygga nytt och förenkla och det blir billigare och enklare att underhålla systemet.

Kunden kanske inte vill ta den kostnaden direkt, då går det ju att stegvis byta ut del för del. Strangling kallar man metoden när man bygger upp nya delar efter hand runt den gamla kärnan och till slut så har de nya delarna tagit över och den gamla koden dör.

Vad är dina bästa tips på hur man ska gå till väga när man ska uppdatera en äldre webbapplikation?

Man behöver börja med att göra en rejäl analys av hela systemet och sen se om man ska ta beslutet att göra en hel omskrivning av system eller om man ska använda sig av strangling-metoden då man bygger upp det och bygger ny funktionalitet efter hand.

I vissa fall så får kunden snabbare valuta för pengarna om de bygger om applikationen i små steg, men i andra fall så måste man börja om från början och göra en total rewrite.

Tror du att det finns en risk att systemutvecklare blir ersatta av robotar som programmerar i framtiden?

Nej, inte den närmaste tiden. Men vi har automatiserat mycket av det vi gör så att vi får mycket gratis när vi startar upp nya projekt.

Har du några tips till de som studerar systemutveckling idag?

Försök att vara så bred som möjligt, det är viktigt idag att kunna allt från Java till webbdesign till back-end programmering och databaser. Det tror jag är ett vinnande koncept.

Vilka verktyg och tjänster använder du dig av i ditt arbete som gör din arbetsdag enklare?

Oj, svårt att säga på rak arm… Vi använder till exempel Jira eller Trello för att styra projekten. Sen har vi vissa utvecklingsverktyg som Visual Studio och SQL-server. Vi använder de utvecklingsverktyg som finns i webbläsarna en hel del och Git eller Mercurial för källkodshantering. Jag håller koll på tiden som jag använder för olika projekt med hjälp av Toggl.

Tack!

Publicerat Nyheter

Kort intervju med William Björklund – en av Spinits nya systemutvecklare

Hej och välkommen till Spinit. Nu efter ett par månader in i jobbet så är det dags att presentera dig kort här på bloggen.

Hur brukar du beskriva dig själv i ett par meningar?

– Datorglad kille både i och utanför arbetslivet. Har alltid varit en djurmänniska och jag kultiverar ett matlagnings­intresse, speciellt för asiatisk mat. Jag tycker det är värt att ta sig tid med saker och låta kroppen komma i ro, vare sig det betyder en bergs­promenad med hunden eller att laga till en extraordinär maträtt.

Vad studerade du innan du började jobba här på Spinit?

– Jag pluggade till högskole­ingenjör på Chalmers. Första året är ekvivalent mellan elektro­teknik och data­teknik-programmen, och jag startade faktiskt på elektro. I slutet av första året hade jag dock fått klart för mig att mjukvara är roligare än kretsar och laplace­transformer, så jag bytte över till data­teknik.

På högskole­ingenjörs­utbildningen har man inte officiella inrikt­ningar, men genom sista årets valfria kurser körde jag på parallell-program­mering samt testning och verifiering. Kort och gott var tanken att klara av parallell-programmering och problemen som kommer med det.

Vad jobbar du med nu?

– Jag sitter med integrerings­jobb mellan Volvo och en kund vad gäller projekt­hantering just nu. Innan det jobbade jag på en betal­lösning för resor via virtuella kredit­kort.

Hur har den första tiden på jobbet varit?

Publicerat Tips
Niklas Lindwall, teknisk projektledare på Spinit

Intervju med Niklas Lindwall på Spinit – om avancerad systemutveckling och arkitektur

Jag pratade med Niklas Lindwall på Spinit om hur han tänker när han förbereder och planerar inför nya stora it-projekt. Niklas har jobbat med systemutveckling i 20 år, är utbildad civilingenjör och jobbar som teknisk projektledare idag. Han brukar presentera sig som en social person som har lätt för att ta till sig saker och ting, och är öppen och nyfiken för nya tekniker.

I ett av mina möten med dig så visade du ett komplicerat Excel-blad med massa flikar och beräkningar om hur lång tid ett av dina projekt skulle ta. Tror du att det skulle vara möjligt att bygga avancerade webblösningar utan hjälp av Excel?

– Nej, eller jo (skratt), många gillar ju inte att jobba i Excel, men det beror på vilka kunder man jobbar med. Om kunden är van vid att jobba i Excel så är det en fördel för att man får en bra översikt och det är lätt att göra uträkningarna inför ett projekt. Excel är ju inget vi använder när vi bygger system utan är praktisk hjälp när man skall räkna på ett projekt och ta fram en offert. När man väl har satt igång projektet så använder man inte det på samma sätt. Excel kan vara ett bra verktyg många gånger, men jag tycker inte att man ska grotta ner sig alltför mycket och bygga för avancerade modeller, då blir det ofta så att bara en person vet hur allt fungerar.

Spinit bygger och designar olika avancerade webblösningar. Var är dina tankar kring hur man ska designa hållbara webblösningar och it-system som ska kunna användas länge?

– Jag brukar alltid köra enligt mitt mantra Separation of Concerns, det vill säga att man ska tänka i moduler, där varje modul har en dedikerad uppgift så att man får mindre utbytbara micro-tjänster. Det här är något som är ganska givet i dagens arkitektur, men det har inte alltid varit lika självklart. När Spinit startade för över 20 år sedan då tänkte vi inte direkt i de banorna, då blev det mer färdiga applikationer som var lite monolitiska och slutna.

En del system gör att vi är beroende av att använda just deras produkter. Vad kan man tänka på när man bestämmer hur ett system ser ut så att man inte blir fastlåst i det i framtiden?

– Om man har mindre moduler i ett system så blir de lättare att utveckla för att man kan fördela arbetet på ett helt annat sätt och framför allt så får man inte ett beroende mellan de olika modulerna. Om man arbetar på detta sätt så får man utbytbara moduler och det blir lättare att underhålla systemet i framtiden. Detta därför att man kan byta ut en tjänst utan att behöva byta ut alla tjänster som ingår i applikationen.

Publicerat Tips
Marcus Fridholm frontend utvecklare på Spinit i Götebrog.

Tankar kring användarvänlighet, UX och UI – intervju med Marcus Fridholm på Spinit

Jag pratade design och digitala plattformar med min kollega Marcus Fridholm som jobbar som frontend-utvecklare. Ska webbplatser fungera bra, så krävs också bra design.

Hur förklarar du förkortningar som UX (user experience) och UI (user interface) för någon som inte känner till något om webbdesign?

Om vi börjar med UI, så betyder det användargränssnitt på svenska. Det är hur programmet, eller webbsidan är konstruerad för att du skall kunna göra det du vill. UI i en bil till exempel är saker som ratt, pedaler, växelspak, fönsterhiss och allt sånt. Men på en webbsida handlar det om var knappar och menyer sitter, hur texten ligger och var man letar efter olika typer av innehåll.

Kommer du till exempel in på en tidning, så finns det vissa saker som man tar för givet. Här ligger ofta artiklar tidningen vill lyfta fram extra mycket samlade på ett ställe, tillsammans med dem ligger det ofta annonser. Menyer hittar du längst upp eller till vänster. Effekten blir att de flesta känner igen sig, man kan säga att ”ratten” befinner sig där du tror att den skall sitta.

UX är då en förlängning på allt som har att göra med UI. Det handlar om själva upplevelsen. Hur smärtfritt du navigerar och gör det du vill göra, hur intuitivt det är, hur många manövrar du behöver utföra innan du kommer dit du vill, hur bra återkoppling du får på vad du gjort. Hur väl du får det du förväntade dig.

Ett skräckexempel är till exempel när man går in på en kvällstidning och istället för nyheterna man förväntade sig hamnar på en splash screen. Den innehåller inte någonting av tidningen, utan är bara är ett sätt mjölka så mycket annonspengar som möjligt. Det är inte så att jag inte förstår att de behöver pengarna, men det är inte bra UX. Du bryter på sätt och vis förtroendet mellan dig och besökaren, när besökaren får något annat än de förväntade sig.

Lite på samma sätt, så har många sajter en förmåga att blanda sin egen navigation med annonsnavigation. Klickar du på en länk, så skall du hamna där du förväntade dig att hamna. Om du liksom får hålla tummarna för att du hamnar där du ville och inte mitt i en annonskampanj, så är det riktigt dålig UX.

En annan vinkel på UX är om du köpt något, är missnöjd och vill kontakta kundtjänst. Om kontaktinformationen är dold fyra nivåer ner i hierakin, så är det inte roligt. Eller ännu värre om det krävs att du först går någon annanstans och registrerar sig innan du ens får kontakta företaget, då lär du inte vara på bra humör när du väl får kontakt. Om allt du söker är information eller svar på en undran, så är frågan varför du skall behöva registrera dig överhuvudtaget?

Allt sånt krångel: registrering för att söka info, åtta klick för att skicka en fråga, hopp till externa sajter, programmerade länkningar som förstör din webbläsarhistorik – allt sånt får dig till slut att trötta. Till slut vill du inte mer och försöker lösa ditt problem med Google istället.

När man möter bra UX så är det givet var man hamnar och du hittar lätt det du söker efter. Det absolut bästa betyget en UX-designer kan få är att användarna inte ens tänker på det arbete som lagts ner, utan bara är nöjda.

Har du några tankar om god informationsdesign och hur man gör webbplatser mer tillgängliga?

Vi lider idag av det som pedagogerna kallar snuttifiering. Med det menar jag att vi får en hagelskur av informationsbitar över oss. Problemet är att få människor är konstruerade att hantera den sortens flöde. Vi får för många sammanhang att ta ställning till samtidigt och förmågan att faktiskt ta in information blir lidande.

I vissa kontexter är det OK. Tittar du i ett Facebook-flöde så förväntar du dig mycket information och har nog också lärt dig att sortera bort det mesta som egentligen inte är så intressant.

Om du däremot kommer in på en myndighets hemsida, så vill du verkligen inte ha 14 olika sammanhang att ta ställning till. Där har du ofta en specifik orsak till varför du är på sidan och du vill att myndigheten ska förstå dig som besökare tillräckligt väl för att veta vilka slags frågor de flesta brukar söka svar på.

Om det är en myndighet så är det också deras skyldighet att se till att sidan är anpassad för olika typer av användare. Det kan handla om allt från uppläst innehåll, innehåll på enklare svenska och innehåll anpassad utifrån den kontext du befinner dig i.

Om man tittar på företag, så är de ibland onödigt hemliga med vad de gör. Det är inte supersmart att tvinga dig som besökare att gissa vad företaget sysslar med. Kommer du in på en bilverkstad, så bör det nog stå att ‘vi är en bilverkstad’ redan på första sidan högt upp. Säljer du bildelar, men inte har en verkstad, så får det väl istället stå ’vi säljer bildelar’. Eller ‘vi är konsulter inom marknadsföring’ om det är den tjänsten man erbjuder. Varför krångla till det?

Jag skulle vilja påstå att du har max tio sekunder på dig att förklara vad ni gör. Att vara mystisk gör att man håller kvar några som inte är intresserade av vad man gör och att andra som är intresserade tappar sugen och letar vidare. Varför ska du hålla kvar människor som inte är ute efter det du erbjuder? Gör det tydligt vad det är du håller på med, då hjälper du dina användare och de vet att de har hamnat rätt.

Vad är skillnad på frontend- och backendutveckling?

Oftast så går vårt arbete i varandra, jag gör en del saker som backend-utvecklarna också gör. Men min expertis är närmare det visuella och själva upplevelsen. Deras expertis handlar mer om hur saker fungerar bakom kulisserna. På riktigt stora utvecklingsföretag så är folk lite oftare specialister, medan kompetenserna på ett mindre företag som Spinit går ofta in i varandra. Bredare kunskaper gör oss mindre sårbara.

Är det stor skillnad på hur man designar för olika åldersgrupper?

Douglas Adams skrev ungefär att det som sker innan du fyllt 15, är lika naturligt som luft, vatten och mat, det är så världen fungerar. Det som sker mellan du är 15 och 30 är spännande, det senaste och det hetaste som du bygger din karriär på. Det som sker efter att du fyllt 30 är onaturligt, mot guds lagar och borde förbjudas. Haha, ungefär så är det.

Den största utmaningen med att designa för unga, för folk som är runt 15 till 20, är att de har inte en ”medveten medvetenhet” om hur saker och ting fungerar. För dom är den digitala tillvaron som att andas, de bara gör. Så om du bryter mot de oskrivna reglerna för hur saker och ting ska fungera, så kan du bara göra det till en viss gräns. När du kommer till en ny svårighetsnivå så blir ungdomarna ofta helt handfallna, för de har aldrig medvetet lärt sig hur saker fungerar. De vet inte, men vet inte att de inte vet.

De lite äldre är ofta mer medvetna, men lider lite av problemet som någon som lärt sig ett nytt språk. Den digitala tillvaron är inte deras ”modersmål”, så den kommer inte lika självklart och naturligt.

Sen har vi min föräldrageneration, de som är 75 och uppåt. Rätt många i den generationen vet knappt hur man använder internet alls, de hade helst behållt en stationär telefon och en tjock-tv.

Så nog är det är lite klurigt att designa för flera åldersgrupper.

Hur hittar du vilka trender som gäller inom UI och UX?

Google. Jag söker på olika nyckelord som UI, UX och design, sen lägger jag till nuvarande år och så sållar jag ordentligt och får upp relevant information. Jag hänger på en del forum där teknik och design diskuteras. Jag är inte så aktiv, utan mest där för att hålla koll på hur diskussionen går.

Vilka olika verktyg använder du i ditt jobb som frontend-utvecklare?

Photoshop, Illustrator, Acrobat, Sketch, webbläsare, IDE – programmeringsverktyg för all kodhjälp som jag kan tänkas behöva. Och sen lite webb-baserade verktyg som Toggl, Jira och Git.

Tack så mycket!