Profilbilde av André Bonkowski

André Bonkowski

Utvikler

+47 911 79 089
andre@kodemaker.no

Utvikler med 30 års erfaring

  • Fullstackutvikler
  • Erfaring fra mobilutvikling på iOS, React Native, Android
  • Har en forkjærlighet for funksjonell programmering
  • Ansvarsfull, samarbeidsvillig og har en stor dose yrkesstolthet

«Han har vært essensiell i å bygge opp et relativt ungt team, bidrar aktivt til en positiv teamfølelse og skaper en god atmosfære på kontoret. Hans sosiale natur og evne til å bli likt av alle gjør ham til en verdifull medarbeider. Andrés allsidighet er bemerkelsesverdig. Han er aldri redd for å ta fatt på nye og viktige problemer, og viser en sjelden evne til å tilpasse seg og finne løsninger på tvers av ulike teknologiske og sosiale aspekter i arbeidet.»

- Bjørn Nessjøen, CTO, The Social Gaming Group

Om André

André er en sosial og trivelig kar som har sansen for enkle løsninger. Han har god oversikt over og interesse for nye teknologier, rammeverk og biblioteker, og samtidig lang erfaring med å gjøre gode vurderinger av når det er riktig for kundene å ta slikt i bruk.

André er en erfaren utvikler med en forkjærlighet for funksjonell programmering og sterkt typede språk. Han setter pris på hvordan disse tilnærmingene forbedrer kodekvaliteten og effektiviteten i utviklingsprosessen.

Favorittspråk for tiden er Rust, hvor også sikkerhet er satt i høysetet. André er nøyaktig og ærgjerrig, og setter sin ære i å levere kode av høy kvalitet.

The Social Gaming Group

Automatisere utrulling av software og utvikling av neste generasjons spillapplikasjoner

Bring

Design og utvikling av et nytt system for budleveranser

Animalia

Videreutvikling av eksisterende samt design og implementasjon av nye systemer innenfor kjøtt- og egg-bransjen

Mercell

Utvikle salgsløsning for anbudsportal.

Teknologi



Utviklingsverktøy

IntelliJ IDEA, Xcode, Gradle, AppCode, Leiningen og tools.deps


Devops

Docker, Microsoft Azure, Docker cloud, Bamboo, nginx, Kubernetes, Ansible, Amazon Web Services (AWS), Wireguard, Terraform og Firebase


Web- og apputvikling

Grails, Rails, REST, Servlets, Spring, CSS, JBoss, React, HTML, re-frame, Reagent og Api



Database

Oracle, Sybase, JDBC, MySQL, PostgreSQL, JPA, Flyway, MariaDB og Redis


Data

Elasticsearch, Thinking Sphinx, JMS, Kafka og Lucene



Annet

Git, JUnit, Linux, RSpec, iOS, Cocoapods, JIRA, Cucumber, Ubuntu, macOS, Cargo og Android


Prosjekter


Arbeidsgiver

Kodemaker Systemutvikling AS


Animalia
03.2024 -

Ny- og videreutvikling av Ingris, et system for registrering og styring av svineproduksjonen i den enkelte besetning

Utvidelser av eksisterende system

Clojure, ClojureScript, Oracle, REST, re-frame, Reagent, DevOps og tools.deps


Kodemaker Systemutvikling AS
01.2024 - 02.2024

Lønnsmodul for Kodemaker

Implementasjon av lønnsmodul for Kodemaker med integrasjon mot Tripletex APIet

Python og Api


The Social Gaming Group
11.2022 - 01.2024

Automatisere utrulling av software og utvikling av neste generasjons spillapplikasjoner

I dette projektet så har André bl.a hatt ansvaret for:

  • Automatisere oppdateringer og installasjoner av operativsystemer og spillprogramvare for Shufl og Darts på fysiske spillmaskiner verden rundt.

  • Oppgradere og utvide eksisterende Python applikasjoner for bilde-håndtering og analyse.

  • Utvikling av “Action-Cam” som gir mulighet til å bestille video replay av viktige spilløyeblikk. Her ble Rust valgt som språk.

  • Neste generasjon av Shufl og Darts. En hovedmodul for kamerakontroll og bildehenting som kunne generere konfigurasjon basert på kameraenes antall og type ble implementert. Denne modulen har også funksjoner for å starte, pause, og stoppe bildeinnhenting, samt justering kamera-instillinger. Spillspesifikke moduler analyserte bildene for endringer i spilltilstanden. Endringer blir kommunisert gjennom modulens endepunkter som interessenter kan bruke for å holde seg oppdatert.

Rust, Cargo, Python, Linux, Wireguard, Bash, Ansible og OpenCV


FFL
11.2021 - 11.2022

Football Fantasy League

Fantasy Football sjangeren er et stort og voksende marked. FFL som en ny og ambisiøs aktør, ønsker å ta en ledende posisjon. Det skal utvikles et engasjerende, morsomt og svært brukervennlig spill. Da muligheten for å være med på utviklingen av dette produktet dukket opp, var det to av Kodemakers mest fotballgale utviklere som øynet drømmeoppdraget, og André var en av disse.

