Tervetuloa tutustumaan portfoliooni. Mikäli tarvitsette ohjelmoinnin ammattilaista, joka keskittyy työtehtäviinsä antaumuksella ja suorituu hommista aikataulujen puitteissa, niin minut tavoittaa parhaiten puhelimitse tai sähköpostitse niin englanninksi kuin suomeksi.

Portfolio,
kesäkuu 2011

Henri Haapakanni
Lapinkaari 8 A 13
33180 TAMPERE
(GSM) 050 383 0450
henri [ät] haapakanni piste com
25.02.1985

Nykyinen työantajani on ToP Tunniste Oy

"ToP Tunniste Oy on vuonna 2002 perustettu RFId- ja NFC-ratkaisujen järjestelmätoimittaja (Radio Frequency Identification, Near Field Communication), jolla on yli vuosikymmenen kokemus automaattisesta tunnistamisesta ja tiedonkeruusta", http://www.toptunniste.fi. RFId:n osalta osaamiseni on keskittynyt NFC-tunnistamiseen.

PHP-, MySQL-, JavaScript-, CSS-, Flash-, XML- ja (x)HTML-osaaminen

Olen ollut vakituisessa työsuhteessa ToP Tunniste Oy:ssä vuodesta 2008 lähtien ja päivittäiset työtehtäväni ovat usein PHP:lla suoritettavia. PHP-ohjelmistoja suunnitellessani ja toteuttaessani käytän lähestulkoon poikkeuksetta MySQL-kantoja tiedonvarastointiin. Suunnittelussa ja dokumentoinnissa olen tottunut aloittamaan työskentelyn toiminnallisen määrittelyn jälkeen ER-kaavioilla ja vastaavasti raa'an työn lomassa kommentoin koodia lähes poikkeuksetta Javadoc tyylisesti. Erityisesti Smarty template engine on suosimani framework, jolla olen tottunut eriyttämään business-logiikan HTML/CSS/JavaScript -käyttöliittymäkoodista. MySQL-kantojen käpristelyyn olen käyttänyt erityisesti PDO:ta ja Propelia perinteisten PHP mysql-kirjaston lisäksi, joten myös olio-ohjelmointi PHP:llä on tuttua.

Olen perehtynyt PHP:llä toteutetuista suuremmista järjestelmistä mm. phpMyAdminiin, phpBB:hen, Joomlaan, Typo3:een, Clover Shop:iin ja OS Commerceen (omaa käsialaa olevien järjestelmien lisäksi). Olen kartuttanut nykyisen työsuhteeni lisäksi www-ohjelmointikokemusta muista työsuhteista ja opintojen myötä. Ohessa muutama esimerkki Internetsivuista ja -portaaleista, joita olen työstänyt nykyisen toimenkuvani ulkopuolella vuoden 2005 jälkeen ja luonnollisesti haapakanni.comin alta löytyvät sivustot ja foorumi ovat omaa käsialaani.

Vuosikymmenen PHP-ohjelmointikokemuksen myötä olen oppinut välttämään suurimmat sudenkuopat eikä laajojenkaan järjestelmien hahmottaminen ja hallitseminen ole minulle ongelma. Palvelinpuolen käyttöjärjestelmistä sekä Linux että Windows ovat tulleet tutuiksi, sillä olen ajanut Apache httpd ja MySQL servereitä mitä erilaisimpien käyttöjärjestelmien päällä eikä niiden konfigurointi ole ongelma. PHP:n olen kääntänyt nykyisissä työtehtävissä myös sulautettuun järjestelmään: uLinuxin busyboxin httpd serverin kanssa ajettavaksi.

Java ja J2ME

Käytännössä toinen puoli työtehtävistäni kattaa parhaillaankin mitä erilaisimpia mobiiliohjelmoinnin projekteja, joista useimmat valmistuvat rivakasta J2ME:llä. Erityisesti mobiili Javan NFC-kirjastot (JSR-257 ja laitevalmistajien laajennukset tähän) ovat tuttua kauraa Mobile Information Device Profile 2.0 (JSR-118) ohella. Ohjelmoimani mobiilisovellukset ovat kuitenkin vain mukana kulkeva front-end pääosin yrityskäyttöön suunnatuista järjestelmistä, joiden taustaohjelmistoissa olen tottunut hyödyntämään esimerkiksi Web Servicejä ja Servlettejä Axisin ja Tomcatin päällä. Vastaavasti tietokannoista kokemusta on kertynyt MySQL:stä sekä pienemmissä, lokaaleissa tiedontaltioinnissa hyödynnettävästä SQLite:stä.

TAMK:ssakin Javaa on tullut kulutettua neljän kurssin verran, joten myös Swing-käyttöliittymät ovat hanskassa.

Alla olevista linkeistä ensimmäisestä pääsee pelaamaan perinteistä ristinollaa Java-appletin muodossa. Alempi linkeistä sisältää Symbian C++ - projektin aluksi J2ME:llä ohjelmoimani MIDlet demo STB:stä (demoa on testattu mm. N95:llä ja HTC S710 luureilla). Tuoreempia koodiesimerkkejä voi kysellä esimerkiksi sähköpostitse ja eiköhän pienimuotoinen softan tekokin onnistu lyhyellä speksauksella näytteenä kokemuksesta.

Android

Kevään aikana myös Android on käynyt tutuksi mobiilialustaksi. Alustan arkkitehtuuri on mielestäni varsin onnistunut, ja Java-syntaksi tuttuine kirjastoineen oli nopeasti omaksuttavissa. Erityisesti kolmansien osapuolten aktiviteettien ja palveluiden hyödyntäminen viestinvälitysmekanismilla on loistava, joskin haavoittuva, mutta sopii hyvin viitoittamaan ohjelmoistoarkkitehtuurien kehitystä kohti tulevaisuutta - on järjetöntä keksiä pyörää uudelleen, jos tehtävään löytyy jo valmis toteutus.

(Visual) C++, Symbian C++ ja Qt

Ohjelmistotekniikan opetus pohjautui Tampereen ammattikorkeakoulussa C++:aan, joten TAMK:sta 2009 valmistuneena ohjelmistotekniikan insinöörinä hallitsen olio-ohjelmoinnin C++:lla.

Symbian C++ ohjelmointiin perehdyin etenkin viimeisen kahden lukukauden ajan TAMK:ssa ja kolmen hengen ryhmässä suunnittelimme ja ohjelmoimme Symbian Tower Battles - mobiilipelin (STB). Alla olevasta linkistä voi tutustua tarkemmin Symbian C++ projektiimme.

Qt-alustaa opiskelin jo TAMK:ssa ja kyseisestä ohjelmointialustaa olen niin sanotusti puukottanut myös nykyisten työtehtävien lomassa. Töiden puolesta olen osallistunut useaan Qt/Symbian/Meego -koulutukseen ja -tapahtumaan, joista tuoreimpana huhtikuussa 2011 Tampereella järjestettyyn Meego Summit tapahtumaan, http://summit.meegonetwork.fi/.

Tampereen ammattikorkeakoulun kasvatti vuosimallia 2009

Ohessa tutkintotodistukset, joiden tarkastelua varten voi tiedustella tunnuksia allekirjoittaneelta puhelimitse.

Portfolio päivitetty viimeksi 09.06.2011 21:09:00

Henri Haapakanni © 2011