Julius Väistö

Toiveikas Optimisti

Hei, Olen Julius

Optimistinen sovelluskehittäjä, joka vain nauttii tästä aivan liikaa. Uskon lujasti haastehakuiseen elämään. Minulle on tärkeää nähdä jokainen päivä mahdollisuutena oppia uutta ja tuoda tämä esille.


Sovelluskehitys ei ole pelkästään ammattini, vaan se on intohimoni, joka alkoi ihan pienenä. Tämä intohimo motivoi minua etsimään jatkuvasti uusia haasteita ja mahdollisuuksia oppia. Arvostan siistiä ja tehokasta koodia, ja pyrin aina parhaimpaan mahdolliseen laatuun. Uskon, että hyvä koodi on ymmärrettävää, laajennettavaa, ylläpidettävää ja kaiken tämän lisäksi säästää aikaa. Tavoitteeni on vaikuttaa positiivisesti ihmisten elämään luomalla innovatiivisia ratkaisuja ja sovelluksia. Haluan jatkuvasti kasvaa ammatillisesti ja oppia uusia työkaluja toteuttamaan tämän vision paremmin. Minulla on laaja kokemus eri ohjelmointikielistä, ohjelmointityyleistä ja ekosysteemeistä, ja tämä monipuolisuus antaa minulle ainutlaatuisella tavalla laajan näkökulman sovelluskehitykseen.

Mikä ohjaa työssä?


UX on tärkeää

Asiat on hyvin kun kaikki vain toimii, tehdään tuotteista sellaisia että ne vain toimii

DX on tärkeää

Panostus työympäristöön ja -putkiin tuottaa osinkoa pitkään. Siisti koodi säästää aikaa pitkällä tähtäimellä

MVP on hyvä idea

Epäonnistu nopeasti, niin tiedät voiko ideasi toimia, ennenkuin siihen on käytetty kuukausia. Tätä tehdessäsi löydät monta uutta tapaa tehdä asian paremmin. Iteroi!

Monimuotoisuus on rikkautta

Monimuotoinen tiimi auttaa ymmärtämään uudenlaisia perspektiivejä ja avaamaan uusia mahdollisuuksia. Nostetaan toisiamme ylöspäin!

Opitaan yhdessä

Osaaminen paranee kun edistetään toistemme oppimista. Omaan laajan taustan pythonin opettamisesta.

Rakkaudesta lajiin

Olen aina tehnyt tätä,

Tulen aina tekemään tätä


Teoksiani


Portfolio Verkkosivu

Nuxt-ekosysteemillä luotu henkilökohtainen verkkosivuni toimii paitsi ansioluettelona, myös vaikuttavana esittelyalustana omille projekteilleni. Tämän työstäminen tarjosi minulle loistavan mahdollisuuden syventyä Vue-puolen osaamistani, ja samalla näyttää työni laajemmalle yleisölle.

  • Nuxt
  • Vue

A* Reitinhakualgoritmi

A* on suosittu algoritmi lyhimmän reitin löytämiseksi kahden pisteen välillä verkossa tai ruudukossa. Se arvioi solmuja yhdistämällä niiden etäisyyden alusta ja heuristisen arvion maaliin ja laajentaa lupaavimmat solmut ensin, kunnes se saavuttaa maalin.

Suunnitellessani pelejä, tarvitsin reitinhakualgoritmia, joka voisi ohjata vihollishahmoja järkevästi monimutkaisessa ympäristössä. Tämä vaatimus innosti minua oppimaan A*-algoritmin perusteellisesti ja toteuttamaan sen käytännössä erilaisissa projekteissa. Ensimmäisen version toteutin Python-ohjelmointikielellä, ja myöhemmin loin version käyttäen Svelteä, josta voit nähdä käännetyn demon alla.

  • Python
  • Svelte
  • Typescript
Kokeile Demoa

D&D real-time hahmolomakkeet

Tavoitteenani oli ratkaista D&D yleinen ongelma: hahmolomakkeiden jakaminen siten, että ne säilyttävät ajantasaisuuden eivätkä sisällä vanhentunutta tietoa muutaman viikon kuluttua. Tärkeämpinä tavoitteena oli säilyttää pelaajien ilmaisuvoima ja monipuolisuus.

Lähdin ratkaisemaan ongelmaa Vuella hahmolomakkeen luomiseen, ja käytin Djangoa välityspalvelimena käyttäjien välillä. Kaikki lomakkeen kentät ovat vapaasti siirrettävissä haluttuun järjestykseen, ja monet komponentit ovat interaktiivisia, mikä tekee halutun lopputuloksen saamisesta helppoa.

Lopputuloksena syntyi yksi monimutkaisimmista web-lomakkeista, jonka olen koskaan tehnyt. Projektin aikana käyttäjäpalaute auttoi viimeistelemään projektin niin, että se oli kaikille miellyttävä ja toimiva.

  • Django
  • Python
  • Vue



Pienemmät lyhyesti

Teen jatkuvasti jotakin, tässä pieni osa muita teoksiani, joita olen tehnyt. Useimmat näistä ovat pienimuotoisia projekteja omaan tai kavereiden käyttötarkoituksiin

Vue x Django Scaffold

MVP tuominen kehiin nopeasti säästää aikaa pitkälta kantamalata. Tämä projekti on pika-paketti liikenteelle, joka sisältää valmiiksi django palvelimen, kustomoiduilla käyttäjä-mallilla. Projecti sisältää plug-and-play google kirjautumisen, kun vain syötät google-auth avaimen taustajärjestelmälle.

  • Django
  • Google
  • Vue
  • Python