Kodemaker er ansvarlig for utvikling av app, backend og integrasjon mot 3.parts leverandører av data. Vi er også ansvarlig for å etablere rutiner for CI/CD, devops og utvikling av nødvendige verktøy for administrasjon. Selvfølgelig forventes det av vi bidrar med domenekunnskap og kreative innspill/løsninger som bidrar til et best mulig produkt.

André har hovedsaklig jobbet med iOS appen, som over tid har gått fra å være en AppKit basert app til nå nesten hovedsaklig SwiftUI basert.

Swift, SwiftUI, UIKit, Composable Architecture og Firebase


Mercell
03.2021 - 11.2021

Utvikle salgsløsning for anbudsportal.

Utvikling av en salgsløsning i en anbudsportal. Mercell er en stor europeisk aktør innen anbudsformidling og har vokst mye gjennom oppkjøp. De lager en felles løsning for hele Mercell og trenger en salgsløsning på nett for å kunne betjene den voksende kundemassen og for å kunne nå ut til flere kunder. Tidligere har salg bare foregått over telefon og man ønsker med den nye løsningen å flytte salget over på nett.

Alle team i organisasjonen er autonome, noe som tillater oss å selv kunne bestemme hvordan vi ønsker å løse oppgavene våre. Vårt team valgte derfor å gå for å bruke funksjonell programering med Kotlin og Arrow. Videre så har vi noen utvalgte biblioteker for f.eks database aksess eller konfigurasjon, som er fokuserte og gjør en oppgave veldig bra, fremfor å velge et rammeverk som setter premissene for arkitektur og hvordan vi skriver koden. Dette er en kombinasjon som jeg har svært gode erfaringer med fra tidligere prosjekter, og som så langt har vist seg å være et riktig valg.

Rolle: Tech lead, utvikler og arkitekt

Kotlin, TypeScript, React, Kubernetes, Kafka, Terraform, Arrow, Funksjonell programmering og Amazon Web Services (AWS)


Nord - SJ Norge
02.2021 - 03.2021

Kommunikasjon mellom tog og landsiden for SJ

POC for kommunikasjon mellom tog og landsiden for Nord (SJ Norge) sine tog i Norge.

Rolle: Utvikler

Kotlin, IntelliJ IDEA, Microsoft Azure, Flyway, Arrow, Funksjonell programmering og PostgreSQL


Bring
11.2020 - 02.2021

Glow - system for budleveranser med sanntids pakkesporing.

Integrering av Innafor biblioteket utviklet tidligere inn i Glow Courier. For å kunne bruke dette biblioteket så må man autentistere og autorisere bruker i Azure AD B2C, så oppgaven innkluderte det å ta i bruk dette i løsingen.

Rolle: Utvikler

Swift, Kotlin, AppCode, Xcode, Android og Microsoft Azure


Posten
04.2020 - 11.2020

Posten Sporing - Postens forbruker-app

Videreutvikling og forvaltning av Postens Sporings app. Oppsett av Azure Pipelines for CI. Laget ett system som forenkler skriving av enhetstester av komponenter som gjør nettverkskall. Utviklet ett system som benyttes for at testdata brukt i UITester skal kunne kjøre uten at en test server er involvert.

Rolle: Utvikler

Swift, AppCode, Microsoft Azure og Xcode


Posten
04.2019 - 04.2020

Utvikling av et system for postleveranser innenfor dør

Utvikling av to forskjellige iOS apper, en for kunde, og en for sjåfør. Utvikler også et Swift Framework som kan gjenbruke funksjonalitet på tvers av andre apps i Posten som skal ha mulighet for integrasjon med forskjellige typer elektroniske låser.

Rolle: Utvikler, arkitekt

Swift, AppCode og Xcode


Bring
01.2018 - 04.2019

Glow - system for budleveranser med sanntids pakkesporing.

Utvikling av et system for budleveranser, alt fra mottak av ordre, ruteoptimalisering for sjåfører, sporing i sanntid, og integrasjoner med mange av Bring sine systemer. Utvikling av app (Glow Courier) for sjåfører for å støtte de i sin jobb med å plukke opp og leverer pakkene til mottaker.

Rolle: Utvikler, arkitekt

Kotlin, JavaScript, ES2015/ES6, React, React Native, Swift, Funksjonell programmering, Gradle, Microsoft Azure, PostgreSQL, Redis, Kubernetes, Trello, Arkitektur og Slack


Animalia
07.2017 - 01.2018

Utvikling og vurdereutvikling av systemer innenfor kjøtt- og egg-bransjen.

Helsefjørfe Oppgradering til Grails 3.1, samt videreutvikling av Helsefjørfe. Byttet ut Spring Security med Animalias SSO/OAuth2 løsning, som krevde at vi utviklet et nytt bibliotek for å håndtere dette. Dette biblioteket vil være basis for migrering av de andre Grailsbaserte løsningen som Animalia har.

