Hi, I am  Riste

Helsinki based IoT / Software engineer
I'm a software engineer and keen cybersecurity enthusiast with a passion for building innovative solutions, designing complex software architectures, and refining existing systems. My daily work involves working with C#, React, and Node.js, though I occasionally explore embedded development and experiment with a variety of IoT projects and software security practices.
Helsinki, Uusimaa Finland
Oy Halton Group Ltd.
MSc Security and Cloud Computing @ Aalto
Oy Halton Group Ltd.
Software Engineer
August 2023 - Present
Working as a software engineer where I am involved in designing and implementing complex software solutions on a daily basis, as well as maintaining and improving existing software.
Digitalnode
IoT Engineer
January 2021 - August 2023
Worked as an IoT engineer responsible for implementing complex IoT solutions, cloud integrations and various software projects.
Various places
Graphics Designer
2018 - 2021
Worked as a Graphics Designer at various places, sometimes even freelancing.
Pitstop.de (Leipzig)
Internship
IT in automobile industry
January 2015
Was working as an intern in Leipzig service focusing on IT in the automotive industry. The tasks varied from diagnosing issues on the cars to working with the car's software.
Aalto University
MSc - Security and Cloud Computing
August 2023 - March 2025
University Goce Delchev
Bachelor of Computer Science
September 2019 - June 2023
Quantum Resilient Public Key Cryptography in Internet of Things
View on IEEE
"With Internet of Things (IoT) becoming increasingly popular and widespread, the somewhat secure devices could potentially become completely insecure with the emergence of quantum computers. The problem is that a lot of IoT devices in crucial places are not secured and use unencrypted communication or use the current recommended encryption algorithms. This paper explores public key encryption (PKE) with post quantum cryptography (PQC) algorithm Kyber, despite it being usually used as key-encapsulation mechanism (KEM). The proposed approach has been evaluated experimentally. The conducted experiment encrypts the data on one scenario on the IoT device itself and in the other scenario the data is encrypted on a fog node. Obtained results are promising and suggest that quantum resilient public key cryptography is applicable in internet of things."
Esp32 Quantum Resilient Cryptography
This project focuses on utilizing the assymetric PQC (Post-Quantum Cryptography) algorithm Kyber, to encrypt data directly on the IoT device (esp32). All variants of the algorithm were tested (Kyber 512/768/1024), however, the "twist" here is that Kyber is actually meant to be more of a KEM (Key Encapsulation Mechanism), so essentially the research had multiple dimensions. This was a starting point, and one of the repositories which has the code for my Bachelor thesis, and the results were published in the research paper above. To quickly sum up, the esp32 is running FreeRTOS (Real Time Operating System), who is tasked to read data from temperature sensor, encrypt it, and send it to a remote MQTT (Message Queuing Telemetry Transport) broker.
Quantum Resilient IoT Cryptography
This project can actually be considered as an extension of the "Esp32 Quantum Resilient Cryptography" project, since in this repository the full code is present. So in additional to the encryption code, here the code for the decryption is also present which is pretty straightforward. Also, there are some other stuff such as reading from serial, since that is how the esp32 was actually writing the measured performance metrics. So this is actually my full Bachelor thesis code. Just to quickly sum the whole structure, there was a node-red setup on Raspberry Pi4 which was reading the data from the remote broker and then decrypting it. Again, all of the results are published in the aforementioned research paper.
eBPF Firewall Tracing
Firewall tracing with eBPF. Essentially, this is a simple eBPF program which traces packets and based on provided source and destination checks if destination is reachable from the source. The repository also includes some scripts to test the correctness of the program and measure the performance
XBacnet
The first ever cross-platform Bacnet explorer, for hobbyists and professionals alike. The inspiration for this one was simple, I needed a simple cross-platform tool to explore BACnet. Probably one one of the first more open source serious projects that I have interacted with. Unfortunately at the moment it is not very actively maintained.
Predictgenics
Disease prediction model which uses Random Forest Classificator, which was actually my first project with machine learning. Seemed like a fun university exercise :))
The Slade
Coding game written purely in Javascript using Phaser3, which is meant to introduce beginners to the world of simple algorithms. The main objective is to collect a trophy that is placed at a random location on the screen. The code is far from clean, practical nor efficient, but there is plenty that I learned from this project including how not to do things
R3E With Apache Airflow
This project was a part of Aalto's CS course, whose main topic was Big Data in ML, and the topic of my research was exploring Robustness, Resilience, Reliability, and Elasticity (R3E) for Big Data ML pipelines with Apache Airflow
Buck
Buck - The business track. Not sure why I named it like that, but I thought it was cool name at the time :)). Buck is Java android app which allows businesses to input their infromation and basically anyone that has the app to be able to view the information. Some cool features of this app are the Remote DB connection, dynamic business searching, location services and google maps integration. (Also part of school project)
DBMS
Database Management System (DBMS) project developed using C# and Windows Forms. This project was part of a school assignment as well and got me started with databases and remote data editing
Memory Game
Cards memory game made using purely C# and Windows Forms. The game was part of a school project and it has some features that I was experimenting with for the first time, such as blur effects, updating UI in "real-time", installers and user management with score keeping
EnglishC2
GermanB1
C#
Javascript
Python
Node-RED
Node.JS
C++
Docker
Linux
Azure
DevOps
React
Rust
Googling
Reading API documentation
Work in progress