Work experience

Software Developer2022 - Present

Software Engineer Trainee2021 - 2022

at Helvar Oy Ab

I work as a front-end developer on Helvar's ActiveAhead mobile app, an application for configuring the company's wireless lighting control system.

Daily technologies include TypeScript, Angular, Capacitor and Ionic Framework. Bluetooth Low Energy is used for communication with the lighting control system.

I am part of an Agile development team utilizing tools such as Jira, Bitbucket and Figma, among others.

Education

Bachelor of Engineering2019 - Present

at Metropolia University of Applied Sciences

Information Technology, majoring in Game Applications

Programming experience

Game & package development with Unity

Games

Recently, I had the pleasure to work with a group of students on Lucy's Dream, a horror game that takes place in two dimensions. The game was developed with Unity. I was the "code lead", and responsible for the implementation plans of many of the game's systems. I lead five coders on the project.

The game received great feedback from players, and we managed to reach third place in the Bit1 student game awards!

I also have experience porting my Unity projects for the PlayStation 4. Various PS4 development and profiling tools were used to identify performance bottlenecks and optimize the games to run smoothly on the console.

As for multiplayer games, I have a made a simple online Space Invaders clone, which you can see here.

Packages

I have created a small front-end framework for Unity's new UIToolkit system, UIComponents. It has 100% unit test coverage and has a continuous integration pipeline in place to help catch bugs.

I created the package to ease the development of UnityGit, another project of mine. It provides an interface for Git operations inside the Unity Editor.

Continuous integration and testing

I think the biggest thing I've learned from working in the software development industry is just how important continuous integration and unit testing is. That's why I've made it a priority to set up a proper CI pipeline and test suite for all my new projects. You can see examples of it in parallel-cmd and UIComponents.

Software development in general

I feel like the most fun part of software development is finding new ways to do things in an easier and simpler way. That's why I've been focused on creating various tools and frameworks to do just that: make certain things more simple and fun.

Examples of this include the aforementioned UIComponents, parallel-cmd and UnityGit.

Although the bulk of my code is TypeScript and C#, I have experience with Ruby and C++ as well.

My first code was written in Ruby for RPG Maker XP. As an example of my Ruby code, see this pull request for Pokémon Essentials, a game framework for Pokémon-like monster catching games. In the PR, I introduce a new, more extensible system for save data.

As an example of C(++) code, see this and this pull request on a game engine, where I implement a debug console for Windows, and promptly fix it after realizing I had messed it up the first time.