Rolle: Utvikler, arkitekt

Grails, JavaScript, Docker, Clojure, Docker cloud, Oracle, Git og Arkitektur


Animalia
06.2017 - 07.2017

Videreutvikling av Helseservice

Videreutvikling av Helseservice. Implementasjon av nye krav og ønsker.

Rolle: Utvikler, arkitekt

Clojure, ClojureScript, Docker, Docker cloud, Oracle, Git, Micro services og Arkitektur


Fondet for Regionale Verneombud
05.2017 - 06.2017

Integrasjoner med ITX samt uttrekk av informasjon fra Sekretariatsystemet som skulle inn i Visma

RVO systemet Utfasing av Sekretariatsystemet etter at Fondet for Regionale Verneombud gikk over til ITX/Visma. Utfasingen av Sekretariatsystemet medførte endringer i RVO systemet, som hovedsaklig gikk ut på å utvikle integrasjoner med ITX samt uttrekk av informasjon fra Sekretariatsystemet som skulle inn i Visma.

Rolle: Utvikler, arkitekt

Ruby, Rails, JavaScript og MariaDB


Animalia
11.2016 - 05.2017

Utvikling av adminsystem for konfigurering av spørsmålsmaler i Helsegris

Utvikling av adminsystem for konfigurering av spørsmålsmaler i Helsegris. En av hovedfunksjonaliteten i det tidligere utviklede Helsegrissystemet baserer seg på et større antall spørsmål som veterinærer og produsenter må besvare. Disse spørsmålene ligger under kategorier og underkategorier, samt avdelingsvis for noen av spørsmålene. Basert på denne besvarelsene så kan man beregne forskjellige statuser som forteller om tilstanden for en produsents produksjonsmiljø. Disse statusene bruker man også for å avgjøre om en produsent skal motta forskjellige tillegg. Systemet for å beskrive en slik spørsmålsmal er komplekst. Man ville derfor gi administratorene av systemet et verktøy som hjelper de til å bygge opp og endre på malene. Oppgaven gikk ut på å implementere dette. Oppgavene som ble utført her var både på serversiden samt i klienten. Det ble også utført enn del refaktoreringer i forbindelse med dette arbeidet for å forenkle datamodellen systemet bygger på.

Rolle: Utvikler, arkitekt

Clojure, ClojureScript, Docker, Docker cloud, Oracle, Git, Micro services og Arkitektur


Animalia
05.2016 - 11.2016

Helseservice

Helseservice. Innføring av Helseinformasjon som er synkronisert med Dyrehelseportalen, DHP til Sau- og Storfekontrollen Sau- og Strofekontrollen (Kontrollene) er to forholdvis like applikasjoner skrevet i Groovy og Grails, samt JavaScript og JQuery. Når man fant ut at man trengte en utvidelse med diagnoser og medisiner hentet fra Dyrehelseportalen, så fant man fort ut at utvidelsene var betydelige. For å unngå å duplisere funksjonaliteten i de to systemene, så bestemte man seg for å trekke ut serverfunksjonaliteten som i hovedsak var kommunikasjon med DHP, samt tilby et fornuftig API som de to systemene kunne benytte. I tillegg så ville man også unngå duplisering av GUI kode. For å få til dette så laget man et eget subsystem i ClojureScript som man integrerte inn i Kontrollene, som kommuniserer med det nye Helse APIet. På denne måten så vil man kunne gjenbruke dette i andre systemer som f.eks Helsegris.

Rolle: Utvikler, arkitekt

Clojure, ClojureScript, Docker, Docker cloud, Groovy, Grails, Oracle, Gradle, Git, Micro services og Arkitektur


Animalia
02.2016 - 05.2016

Videreutvikling av Sauekontrollen

Videreutvikling av Sauekontrollen samt produsentregisteret Det gjøres kontinuerlig videreutvikling og oppgraderinger av eksisterende applikasjoner i Animalias produktportefølje. I denne perioden var det diverse utvidelse av Sauekontrollen, samt utvidelser av Produsentregisteret

Rolle: Utvikler

Clojure, Docker, Tutum, Elasticsearch, Groovy, Grails, Oracle, Gradle og Git


Animalia
09.2015 - 02.2016

Videreutvikling av Helsefjørfe

Videreutvikling av Helsefjørfe. Oppdaterer Helsefjørfe med nye tjenester samt oppdatering av frontend. Migrerer over til Docker og Tutum, samt innføring av en ny tjenester for håndtering av produsenter. Denne tjenesten vil bli benyttet av de flere andre delsystemene i Animalia.

Rolle: Utvikler

Clojure, JavaScript, Docker, Tutum, Elasticsearch, Groovy, Grails, Oracle, Gradle og Git


Animalia
11.2014 - 09.2015

Utvikling av et nytt system innen kjøttproduksjonsbransjen

