Dela

Filip Klasson

  • Mjukvaruutvecklare, Arkitekt

Översikt

Filip är expert inom modellering och simulering samt distribuerade system där skalbarhet, lastbalansering, feltolerans, interoperabilitet och datakonsistens alla är viktiga aspekter.
Filip behärskar ett flertal teknologier, programmeringsspråk och ramverk, bl.a. C++, C#, Java, JEE, JavaScript, jQuery UI, jQuery Mobile, Android SDK, High Level Architecture, Enterprise Architect, HTML, RESTful Web Services, JSON, ASP.NET MVC, Entity Framework, Spring Framework.
Filip har ett stort intresse för mjukvaruutveckling i moderna objektorienterade miljöer samt av webb- och mobil teknologi.

Egenskaper

Filip är som person ansvarsfull, kundorienterad, kreativ och har lätt att ta till sig ny kunskap.
Filip är målinriktad och uppskattar projekt med teknisk höjd. Ett perfekt projekt använder sig av modern utvecklingsmetodik, har många tekniska problem att överkomma och innehåller team som är kompetent, engagerade och brinner för sitt arbete.
Filip har ett stort tekniskt intresse och uppskattar utmaningar och har alltid ett eller fler pågående mjukvaruprojekt som han njuter av på sin fritid.

