Portfolio

Selected Contributions

Here you’ll find a few selected projects I’ve had the opportunity to work on — often as part of a team solving real-world problems. They reflect both the kinds of challenges I enjoy and the tools I’ve used along the way.


Synthetic Image Detection

Role: Machine Learning Engineer at Magnet Forensics
Tools: Python, Machine Learning, Weights & Biases, Image scraping, AWS

At Magnet Forensics, I worked with the AI team to develop a system that detects AI-generated (synthetic) images in digital investigations. Deepfakes and other fake images were becoming more common, and existing tools couldn’t reliably identify them.

We built a machine learning model trained on scraped image data from various sources. The system was designed to help investigators quickly flag suspicious content and reduce manual review time. We used Weights & Biases to track and validate model performance.

This project made synthetic image detection faster, more reliable, and easier to integrate into existing forensic workflows.


Video Signature Matching

Role: Machine Learning Engineer at Griffeye Technologies
Tools: C++, Python, Docker, Azure

At Griffeye Technologies, I was part of a team that developed and implemented an algorithm called Video Signature Matching. Investigators often work with vast amounts of video content, and manually identifying overlapping or repeated scenes across cases can be challenging and time-consuming.

The tool enables users to automatically find visually similar scenes across large video datasets, making it easier to uncover duplicates, spot patterns, and support case linkage within forensic workflows.


Media Types Classifier

Role: Machine Learning Engineer at Griffeye Technologies
Tools: Python, Machine Learning, Docker, Azure

At Griffeye Technologies, I worked on a machine learning tool called Media Types Classifier. In digital investigations, investigators are often overwhelmed by large volumes of irrelevant images — such as drawings, logos, icons, or screenshots from games.

This tool was designed to automatically classify and filter out such media types, allowing investigators to focus on more relevant content. We trained and evaluated models capable of identifying and excluding unimportant or non-actionable image categories from the review workflow, helping streamline investigations and reduce noise.


Airline Crew Optimization

Role: Implementation Specialist at Jeppesen Systems
Tools: Functional Programming (Rave), Python, behave, jenkins

At Jeppesen Systems, I worked in the implementation department on several projects ranging from crew rostering to crew compensation. These projects involved configuring Jeppesen’s tools to meet each customer’s specific requirements.

We translated complex labor laws and union agreements into mathematical rules and expressions using functional programming that the scheduling software could interpret. The results of these projects are smarter, robust and more consistent crew planning that reduces operational costs and allow fewer crew members to cover the same number of flights.


RAVE Course Instructor

Role: Implementation Specialist at Jeppesen Systems
Tools:

At Jeppesen Systems, I taught courses on RAVE (Rules And Variables Engine), a domain-specific functional programming language used to model complex airline crew and flight scheduling problems. RAVE enables the declarative expression of constraints, business rules, and optimization goals.

I also contributed to the development of the eRAVE course, a structured online training program used by Jeppesen’s customers to build proficiency in RAVE. This work included collaborating with a professional videographer and ensuring a high-quality user learning experience.


Speed Optimization of an Electric Vehicle

Role: Master thesis at Volvo Group Trucks Technology
Tools: Matlab, Dynamic Programming, Machine Learning

I developed and implemented an optimization algorithm designed to determine the most efficient velocity profile for a vehicle traveling from point A to point B. The problem was modeled as a shortest path problem in graph theory, enabling the use of well-established solution methods.

A key aspect of the project was building a flexible vehicle model interface. By abstracting the vehicle dynamics—such as speed, acceleration, and mass—the same algorithm can be applied to any type of vehicle, not just electric ones. This makes the solution adaptable to a wide range of scenarios and requirements.

For testing, I used a concept electric vehicle model across multiple simulated routes. The results produced realistic and expected behaviors, such as heavier vehicles accelerating before steep inclines, confirming that the algorithm correctly captured efficient driving strategies.


Discover My Public Pet Projects

Here I showcase a small selection of my pet projects. Keep in mind that these projects are personal and do not represent what I think are well structured software projects. I am showcasing them to highlight creativity and problem solving ability.

Sharing expenses among a group of people

Even Steven

Solving the mastermind game with linear programming

Mastermind Solver

Earning game currency at the auction house in world of warcraft

Auction house grinder