Utvikling av et nytt system innen kjøttproduksjonsbransjen. “Helsegris” Utvikling og vurdereutvikling av systemer innenfor kjøttproduksjonsbransjen. De første oppgavene gikk ut på å oppgradere og utvide eksisterende systemer skrevet i Groovy og Grails. Når et nytt system skulle utvikles så ble det gjort en vurdering av teknologi plattform. Flere alternativer ble vurdert, men man bestemte seg til slutt for å satse på Clojure og Clojurescript. Systemet baserer seg på en Microservices arkitektur, med REST grensesnitt for kommunikasjon mellom de forskjellige tjenestene. En Microservice arkitektur gir som kjent en del selvstendige tjenester. Disse skal kunne raskt og enkelt deployeres i forskjellige miljøer. Her bestemte vi oss for å se på Docker,noe som har vist seg til å passe oss bra. Jeg har jobbet med å finne ut av hvordan sette opp dette og automatisere tjenestene rundt dette. Rolle: Utvikler

Clojure, ClojureScript, Docker, Tutum, Leiningen, Oracle, Jenkins, Git, Micro services og Arkitektur


Animalia
08.2014 - 11.2014

Oppgradering og videreutvikling av KTerm og Helse Fjørfe

Oppgradering og videreutvikling av KTerm og Helse Fjørfe. Oppgradering og videreutvikling av to eksisterende systemer skrevet i Groovy og Grails. Rolle: Utvikler

Groovy, Grails, JavaScript, Oracle, Gradle, Jenkins og Git


Fondet for Regionale Verneombud
01.2014 - 07.2014

Oppgradering og videreutvikling

Oppgradering og videreutvikling av eksisterende løsninger. Oppgradering og ny funksjonalitet i løsningene. Rolle: Utvikler

Ruby, Rails, nginx, Phusion Passenger, Prawn, MySQL, Coffeescript, JavaScript, jQuery, CSS, RSpec, Capistrano, Linux, REST og RubyMine


Broadnet
06.2013 - 01.2014

Videreutvikling av portal for salg av fiber, ADSL/SHDSL, IPVPN og andre bredbåndtjenester hovesaklig for bedriftsmarkedet

Utvikling av salgsportal. Målet for prosjektet er å lage en moderne salgsportal for salg av bredbånd og relaterte produkter på web. Salgsportalen inkluderer en produktkatalog med funksjoner for vedlikehold av denne. Portalen skal integreres med andre fagsystemer for ordrehåndtering med mer, samt eksterne tjenester for SMS og kreditsjekk. Rolle: Senior Java utvikler

Java, Wicket, JavaScript, Java EE, JPA, Hibernate, Neo4j, MongoDB, Lucene, REST, Jakarta RESTful Web Services, JBoss, PostgreSQL, Oracle, Maven, Jenkins, Git og JUnit


FINN.no
10.2012 - 06.2013

Utvikling av en ny iPhone og iPad app

Utvikling av en ny iPad- og iPhone-app. Utvikling av en ny iPad og iPhone app, paralellt med utvikling av en tilsvarende app for Android. Oppgavene består hovedsakling av implementering av selve iOS appen, samt utvikling av arkitekturen som tillater at fellesfunksjonalitet trekkes ut i en “intermediary”, som ligger mellom appene og server API. André gikk i bresjen for at man skal drive testdrevet utvikling i dette prosjektet, noe som så langt av en eller annen grunn ikke er så vanlig på iOS. Det har fungert veldig bra, og har gitt en betydelig forbedring av kodekvalitet og arkitektur i applikasjonen. Rolle: Utvikler og mentor.

iOS, Cocoa, AppCode, Xcode, Objective-C, Cocoapods, Jenkins, Ruby, Bamboo og Arkitektur


FINN.no
11.2011 - 10.2012

Utvikling av FINN sin iPad søkeapp

Utvikling av FINN sin iPad søkeappUtvikling og design av en iPad applikasjon som gir en mer behaglig, rikere, raskere og “native” måte å bruke FINN på iPad. De aller fleste av markedene i FINN.no er integrert i denne applikasjonen, og siden hvert marked har “sitt” API, så ble mye arbeid lagt ned i å enkelt kunne dra inn nye markeder i appen, uten å ty til skreddersøm i hvert enkelt tilfelle. André hadde hovedansvaret for å integrere myVR sitt kart-API inn i applikasjonen. Dette tillater FINN.no å bruke sine egne kart, samt 3D kart av høy kvalitet. myVR sitt API er et generisk API skrevet i C++/Objective-C++ som kommuniserer vha JSON meldinger. For å få et API som er mer likt Cocoa sine designprinsipper, så ble det utviklet et lag over myVR som gir dette. André har i tillegg utviklet en del komponenter som f.eks et eget GridView, “SlideInOut skuff”, samt “Paging” som blir brukt flere steder i appen, og det derfor ansett som riktig og lage komponenter av disse. Innførte Jenkins (senere) og satte opp automatisk bygg av alle prosjekter og moduler, samt testdekningsrapporter og statisk kodeanalyserapporter. Innførte Cocoapods for håndtering av avhengigheter til 3parts komponenter og biblioteker. Jobber nå med å forbedre og utvide den eksisterende applikasjonen, samt klargjøre og planlegge for de neste iOS applikasjonene som skal utvikles. Rolle: Utvikler og mentor.

