services

Ohjelmistokehitys

Olen käyttänyt useita ohjelmointikieliä ja kehitysympäristöjä, ja pystyn niiden avulla tekemään ohjelmistokehitystä niin työpöytä/palvelin, web kuin mobiili/sulautetuilla alustoilla. Olen myös kiinnostunut syventämään iOS ja Android osaamistani.

Työpöytä- ja palvelinympäristö

Tutuin ympäristö minulle on Linux. Olen tehnyt myös alustariippumatonta ohjelmistokehitystä Windowsilla ja MacOS:llä käyttäen Qt ohjelmointiympäristöä. Olen työskennellyt useiden Python projektien parissa ja olen myös käyttänyt jonkin verran Javaa. C++ tietämykseni perustuu pääosin Qt kokemukseeni. Ymmärrän myös C:tä ja Assemblyä, joita olen käyttänyt opinnoissani ja muutamissa pienissä projekteissa. Olen kokenut tekemään shell scriptejä Linuxilla kaikenlaisiin käyttötarkoituksiin. Olen myös luonut ja muokannut RPM sekä DEB -paketteja.

Web

Verkkoselainpuolella osaan HTML:ää, CSS:ää ja JavaScriptiä. JavaScript-kehityksessä olen myös käyttänyt Bootstrap ja jQuery -kirjastoja. Palvelinpuolella olen kehittänyt dynaamisia verkkosivuja PHP:llä ja Python Django ohjelmointiympäristöllä. Staattisten verkkosivujen tekemiseen olen käyttänyt Hugo sivugeneraattoria.

Tiedän relaatiotietokantojen toimintaperiaatteet ja niiden käyttökohteet. Olen käyttänyt ja konfiguroinut suosituimpia avoimen lähdekoodin relaatiotietokantoja kuten MySQL, MariaDB, PostgreSQL ja SQLite. Tunnen eri NoSQL teknologiat ja niiden käyttökohteet sekä skaalautuvuuden. Olen konfiguroinut ja käyttänyt Memcached:tä, Redisiä, MongoDB:tä ja Elasticsearchia. Olen myös käyttänyt MySQL:ää, SQLiteä ja Elasticsearchia ohjelmistokehityksessä.

Olen käyttänyt Nextcloudia ja aiemmin OwnCloudia yli kymmenen vuotta. Tunnen sen konfiguroinnin, appit ja ohjelmakoodin. Olen myös tehnyt jonkin verran ohjelmistokehitystä liittyen sekä sen appeihin että ytimeen. Mikäli olet kiinnostunut käyttämään sitä projektissasi, niin ota ihmeessä yhteyttä minuun.

Mobiililaitteet ja sulautetut järjestelmät

Olen työskennellyt Sailfish OS:n parissa vuosia ja olen kehittänyt sille sekä appeja että muuta ohjelmistoa. Tiedän sen sisäisen toteutuksen läpikotaisin ja opin sitä kautta myös paljon yleisesti mobiililaitteista ja niiden ominaisuuksista. Pystyn käyttämään tuota tietotaitoa myös muiden Linux-pohjaisten sulautettujen laitteiden kanssa, jotka käyttävät Qt ohjelmointiympäristöä käyttäjäkokemuksen luomiseen.