Magnus Hellström Javakonsult at Kilviken Consulting AB magnus.nils.hellstrom@gmail.com Summary Jag är seniorkonsult inom Java och Java EE och har mer än 10 års erfarenhet av systemutveckling inom en mängd olika branscher och företag i såväl Sverige som utomlands. Jag har bl.a. utvecklat administrativa IT-system för vårdsektorn och läkemedelsbranschen, applikationer för försäkringsbolag, mobila lösningar m.m. Projekten har inneburit systemutveckling i Java EE med fokus på design, implementation, arkitektur och test men har också innefattat förstudier och analysarbete för att hitta systemlösningar som ger bästa möjliga IT-stöd åt verksamheten. Projekten har varit av varierande storlek från en - eller fåmansprojekt med helhetsansvar till omfattande flerårsprojekt hos stora företag och myndigheter. På nuvarande uppdrag hos en statlig myndighet utvecklar jag ett system för hantering av statistisk information. Fritiden ägnar jag gärna åt att umgås med vänner, spela tennis eller lyssna på musik. Skills & Expertise Applikation/Webserver: JBoss EAP, Websphere, Tomcat, Oracle AS Programmeringsramverk Serverside: EJB3, EJB2, Spring Dataaccess: JPA, JDBC, Hibernate, Toplink Webbramverk: Struts, JSF MyFaces, Coocon XML: HyperJAXB, JAXP, DOM, SAX, XSL(T), JAXB, XML Schema, XPath, Xalan, Xerces Webservices: SOAP, WSDL, SAAJ, JAX-RPC, JAX-WS, Axis, JBoss WS, Oracle WS Web/Rich Internet Applications/Ajax: JSF, JBoss Richfaces Arkitektur och Design: OOP, Aspect Oriented programming, Domain Driven Design. Business Process Management: jbpm Modellering: Enterprise architect, Altova UModel, Rational Rose, Together Versionshantering: SVN, CVS, Visual SourceSafe, ClearCase Byggverktyg: Maven, Ant Continuous Integration: Hudson, Cruise Control Testning: JUnit, Selenium, EasyMock, Cobertura Databaser: Oracle, MySQL, Microsoft SQL Server 2000/2005 Page1
IDE: Eclipse, Netbeans Operativsystem: Windows Vista/XP/NT/2000, Linux, Solaris Certifications Sun Certified Programmer Java 2 Platform Sun Certified Developer Java 2 Platform Sun Certified Business Component Developer (EJB3) Sun Certified Developer for Java Webservices Experience Utveckling av statistiksystem (Javakonsult) at Statlig myndighet September 2010 - Present (1 year 11 months) Uppdraget är att utveckla ett system för hantering av statistisk information. Systemet skall ersätta gamla system med syfte att göra drift och förvaltning billigare samt öka kvaliteten på den data som behandlas. Systemet utvecklas i Java EE med nytt backend och databas samt användargränssnitt. Uppdraget innefattar tekniska studier, kravanalys, implementation och test. Systemet är byggt kring en process som består av ett antal steg för att ta emot statistik som XML från tredje part, granska och bearbeta informationen och slutligen lagra den i en databas för vidare verksamhetsanalys. Processen modellerades och implementerades med processmotorn jbpm. Processen integrerades mot ett tjänstelager som utvecklades med i EJB3 och JPA/Hibernate. Inläsningen och persistering av XML-data implementerades med ramverket HyperJAXB/JPA. Ett användargränssnitt för granskning och rättning av information byggdes i JSF med Ajax-biblioteket JBoss Richfaces. Enhetstester implementerades med JUnit 4 tillsammans med testdatabas-ramverket DBUnit och dataextraheringsverktyget Jailer. Automatiserade webbtester utvecklades med testramverket Selenium. Systemet byggdes på JBoss 4.3 applikationsserver mot en Oracle 10g-databas. I utvecklingsarbetet användes Continous Integration-servern Hudson med diverse plugins (Cobertura för testtäckning m.fl). Som utvecklingsmiljö användes i Eclipse integrerat med byggverktyget Maven. Page2
(JBoss, Eclipse, EJB3, JPA, jbpm, HyperJAXB, Hibernate, Oracle, Hudson, JUnit, DBUnit, Cobertura, Jailer, JSF, Maven, Selenium, Richfaces, Ajax, Rich Internet Applications) 1 recommendation available upon request Javakonsult at Kilviken Consulting AB August 2010 - Present (2 years) Javakonsult Migrering av försäkringsapplikation till Java EE (Javakonsult) at Folksam March 2009 - June 2010 (1 year 4 months) Projektet gick ut på att migrera Folksams system för motorförsäkringar till en Java-plattform. Målet var att förenkla handläggning av motorförsäkringar samt att minska driftkostnader genom införandet av ett modernare system. Med det nya systemet skall handläggningspersonal kunna utföra all administration av motorförsäkringar från ett enda system. Arbetet utgjordes av implementation, design och kravanalys tillsammans med verksamhetsansvariga hos Folksam. Som senior utvecklare ingick också teknisk vägledning och mentorskap för andra utvecklare i teamet. Systement implementeras i Java med ramverket SQLJ för JDBC-koppling med stored procedures till en DB2-databas. Systemet integrerades också med flera andra system inom Folksam som t.ex betalystem och kundregister, också här användes SQLJ för integration. Till applikationen byggdes webbgränssnitt i MVC-ramverket Struts med ett internt administrationssystem för handläggare och ett externt system för kunder med möjlighet att teckna motorförsäkring på webben. Projektet utvecklades i iterationer och avslutades med en sista release i maj 2010. Online-applikationen publicerades då på http://folksam.se/forsakringar/bilforsakring. (Java/Java EE, Eclipse, Rational Application Developer, SQLJ, MBeans, Websphere Application Server, Clearcase, Struts, JSP) 1 recommendation available upon request Software Consultant at Gnistra AB October 2000 - June 2010 (9 years 9 months) Javakonsult Utveckling av administrativt vårdsystem (Javakonsult) at Cambio Healthcare Systems December 2008 - December 2009 (1 year 1 month) Cambio utvecklar systemet Cosmic som är ett administrativt system för hälso- och sjukvården med bl.a. resursplanering, journaler och ordinationer. Kunder är landsting och privata sjukhus. Som utvecklare i kundteamet för Cambios största kund Uppsala Landsting gick uppdraget ut på att Page3
implementera kundspecifika ändringsärenden i produkten. I arbetet ingick analys av funktionsspecifikationer tillsammans med verksamhetsansvariga, design, implementation och testning av nya funktioner. Systemet utgörs av en desktop-applikation på klientsidan utvecklad med Java Swing och EJB 2 och MS SQL Server på serversidan. Serverapplikationerna körs på JBoss Application Server. (Java/Java EE, Eclipse, JBoss Application Server, JBoss Webservices, JAX-WS, SOA, EJB2/EJB3, Swing, JProbe, MS SQL Server, JUnit, EasyMock, Altova UModel, Scrum, Test Driven Development, Continuous Integration, Ant) Anpassning av E-wallet (Javakonsult) at 360 Holding September 2007 - December 2007 (4 months) 360 Holdings spelsite HeyPoker är del av Ongames spelnätverk. 360 Holding utvecklar en s.k E-wallet med integration mot payment service providers (PSP) med stöd för monetära transaktioner från kreditkort. Utförde en teknisk förstudie och tog fram och implementerade ett designförslag för anpassning av E-wallet med stöd för en ny version av Ongame Payment API (OPAPI). Förändringarna i OPAPI gällde betalfunktioner och i implementationen ingick bl.a. justeringar av transaktionshanteringen i E-wallet vid betaloperationer. Systemet är byggt med teknologierna PHP, EJB 3 och MySQL. (Java/Java EE, Eclipse, JBoss, EJB3, Java Persistence API, Hibernate, MySQL) Migrering av PLM-applikation till Java EE (Javakonsult) at Bosch Siemens February 2007 - September 2007 (8 months) Konsultade åt BSH med deras Product Life Management-system (PLM) som används av bl.a.säljare och utvecklingschefer inom organisationen. Uppdraget var att stabilisera och standardisera den proprietärt utvecklade tekniken i applikationen till Java EE. Detta för att underlätta och snabba upp införandet av den ökande mängden ändringsärenden i produkten. Systemet är webbaserat och utvecklat i Java. Webb - och datalagret är byggda på proprietärt utvecklade ramverk där webbramverket är baserat på designmönstret Model View Controller. Klassmodellen modellerades delvis om och persistens - och transaktionshanteringen migrerades till en implementation i EJB3 och JPA integrerat med Hibernate. Integrationen av systemet med SAP som var utvecklat med stored procedures mellan MS SQL databas-servers byggdes om på applikationsnivå för att utnyttja affärsregelverket i systemet och därmed säkerställa kvaliteten på importerad data. Page4
Script utvecklades i Ant för bygg - och konfigurationprocessen för att underlätta utveckling och installation. Omfattande logmekanismer infördes i systemet för att förenkla felanalys och buggfixning. Efter uppdraget beställdes en integration av systemet med Europeiska BSH för export av landsspecifik data. Systemet utvecklades som en webservice-klient byggd med JBoss Webservices. (Java/Java EE, Eclipse, JBoss, EJB3, Java Persistence API, Hibernate, MS SQL Server 2000/2005, JBoss Webservices, SOA, JAXB, JUnit, Ant, JSP) Integrationsarbete med webbtjänst (Javakonsult) at The Swedish Association of the Pharmaceutical Industry, LIF August 2006 - December 2006 (5 months) Integrationsarbete av FASS med Danska Läkemedelsindustriföreningens portal för utbyte av katalogtjänster med tablettinformation (Se tjänsten Tablett-identifiering på fass.se). Systemet byggdes kring en tjänstearkitektur baserad på Oracle Webservices. Ett administrationsgränssnitt integrerades i Fass-portalen med Model View Controller ramverket Struts. (Java/J2EE, Eclipse, Oracle Applicationserver/Database/Webservices, Altova UModel, Struts, JAXB, XSL(T), JSP, UML, SOA, Tomcat, Ant) Utveckling av mobilplattform (Javautvecklare) at Mediabilis October 2005 - June 2006 (9 months) Mediabilis, ett företag i Paris, utvecklar en plattform för WAP - och SMS tjänster för mobilt Internet. Plattformen är byggd i EJB 2 tillsammans med ramverken Spring JDBC Templates och Cocoon på applikationsservern JBoss. I utvecklingsarbetet ingick bl.a. utveckling av meddelandehantering med JMS (JBoss MQ), implementering av algoritmer för anpassning av bilder för olika device, utveckling av webbtjänst med ramverket Axis m.m. (Java/J2EE, JBoss, Eclipse, Spring, MySQL, EJB, JBoss MQ, JMS, Webservices, SOAP, Axis, Cocoon, XML, XDoclet). Utveckling äv PIM-plattform (Javautvecklare) at Voxmobili October 2004 - June 2005 (9 months) Voxmobili utvecklar en plattform för Personal Information Management (PIM) med webb- och mobilaccess samt synkronisering av PIM-data med mobiltelefoner. Lösningen används av telekomoperatörer och innehåller tjänster för bland annat e-post, kalender och lagring av filer. I jobbet ingick bl.a. utveckling av en WebDAV-lösning för access till Voxmobilis fillagringssytem. Lösningen byggdes med Apache Slide och WebDAV Construction Kit. Page5
(Java/J2EE, Tomcat, WebSphere, Eclipse, Oracle, Slide, WebDAV, XML, XSL(T), JSTL). Utveckling av läkemedelsportal (Javakonsult) at The Swedish Association of the Pharmaceutical Industry, LIF January 2003 - March 2004 (1 year 3 months) Utveckling av FASS som är en katalog för läkemedel och ges ut av Läkemedels industriföreningen (se www.fass.se). Deltog i utvecklingen av ny version av FASS-portalen med nytt användargränssnitt, backend och databas. Utvecklingsarbetet innefattade bl.a. arbete med mappning av XML-schema till Java-klasser med JAXB och Toplink, implementation av automatisk transformering av XML-fragment inför publicering FASS.se samt utveckling av användargränssnitt med ramverket Struts. (Java/J2EE, Oracle Application Server, Oracle JDeveloper, Oracle Databas, Oracle Toplink, JAXB, XML Schema, XSL(T), Struts, JSP) Education Uppsala universitet Master, Computer Science, 1996-2000 Page6
Magnus Hellström Javakonsult at Kilviken Consulting AB magnus.nils.hellstrom@gmail.com 2 people have recommended Magnus "Jag hade förmånen att få jobba tillsammans med Magnus som är en mycket kompetent, flexibel, prestigelös och resultatinriktad konsult. Magnus anpassar sig väldigt bra efter den rådande situationen och behoven. Han har både lätt för att lära och viljan att lära sig nya saker. Levererar i tid och med hög kvalitét." Mikael Arctaedius, Systemutvecklare (konsult), Brottsförebyggande rådet, worked directly with Magnus at Statlig myndighet "Magnus kan snabbt sätta sig in i olika problemlösningar med mycket gott resultat inom javautveckling. Han har lätt att samarbeta med andra." Anders Renander, was Magnus's client Contact Magnus on LinkedIn Page7