iOS, Cocoa, AppCode, Xcode, Objective-C, Objective C++ og Arkitektur


Fondet for Regionale Verneombud
09.2011 - 01.2012

Utvikling av saksbehandlingsløsning med Ruby on Rails

Utvikling av saksbehandlingsløsning med Ruby on RailsDesign og implementering av ny applikasjon for registrering av RVO’enes besøk på arbeidsplasser og oppfølging av evt. mangler relatert til HMS med mer. Systemet ble integrert med et annet RVO-system (SekretariatSystemet) via asynkron meldingskø og REST tjenester. I tillegg var det en webtjeneste-integrasjon med BRREG. Teamet bestod av 3 utviklere fra Kodemaker, 1 interaksjonsdesigner fra IXD og RVO sin prosjektleder. Metodikken som ble fulgt var en pragmatisk variant av Kanban med web-baserte prosjektoppfølgingsverktøy (AgileZen, BaseCamp med mer).

Rolle: Utvikler og teamleder.

Ruby, Rails, nginx, Phusion Passenger, Prawn, MySQL, Coffeescript, JavaScript, jQuery, CSS, RSpec, Capistrano, Linux, Mongo queue, REST og RubyMine


Politiets Data og Materielltjeneste, PDMT
02.2011 - 09.2011

Utvikling av system for maritim grensekontroll, SafeSeaNet

Utvikling av system for maritim grensekontroll, SafeSeaNet. Integrasjon mot flere interne og eksterne systemer, vha både JMS og WebServices. Brukergrensesnitt implementert med JSF.

Rolle: Utvikler

Java, Groovy, Oracle, Oracle Application Server, H2 database, Webservices, JMS, Maven, IntelliJ IDEA, JSF, JIRA, Jenkins og CQRS


Fondet for regionale verneombud.
08.2010 - 12.2010

Utvikling av nytt system for oppfølging av betalinger og medlemmer

Utvikling av nytt system for oppfølging av betalinger og potensielle medlemmer Hovedoppgaven til dette systemet er å sende ut en årlig faktura til alle bedrifter innen bygge- og anleggsbransjen og følge opp betaling ved å sjekke mot bank. Purring og betalingsoppfordring sendes via Lindorff, samt at man integrerer mot Brønnøysund, samt et annet tredjeparts-system.

Rolle: Utvikler og teknisk prosjektleder.

Ruby, Rails, HTML, CSS, MySQL, Ubuntu, Windows, Phusion Passenger, nginx, Cucumber, RSpec, Thinking Sphinx, RubyMine, Capistrano og Rake


Telenor Mobil
06.2009 - 07.2010

Automatisering av Fri Famile verdikjede

Automatisering av Fri Familie verdikjede. I dette arbeidet så innføres nytt ordre API mot Cos som er Telenor Mobils mellomvaresystem.

Java, WebLogic, Drools, MKS, Maven, Bamboo, Sybase, Easymock, JUnit, IntelliJ IDEA, Dbunit og AspectJ


Telenor Mobil
11.2008 - 06.2009

Cos Restrukturering

Cos Restrukturering. Dette prosjektet innførte JBoss Rules/Drools til Cos. Et større arbeid med å splitte store kodebaser inn i mindre, mer uavhengige og lettere vedlikeholdbare moduler. Det ble også innført et nytt og forbedret system og regressjonstestrammeverk, samt Bamboo CI byggesystem.

Java, WebLogic, Drools, MKS, Maven, Bamboo, Sybase, Easymock, JUnit, IntelliJ IDEA, Dbunit, AspectJ og Arkitektur


Nordic Lottery Systems
08.2007 - 11.2008

OTTO. Et Lotterisystem på nettet

OTTO. Et Lotterisystem på nettet. André kom inn i dette prosjektet noe sent som arkitekt, hvor oppgavene bestod i stor grad i å rydde opp i en del premature teknologivalg, samt fokusere på ytelse av systemet. I forbindelse med ytelsesforbedringer så ble det satt opp et sett av typiske scenarier som ble utført ved å kjøre et sett JMeter tester i paralell. For å få kjørt et noenlunde realistisk (antatt) antall klienter så ble det satt opp et konfigurerbart antall Amazon EC2 serverinstanser som hver av disse kjørte opptil 1000 samtidige klienter.

Java, JBoss, Spring, Oracle, AWS EC2, Jmeter, JDBC, JUnit, Dbunit, Cruisecontrol, Easymock, Webservices, UML, IntelliJ IDEA og Arkitektur


Telenor Mobil
01.2007 - 08.2007

Utvikling av Single-Sign-On (SSO) for Telenor Mobils mellomvaresystem Cos