Discord Bot

Chatti palvelimen hallintaa avustava discord botti, joka seuraa keskusteluja, ja poimii ei-toivottuja sanoja, ja käyttäytyy automaattisesti näiden perusteella. Kerää myös tilastoja ja sisältää hauskuuksia.

  • Discord API
  • Python

Overwatch Script-Compiler

Overwatch pelissä on muokattavissa oleva pelimuoto, johon pystyy ohjelmoimaan omia ohjeita. Ohjelmointi tapahtuu pelin sisällä peliohjaimella. Tämä muotoutuu esteeksi monimutkaisten systeemien yhteydessä, joten päädyin tekemään python ohjelman, joka kääntää pythonin kaltaista koodia overwatch custom peleihin yhteensopivaksi helpottaakseni kehitys prosessia massiivisesti.

  • Pelit
  • Python

Python web scraper/crawler

Screippaaminen on työläs prosessi, tätä helpottaakseni tein ohjelman jolle annetaan aloitus url ja arviointi funktio. Se tämän jälkeen siirtyy sivujen linkkejä pitkin kaikille löytämilleen sivuille ja kerää arviointi funktion perusteella halutut materiaalit jatkokäsittelyä varten. Ohjelma multiprosessoitu hyvän cpu käytön sallimiseksi ja sisältää GUI edistyksen seuraamista varten.

  • Python
  • HTML

Computercraft Web Ohjain

Pelissä tarkoitus automatisoida teollisuuden prosesseja. Pelissä Lua tietokone, jossa verkkoyhteys. Loin verkkoselaimelle ohjaimen lua koneeseen ja yhdistin tämän automatio prosesseihin, jotta pystyn ohjaamaan automaation prosesseja puhelimella myös pelin ollessa suljettu.

  • Pelit
  • chart.js
  • Lua
  • Vue

Nativescript Applikaatio &

PWA Applikaatio

Tein saman mobiili ohjelman kahdella toisistaan poikkeavalla ekosysteemillä. Ohjelmana oli noppien pyöritys sovellus, jolla voit valita noppia heitettäväksi, ja ohjelma antaa esimerkki lopputuloksen sekä taulukoita. Tehty vertaamaan javascript pohjaisia mobiili ekosysteemeitä.

  • Apple
  • Android
  • Typescript

Unity Mobiili Kaupunki

Videopeli kännykälle, jossa asetetaan rakennuksia 3d maastoon resurssien vaikutusalueelle, jolloin resurssit tulevat käytettäväksi rakentamiseen. Pelin tarkoituksena kannustaa pitkäaikaista resurssien hallintaa, ja visuaalisesti kauniin kaupingin rakentamista.

  • Android
  • Unity
  • C#

Emoji Näppäimistö

PyQT5 Desktop applikaatio, jolla voit liittää unicode emojeita mihin vain tekstikenttään. Ohjelma käyttää Twitterin emoji kokoelmaa emojeiden esittelyyn. Ohjelma avautuu näppäimistö yhdistelmällä, ja automaattisesti tarkentaa hakukenttään nopean hiirettömän käytön sallimiseksi.

  • Windows
  • python

Loogisten porttien peli

PyGame applikaatio, jossa voit asettaa loogisia portteja, ja yhdistää niitä toisiinsa muodostaaksesi monimutkaisia piirejä visuaalisella tavalla.

  • Peli
  • python


Näitähän riitti!


Projektilistan jälkeen on toivoakseni tullut esille, kuinka paljon nautin ohjelmoinnista, ja kuinka intohimoinen olen käytetystä kielistä ja teknologioista riippumatta. Alla on kuitenkin helposti purtava lista teknologioista ja työkaluista, joiden parista löydän itseni useimmiten.


Taipumus näihin

  • Python
  • Django
  • Git
  • Vue
  • Postgres

Kokemusta löytyy

  • HTML
  • SASS
  • Docker
  • SQL
  • DjangoREST
  • React
  • Typescript
  • C#
  • Unity
  • AWS
  • Cloud

Tutkimusvaiheessa

  • Java
  • Flask
  • .NET
  • SvelteKit
  • Godot
  • Rust

Työkalut

  • Linux
  • VS Code
  • Windows
  • Bash
  • Jupyter
  • Markdown

Mistä minä tulen?

Onebyte Oy

Finanssialalla sovelluskehittäjänä

Sovelluskehityksen ja -suunnittelun parissa työskennellyt pääasiassa seuraavilla teknologioilla


Django back-end

Vue + Django full-stack

Nativescript mobiili

2020 Eteenpäin

Lappeenranta University Of Technology

Laskennallisen tekniikkan tiedekunta

Olen syventynyt matematiikan ja tietotekniikan opintoihin yliopistossa, ja pystyin etenemään nopeasti opinnoissani.


Nopean etenemisen ansiosta sain mahdollisuuden osallistua maisterin tason kursseille.

2017 - 2020

Arkadia, Arkitehtitoimisto

Avustaja

Työ koostui SketchUp (Arkitehtuuri sovellus) käytöstä avustajan roolissa, suunnittelusta ja ideoinnista.


SketchUp design

Koulujen ohessa

Varhainen Harrastuneisuus

Yläkoulun / Lukion Ohella

10 vuotta ohjelmointi ja palvelien hallinta kokemusta. Alkujaan videopelejen palvelien ylläpitoa, kustomointia, ohjelmointia.


~2013 Eteenpäin

(alkeellinen harrastuneisuus alkoi aiemmin)

Oppimiseni alkoi

1998

Ota yhteyttä

Tai jätä viesti tänne