Konsultens CV

  • Eget Androidprojekt

    2014 - 14

    Utvecklare

    Utveckling och publisering av styrketräningsapp för Android. Appen används för att spara träningsscheman och träningspass samt presentera utvecklingen över tid i ett antal olika grafer. Appen består av några få Activities som är relativt tomma som sedan dekoreras med olika fragments, detta för att effektivt kunna återanvända fragment i olika delar av applikationen. Supportbibliotek (ActionBar, ActionBarTabs, Fragment, Dialoger) används för att stödja så många AndroidAPI-versioner som möjligt. SQL-databas används för att lagra data (använder ORM Lite). Robotium används för testautomation och Git används för versionshantering. Övrigt: Drag & Drop, Save Restore Instance State (Life Cycle Management), View Pager, In-App Purchases, Gradle.

  • Aptean

    2013 - 13

    Utvecklare

    Underhåll och uppgradering av existerande e-handelsportal (Java, JEE, Struts, Spring Framework, Hibernate, SQL, JSP, Quartz, Apache Velocity, XML, HTML, CSS, Dojo, Maven).
    Förstudie med ett flertal prototyper inför ny e-handelsplattform (ASP .NET MVC 5, C#, Entity Framework 6, EPiServer CMS, EPiServer Commerce, jQuery, jQuery Mobile, Javascript, Handlebars, Bootstrap, Microsoft SQL Server). Versionshantering med Clearcase samt Team Foundation Server (TFS).

  • Pitch Technologies

    2012 - 13

    Arkitekt och Utvecklare

    Produktutveckling samt prototyper inför demonstration på simuleringsmässa i Italien. Webb- och mobil teknologi används tillsammans med en rad simuleringssystem från olika leverantörer för att visa möjligheterna att integrera modern teknologi i äldre system samt samexistens av moderna och gamla simuleringskomponenter. Bland annat görs en webbapplikation där simuleringstillståndet i militär simulering presenteras på en karta (Google Maps) och uppdateras kontinuerligt. Användarna kan utföra simuleringsoperationer från ett webbgränssnitt (JEE, jQuery, JavaScript, HTML5, Modernizr), från ett mobilgränssnitt (jQuery Mobile) samt från en Androidapplikation som använder sig av Android Google Maps. Stöd för de mest populära webbläsarna implementeras och gränssnitt designas för att se tilltalande ut på många olika storlekar av devices (mobiltelefoner och tablets). Serversidan skrivs i Java och kommunikationen med klienter sker via RESTful Web Services i JSON-format. För att underlätta Dependency Injection och öka testbarheten används Spring Framework. Testning görs med Junit, Mockito samt Selenium 2. Maven hanterar beroenden till andra bibliotek. SVN och GIT används för versionshantering. FogBugz används som ärendehanteringsystem och arbetet utförs med inslag från SCRUM och kanban bl.a. med verktyget Trello.

  • Försvarets materielverk (FMV)

    2012 - 13

    Arkitekt och Utvecklare

    Cirka 10 personer med olika expertis inom militär verksamhet, simulering och distribuerade system ska analysera, modelera och harmonisera krav kring framtida militära ledningsträningssytem i luft, sjö och markdomänen. Jag deltar som specialist inom distribuerade system samt som arkitekt och utvecklare. System- och kravmodellering sker i Enterprise Architect enligt MoDAF (Ministry of Defence Architecture Framework). En fristående applikation skriven i C# utvecklas för att effektivisera kravanalys samt möjliggöra spårbarhet (krav -> design -> implementation), kollaborativt arbete med spårbarhet av förändringar och granskningsprocesser. Applikationen utbyter information med Enterprise Architect SQL-databas. En lokal representation av databasens tillstånd skapas för att möjliggöra komplex dataanalys och datainsamling samt markant öka prestandan genom att bundla databastransaktioner vid inmatning av ny information. Hantering av krav, granskningsprocesser mm sker i form av en rad Microsoft Word- och Microsoft Excel-mallar där applikationen har möjlighet att skapa skräddarsydda dokument för de olika författarna beroende på vilken typ av information som efterfrågas och vilken fas arbetet är i. Gruppens deltagare kan välja att arbeta enbart med Word och Exceldokumenten genom att generera nya dokument vid behov, modifiera och lägga till ny information och sedan låta applikationen tolka och mata in informationen i databasen. Ytterliggare ett antal applikationer utvecklas där ibland ett plug-in till Enterprise Architect som gör det möjligt att importera High Level Architect objektmodeller enligt OMT (Object Modeling Template) specifikationen till Enterprise Architect i form av UML (SysML). C#, Windows Forms, UML, Informations- och databasmodellering, SysML, MoDAF, Word/Excel Automation, Google Protobuf, SQL, Enterprise Architect SDK, Scrum.

  • BAE Systems

    2012 - 12

    Arkitekt och Utvecklare

    Design och implementation av applikation med förmågan att lagra och bearbeta/analysera simuleringstillståndet vid olika tidpunkter. Syftet är att använda applikationen vid militärövningar där man efter genomförd övning genomför AAR (After Action Review) för att analysera vad som skett. Applikationen används tillsammans med en tidigare utvecklad applikation som presenterar simuleringsläget och ger användaren möjlighet att pausa, spola fram/bakåt, öka uppspelningshastighet osv. Utveckling sker i Java och information lagras i en SQL databas.

  • Försvarets materielverk (FMV)

    2012 - 12

    Arkitekt

    Huvudansvarig för design av nya interoperabilitetskomponenter samt huvudansvarig för integration mellan samtliga mjukvarukomponenter som behövs för genomförande av stor datorstödd ledningsträningsövning (hundratals aktivt deltagande). Information behöver utbytas mellan C2-system (Command & Control) levererade av Saab och simuleringssystem levererade av BAE Systems. Krav på interoperabilitet ställs av FMV där HLA (High Level Architecture) har en viktig roll. Information utbyts enligt en SISO standardiserad objektmodell för militär simulering. Krav på robusthet och prestanda är mycket högre än vad ingående komponenter tidigare upplevt vilket kräver god design men även kontinuerlig integration för att säkerställa att samtliga komponenter uppfyller ställda krav. C++, Java, HLA, Distribuerade system, Distribuerad simulering, Pitch pRTI, SLB, Saab WISE, PC-DART, Windows Server 2003 Administration, Windows Active Directory, Continuous integration, Team City, Ant.

  • Försvarets materielverk (FMV)

    2012 - 13

    Arkitekt

    Försvarsmaktens framtida behov av datorstödd ledningsträning kartläggs och harmoniseras i form av krav och design. Arkitektur, designregler och designmönster tas fram för nya såväl som existerande systemkomponenter. Arkitektur och design relaterat till bland annat Skalbarhet, Lastbalansering, Prestanda, Feltolerans och Datakonsistens. Min primära roll är som arkitekt och specialist inom distribuerade system och distribuerad simulering samt användning av öppna standarder så som HLA (High Level Architecture).

    Design och Arkitektur, Kravanalys, Kravmodellering, Verksamhetsanalys, Enterprise Architect, UML, Informations- och databasmodellering, Projektledning, RUP 4+1, SysML, MoDAF.

  • Försvarsmakt

    2011 - 12

    Utvecklare

    Integration av ett antal komersiella simuleringskomponenter (bland annat Steel Beasts, X-Plane, VBS2) samt kundens simuleringssystem. Integration görs i C++ och Java via ett antal interoperbilitetsramverk (t.ex. LVC-Game och Pitch Developer Studio) men också direkt integration med kundens system (C++). En webbapplikation vidareutvecklas (JEE, HTML, JSON) för att visualisera delar av simuleringen samt underlätta integrationen av övriga system. Uppdragets syfte är att hjälpa kunden att komma igång med integrationsarbetet för att sedan kunna övergå i en utvecklingsfas för att utöka simuleringsförmågan i deras system. Övrigt: C++, Java, XML, HLA.

  • Försvarets materielverk (FMV)

    2011 - 12

    Arkitekt

    Forskning och utveckling kring områden där förbättring behövs i nuvarande ledningssystem och simuleringssystem som används i Sverige. Arkitektur och design genomförs i team mer prototypande för att utvärdering. Exempel på områden som undersöks är prestanda/skalbarhet, öppna standarder angående utbyte av information inom olika domäner, hantering av simuleringstid, datakonsistens vid storskalig distribuerad simulering, synkronisering av simuleringstillstånd och informationsutbyte mellan simulatorsystem och Command and Control system (C2). Java, C++, High Level Architecture (HLA Evolved), Distributed Interactive Simulation (DIS)

  • Företag inom försvarsindustri i Frankrike

    2011 - 11

    Arkitekt

    Design tillsammans med ett team i Frankrike för att överkomma ett antal problem relaterat till distribuerad simulering. Bundling av nätverkspaket, packet loss, latency, calculation smoothing algorithms, nätverkslayout, filtrering av information, feltolerans och skalbarhet.

  • Försvarets materielverk (FMV)

    2011 - 11

    Arkitekt och Utvecklare

    Design och implementation av webbapplikation för att monitorera, starta och stoppa tjänster som exekverar på ett virtuellt nätverk. Applikationen hittar de tjänster som finns tillgängliga i molnet och presenterar de tjänster som användaren har rätt att monitorera, stoppa och/eller starta. Java, Utveckling sker i Java med JEE och Spring Framework. Utveckling av användargränssnitt görs med HTML, CSS, Javascript och jQuery UI. Arbetet genomförs med agil arbetsmetodik enligt SCRUM. För versionshantering används Git. Övrigt: Maven, Bonjour.

  • BAE Systems

    2011 - 11

    Arkitekt och Utvecklare

    Design och implementation av applikation som genererar C#-kod där koden som genereras är ett middleware för att underlätta utveckling av C#-simuleringsmodeller och C#-applikationer som använder simuleringstjänster som utbyter information i en distribuerad miljö på ett eller flera virtuella nätverk. C#, C++/CLI, C.

  • Pitch Technologies

    2011 - 11

    Handledare och Mentor

    Handledare för examensarbete där studeten har som uppgift att ta fram ett ramverk för test och verifiering av applikationer som exekverar tillsammans för att lösa gemensamma uppgifter (cloud computing) med fokus på skalbarhet och feltolerans. Utveckling sker i Java. Övrigt: XML, Unit testing, Continuous integration, Team City, Ant.

  • BAE Systems

    2010 - 11

    Utvecklare

    Design och utveckling av ett antal webbapplikationer för att ge BAE systems kunder ny simuleringsförmåga, skalbarhet, robusthet och feltolerans vid användning av ny simuleringsplattform (som designades i ett tidigare uppdrag). Applikationerna visar bland annat hur man kan hantera balansering av last i ett distribuerat system med simuleringstjänster samt hur man hanterar bortfall av simuleringskomponenter beroende på krasch eller nätverksproblem. Utveckling sker i Java med JEE och utveckling av användargränssnitt med jQuery Mobile, HTML, CSS, Javascript och Google Maps. Webb- och applikationsservrar som används är Apache Tomcat och Caucho Resin. Versionshantering med SVN. Övrigt: SOA, Maven, Unit testing, Continuous integration, RESTful Web Services, JSON, XML-RPC.

  • Försvarsmakten Sverige

    2010 - 11

    Utvecklare

    Design och implementation av applikation som levererar indata till C2-system (Command & Control) som är de system som används för ledning i skarpt läge av försvarsmakten. Indata består av tillståndet i simuleringssystemen som används med funktionalitet för att ytterliggare efterlikna verkligheten genom en mängd konfigureringsmöjligheter för att t.ex. fördröja eller förvränga indata. Java, HLA (High Level Architecture), XML, Unit testing, Continuous integration, Team City, Proguard, Ant.

  • BAE Systems Bofors

    2010 - 10

    Arkitekt och Utvecklare

    Design och implementation av plattform för nätverkskommunikation och informationsutbyte mellan militära simuleringsmodeller. Implementation av lager för nätverkkommunikation och informationsutbyte i simuleringsmodell för Archersystemet. Agilt arbetssätt med SCRUM, kanban samt Testdriven utveckling (TDD). Kontinuerlig integration och byggprocess via Ant och Team City. Versionshantering: SVN. Övrigt: C++, High Level Architecture (HLA), XML.

  • Pitch Technologies

    2010 - 10

    Arkitekt och Utvecklare

    Design och implementation av interoperabilitetskomponent i existerande applikation. Applikationen transformerar information som skickas enligt High Level Architecture (HLA) till ett format specificerat enligt Distributed Interactive Simulation (DIS). Förbättrad design av existerande delar av applikationen beroende på höjda krav på antalet transaktioner/s, underhållbarhet för framtida tillägg, förbättrad felhantering och användarvänlighet. Versionshantering sker med SVN. I byggprocessen används Ant och Team City för att köra automattester samt att bygga alla delar av applikationen kontinuerligt. Övrigt: Java, High Level Architecture (HLA), Distributed Interactive Simulation (DIS).

  • BAE Systems

    2010 - 11

    Arkitekt

    Design och implementation av backendplattform för simuleringskomponenter som exekverar i en distribuerad heterogen miljö (interoperabilitet mellan programmeringsspråk samt mellan operativsystem). Plattformen sköter all nätverkskommunikation, tidshantering, upp och nerpackning av data, samt funktionalitet för att utnyttja multicore-CPU. Nätverkskommunikationen genomförs såväl på LAN som WAN. C++, C++ Boost, Java, Web Services, WSDL, High Level Architecture (HLA), Visual Studio 2010, Visual Studio 2008, VC9, VC8, Versionshantering med SVN samt Clearcase.

  • Pitch Technologies

    2009 - 10

    Arkitekt och Utvecklare

    Design och utveckling av ett antal webbapplikationer och system för att koppla samman ett antal distribuerade system (främst simuleringssystem). Utveckling sker i Java med JEE och utveckling av användargränssnitt med HTML, CSS och GWT. Webb- och Applikationsservrar som användes var Caucho Resin och Apache Tomcat. Maven används i byggprocessen. Versionshantering: SVN. Övrig Webbteknologi i form av bl.a. JEE, SOA, RESTful Web Services, XML-RPC, JSON och Google Maps används i ett antal applikationer för användning av tunna och smarta klienter på mobiltelefoner och tablets för att komma åt simuleringstjänster i molnet.

  • Pitch Technologies

    2009 - 10

    Utvecklare

    Design och implementation av applikation (Pitch Developer Studio) som genererar kod i C++ och/eller Java. Denna kod packas vanligtvis i ett bibliotek (lib) som sedan integreras med kundernas applikationer som används för simulering. Detta mellanlager används för att underlätta, öka feltoleransen och spara tid och pengar vid utveckling av simuleringskomponenter. Den genererade koden kommunicerar med standardiserade gränssnitt (IEEE 1516-2000 och IEEE 1516-2010) i en distribuerad miljö. Stöd för ett flertal kompilatorer och platformar. Ärendehantering sker med FogBugz. För kontinuerliga automattester samt byggmiljö används Team City, jUnit och Ant. Versionshantering: SVN. Arbetet utförs enligt ett agilt arbetssätt med Testdriven utveckling (TDD), Extreme Programming (XP), SCRUM och kanban. Övrigt: High Level Architecture (HLA), C++, Java, Java Swing, Apache Velocity, Proguard, Pitch pRTI, MäK RTI, Red Hat Enterprise Linux 6, Mac OS X 10.7, Visual Studio 2010, Visual Studio 2008, VC10, VC9, VC8, GCC4.1, GCC3.2.

Kompetensområden

  • - Operativsystem/plattformar

    Apache HTTP Server, Linux, Mac OS X, Android, Windows 2003, Windows 95, Windows 98, Windows NT, Windows 7, Windows XP

  • - Databashanterare

    MS SQL-server, mySQL, Oracle

  • - Verktyg & Middleware

    Clearcase, Hibernate, JDBC, Netbeans, Spring, Ant, Apache Jakarta/Tomcat, Eclipse, Enterprise Architecht (verktyg), Git, J2EE, Maven, MS Office, MS Visual Studio, Struts, Tomcat, Visual Studio .NET, Subversion

  • - Utvecklingsspråk

    PHP, AngularJS, ASP, C, J2SE, Javascript, JSP, JUnit, Servlets, SQL, UML, Visual Basic .NET, XML, ASP.NET, C++, CSS, HTML, HTML5, Jquery, MS .NET, MVC, Rest, C#, Java

  • - Hårdvara

    Mac, PC

  • - Verksamhetsutveckling och Strategi

    Verksamhetsanalys, Kravanalys, Kravmodellering, Verksamhetsmodellering

  • - Upphandling

    Leverantörsanalys, Kravformulering

  • - Metoder & Processer

    RUP/UP, Continuous Integration, LEAN, Parprogrammering, Processer och metoder allmänt, Scrum, Agila metoder allmänt

  • - Projektfaser

    Införande och överlämning, Projektering, Förstudie, Systemering/Design/Krav, Test, Utveckling/Genomförande, Implementation

  • - Projektledning

    Teknisk projektledning

  • - Test & Verifiering

    Acceptanstest, Acceptanstestledning, Funktionstestning, Systemtestning, Testautomatisering, Testledning, Testprocessutveckling, Testutveckling, Validering & Test - Mjukvara

  • - Fast datakommunikation

    TCP/IP

  • - Databaser

    Datamodellering, Prestandaoptimering

  • - Systemtyper

    Mjukvaruarkitektur - programnivå, Mobilapplikationer, Systemarkitektur - systemnivå, Systemintegration, Nätverk och kommunikation, Objektorienterade system, Simulering, Webb- och Internetbaserade system, Windowsapplikationer

  • - Tillämpningar

    e-handel, Ärendehanteringssystem, AJAX, Instant Messaging, SOA

  • - Branscherfarenhet

    Postorder/ e-handel, Försvar, Service/Tjänster

  • - Roller

    Systemanalytiker, Arkitekt, Delprojektledare, Enterprise Architecht, Kravanalytiker, Systemingenjör, Team-ledare, Utvecklare/Programmerare

Anställningar

  • 2011 - 2013

    Systems Architect, Pitch Technologies

  • 2009 - 2011

    Systems Developer, Pitch Technologies

Utbildningar

  • 2013 - 13

    Flight and Ground Vehicle Simulation, Binghamton University - New York

  • 2004 - 08

    Civilingenjör Datateknik, Linköping

Visa mer

Intresserad? Kontakta

Sara Kallblad
Kundansvarig på Kvadrat Linköping AB
072-717 9757
Camilla Collins
Kundansvarig på Kvadrat Linköping AB
0702-791369
Christian Berger
Kundansvarig på Kvadrat Linköping AB
0708770409