Win prosjektet - Innføring av SSO mellom Cos og Metro Utvikling av tjenester på Telenor Mobils mellomvare plattform COS, med fokus på Single-Sign-On (SSO) og andre sikkerhetsrelaterte oppgaver. Single-Sign-On løsningen skulle tillate for sømløst kunne foreta kall til Mobils mellomvare plattform Cos, og fast nett via en Service bus fra BEA.

Java, Java EE, WebLogic, Spring, Sybase, JDBC, JUnit, Dbunit, CruiseControl, Easymock, AspectJ, Webservices, UML, IntelliJ IDEA og Arkitektur


Bankenes Betalingssentral, BBS
09.2005 - 01.2007

Implementering av chipkort/smartkort i betalingsterminaler

Win prosjektet - Innføring av SSO mellom Cos og Metro Design og utvikling av EMV støtte (Chip/smart kort) i Javabaserte BankSys betalingsterminaler. På grunn av det noe spesialiserte domenet, så fantes ikke alle rammeverk og biblioteker man trengte, slik at en del av oppgaven gikk ut på å utvikle disse. Utførte også en mindre integrasjonsjobb mellom Telenor/Netcom Elektroniske Ladekoder og BAXBIS (BankAxept).

Java, Java SE, Java ME, Apache axis, Sybase, Ruby, Git og Arkitektur


Arbeidsgiver

Telenor Mobil


Telenor Mobil
2002

Forvaltning og nyutvikling av Cos

Utvikling og vedlikehold av COS, Telenor Mobils mellomvare system. Arkitekturarbeid, design og implementering av ny arkitektur. Teamleder, funksjonell arkitekt for «nettnære systemer» etc. Deltok i flere intern prosjekter som arkitekt og utvikler.

Java, Java EE, WebLogic, Spring, Corba, Sybase, JDBC, Oracle, JUnit, Dbunit, Cruisecontrol, Mockobjects, AspectJ, Servlets, Webservices, UML, IntelliJ IDEA og Arkitektur


Arbeidsgiver

Objectware AS

Var kontinuerlig i oppdrag i hele perioden mens André var ansatt her, og de siste to årene var han teamleder for en gruppe utviklere på Java plattformen, som hovedsaklig fokuserte på server siden


Arrive, Nordea, Europay Norway
2002

Rådgivning og estimering av tekniske løsninger i forbindelse med anbud

Rådgiver vedrørende anbud til NSB inkl. analysearbeid, vurdering/estimering av tekniske løsninger. Proof of concept for bruk av webservices i Objectware og Nordeas egenutviklede J2EE baserte rammeverk JEFF/Coffee. Design og utvikling av en online saldooversikt for EuroCard-kunder

Java, Java EE, Websphere, Visual age, Sybase og Arkitektur


Gjensidige NOR
2002

Utvikling av delsystem for saksbehandlersystemet KLE

Utvikling av delsystem for saksbehandlersystemet KLE. (Java Swing klient).

Java, Java EE, Swing, Borland JBuilder og JUnit


Bankenes Betalingssentral, BBS
2001

eFaktura

eFaktura – Integrasjon av eFakturafunksjonalitet til iBank (K-Nettbank).

Java, Borland JBuilder, Webmacro, Tandem, Subversion og Arkitektur


Bankenes Betalingssentral, BBS
2000

Porting og videreutvikling

Porting og videreutvikling av Kredittkassens Internettbank fra en C basert CGI løsning til Java på Tandem. Utviklet bl.a et MVC rammeverk på toppen av Servlet API’et, samt en screenscraping løsning pga at tilsvarende løsningen ikke eksisterte eller ikke var modne til bruk i produksjon.

Java, Borland JBuilder, Webmacro, Tandem, Mvs, Awt, Swing, Cobol, CVS og Arkitektur


Bankenes Betalingssentral, BBS
1999

Extranet

Extranet, en kanal for informasjonsformidling mellom banker og Bankenes Betalingssentral. Utviklet bl.a et MVC rammeverk på toppen av Servlet API’et, samt en screenscraping løsning pga at tilsvarende løsningen ikke eksisterte eller ikke var modne til bruk i produksjon.

Java, Borland JBuilder, Webmacro, Tandem, Mvs, Screenscraping, Awt, Swing, Servlets, CVS og Arkitektur


Bankenes Betalingssentral, BBS
1998

Kompetansebase

Kompetansebase – Design og utvikling av en kompetansebase for internt bruk i BBS.

Java, Borland JBuilder, Webmacro, Tandem, Mvs, Screenscraping, Awt, Swing, Servlets, CVS og Arkitektur


Arbeidsgiver

Quick Software Development AS

Hovedsaklig utvikling av diverse Klient/Server, Desktop og Webapplikasjoner. Noe arbeid ble også utført i forbindelse med videreutvikling av QuickReport, et rapportdesign verktøy utviklet av QSD og lisensiert og bundlet med Delphi.


Norges Bank
1998

Utvikling av et system for håndtering av Nattsafer

Videreutvikling av et administrasjonssystem for opptelling og kontroll av nattsafer.

Borland Delphi, Sybase og CVS


VingCard
1997

Persona

Design og utvikling av «Persona», et administrasjonssystem for utstedelse og vedlikehold av magnetkort for kortbaserte låssystemer

Borland Delphi, Interbase og Arkitektur


IT-Medicine
1996

An Encyclopedia of Oral Mucosal Lesions

Utvikling av «An Encyclopedia of Oral Mucosal Lesions», Et CD-ROM basert leksikon for tannleger.

Borland Delphi, Paradox og Arkitektur


Kommuneforlaget
1996

Internettbokhandel

En CGI basert internettbokhandel

Borland Delphi og Interbase


Arbeidsgiver

Systemservice AS

Etter en kort tid som brukerstøtte og drift av Novell nettverk, så kom André inn i Bærum Kommunes utviklingsavdeling der vi utviklet diverse systemer for kommunen.


Bærum Kommune
1996

Økonomisystem, Helse og Sosial system

Publikumsstøttesystem for helse og sosialavdelingen. Proof-of-concept for en Delphibasert løsning. Fikk innført Delphi som det prefererte utviklingsverktøy i kommunen.

Borland Delphi, Sybase, Erwin, Windows og SourceSafe


Bærum Kommune
1995

Design og utvikling og design av kommunens økonomi, lønn og personalsystem.

C++, Visual Basic, Sybase, Erwin, Windows nt og SourceSafe


Bærum Kommune
1994

Brukerstøtte og drift av Novell nettverk i kommunen.

Windows og Novell netware


Anbefalinger


Bjørn Nessjøen

CTO, The Social Gaming Group

«André Bonkowski har vært en nøkkelspiller i å håndtere tekniske utfordringer hos The Social Gaming Group (TSGG). TSGG utvikler spill som legger et digitalt lag på toppen av populære utelivsspill som darts og shuffleboard. Disse on-prem spillmaskinene kjører på restauranter distribuert over hele verden, fra Houston i vest til Melbourne i øst. Disse serverne, som da ofte kjører i relativt utfordrende miljøer og er koblet til tidvise ustabile nettverk, krever robust monitorering og vedlikehold. André har vært sentral i å forenkle og automatisere installasjons- og oppdateringsprosessen av disse serverne, hovedsakelig ved hjelp av Ansible. Han har også bidratt med å "dockerifisere" våre sentrale tjenester, noe som forenkler vedlikehold av disse på TSGGs skyservere.

Videre har André arbeidet tett med vår computer vision-ingeniør for å forbedre robustheten i våre eksisterende vision-applikasjoner skrevet i Python. Han har også påbegynt omskrivingen til en samlet vision-applikasjon i programmeringsspråket Rust. Utover sine tekniske ferdigheter, spiller André en viktig rolle i teamdynamikken. Han har vært essensiell i å bygge opp et relativt ungt team, bidrar aktivt til en positiv teamfølelse og skaper en god atmosfære på kontoret. Hans sosiale natur og evne til å bli likt av alle gjør ham til en verdifull medarbeider.

Andrés allsidighet er bemerkelsesverdig. Han er aldri redd for å ta fatt på nye og viktige problemer, og viser en sjelden evne til å tilpasse seg og finne løsninger på tvers av ulike teknologiske og sosiale aspekter i arbeidet.»


Daniel Haukaas

Produkteier, Fantasy Football League

«Det var både gøy og lærerikt å jobbe med André under utviklingen av Fantasy Football League. André er ikke redd for å utfordre ideer og tenker gjerne gjennom ting flere ganger for å få det gjort riktig med én gang, noe jeg syntes var veldig verdifullt. Jeg vil absolutt anbefale André videre.»


Torkel Randem

Økonomi- og utviklingssjef, Animalia.no

«André er en meget dyktig utvikler og en jovial person som jeg hadde gleden av å samarbeide med i Animalia. Han bidro sterkt i arbeidet med å søke etter og implementere ny teknologi i videre-/nyutviklingen av Animalia sine husdyrkontroller og fagsystemer.»


Arnstein Teigene

Produkteier, FINN Apps

«André er en hardtarbeidende og sosial person som har betraktelig løftet kvaliteten på produktet vårt. Han er enkel å ha med å gjøre og har gjort hverdagen til gruppen han jobbet i fargerik og gøy. Jeg kan varmt anbefale han som en faglig sterk person, men også som en som holder arbeidsmoral og humør oppe.»


Petter Marthiniussen

Section Manager, Telenor

«André har ved flere anledninger jobbet som utvikler på vår mellomvareløsning i mobil verdikjede. Løsningen er kompleks med stort endringstempo. André er gjennomgående en dyktig utvikler som gjerne tar ansvar utover eget arbeidsområde. Han er sosial, og en hyggelig kollega. Jeg vil gjerne benytte meg av hans tjenester dersom muligheten dukker opp igjen.»


Knut Stenmark, Objectware AS

«André has good communication skills, is very thorough and detailed in what he is doing. Yet, he has the ability to view the holistic picture of what he's working on.I am sorry to say that we are no longer working together. Our friendship will last forever.»


Norman Katz

Team Manager, Nordic Lottery Systems

«In all of his work André strove to come up with simple and eligent solutions to tasks that less experienced developers would have viewed as complex. When from time to time the project had tasks that were in trouble, André was the person I could always rely on to get them back on track. I would recommend André without any reservation.»


Dag Kjølstad, Strukturum

«I worked with André on the Otto project. His responsibilities was architecture and development while I handled the database side. I was impressed by his quick thinking, yet thoroughness when handling complex challenges. Tuning an application is not always easy, but we certainly made some great advances thanks to his efforts. André comes with my full recommendation and I'd really like to work with him again.»


Dag Koding, Telenor

«André is serious about his work and always delivers products he can defend professionally and be proud of. Don't try to sneak quick hacks past this guy. He is an accomplished architect and developer and is not afraid to say what he thinks. Recommended without hesitation.»


Roar Skullestad, Objectware AS

«I worked with André on different IT-projects for a clearinghouse in 1999-2001. I got to know him as solution oriented and effective in his work, at the same time building software of high quality. He is always striving to learn. He is positive, thoughtful and creates a good atmosphere around him. It was a true joy to work with André, both because of his professional and personal qualities. I full-heartedly recommend him as an employee and consultant»


Per Spilling, Objectware AS

«André is an experienced and dedicated professional developer who takes pride in delivering high quality work with high value for money for the customer.»


Sertifiseringer og kurs


2011

  • Profesjonelt styrearbeid

2010

  • Retorikk

2005

  • Certified ScrumMaster, London/QCon

2000

  • Sun Certified Programmer for Java 2 platform

1995

  • Certified Delphi Programmer

Utdanning


1992-1994

NHI Datahøyskolen

NHI DH-Kandidat


1991-1992

Næringsakademiet

IT-Prosjektstudiet


1985-1986

Stranda Videregående skole

Grunnkurs elektro


1983-1984

Giske Videregående skole

Grunnkurs Maskin og Mekaniker


Andre faglige bidrag


Artikkel: Rust makroer

Jeg antar at du har hørt skrekkhistorier om makroer? De påstås å være kryptiske, vanskelige å forstå og de er lett å misbruke.

Jeg tenkte jeg skulle vise et eksempel på en makro jeg har skrevet og brukt i ett prosjekt for å se hvordan en makro kan se ut i Rust. Etterpå kan vi revurdere om denne påstanden holder vann.

Artikkel: Rust Lifetimes

Du har endelig kommet i gang med Rust, og du har fått tak på hvordan Borrow Checker fungerer. Nå kan du virkelig sette i gang å kode! Men hva er det som møter deg? En ny kompilatorfeil som sier:

'x' does not live long enough

Det du nå har stiftet bekjentskap med er Rust Lifetimes, så da passer det fint at det er nettopp det vi skal se nærmere på i denne bloggposten.

Artikkel: Hvordan håndterer man minne i Rust

Rust er det mest populære programmeringsspråket i følge Stack Overflow, men hva er det som er så spesielt med det? Det som først fikk min oppmerksomhet var hvordan man håndterer minne.

Artikkel: Typesikker konfigurasjon

Hvordan håndterer du konfigurasjon i prosjektet ditt? Er alle verdier satt? Er verdiene av riktig type? Hadde det ikke vært fint å vite at alt dette er oppfylt og håndtert for deg?

Artikkel: UI-tester og stubbing av nettverkskall på Apples plattformer

UI-testing har fått dårlig omtale. Testene kritiseres for å være trege, de tar lang tid å skrive, de er ofte ikke spesielt lesbare, brukergrensesnittet endrer seg kontinuerlig og sist, men ikke minst så er inkonsistente testdata og mangel på kontroll over responsen fra server en stor utfordring.

Det siste punktet mener jeg er den største utfordringen, men jeg mener å ha funnet en veldig bra løsning på dette. Les videre, så skal du få se hvordan.

Artikkel: Brukergrensesnitt i kode på Apples plattformer

Hvorfor jeg foretrekker å utvikle iOS- og macOS-brukergrensesnitt i kode fremfor å bruke Interface Builder

Artikkel: Enklere backender med færre rammeverk - og Swift?

Er Swift klar for serverside, og hva finnes av biblioteker og rammeverk?

Artikkel: Refactoring in AppCode

De fleste Java utviklere kjenner til IntelliJ IDEA, som etter min og mange andres mening er den beste IDE’en for Java. Etter å ha utviklet for iOS en god stund så finner man fort ut at Apples Xcode ikke er på høyde. Gleden var stor da JetBrains laserte AppCode. Her en artikkel som beskriver litt hvordan rafactoring støtten er i AppCode

Artikkel: Navigation in AppCode

I “serien” om bruk av AppCode så omhandler denne artikkelen om navigering i IDE’en