Trondheim, Norway

Eirik Simón
Ortega Guttelvik

Engineering student in cybersecurity and data communication who learns by building: rockets, drones, machine learning models and networks. Currently finishing an MSc in Engineering at NTNU alongside a bachelor in economics.

Eirik Simón Ortega Guttelvik
01

Projects

Some of the things I've built, from network optimisation to a rocket tracker.

Video jitter, best-effort baseline versus ML-driven QoS

ML-Driven Quality of Service in Software-Defined Networks

2026
Up to 2000× lower video jitter under congestion

An SDN pipeline where a Random Forest classifier identifies traffic types live and drives priority queues through the controller, so a video call stays smooth even when the link is saturated.

PythonMininetOpenFlowPOXscikit-learn

Traditional networks treat every packet the same. The moment a link gets congested, the video call degrades along with the file download nobody is watching. This project asked whether a network could work out for itself what kind of traffic it was carrying, and then act on that.

Three hosts share one 10 Mbps bottleneck: a video stream, an interactive stream and a bulk transfer that will happily eat the whole link. The controller reads flow statistics from the switch, a Random Forest labels each flow, and OpenFlow rules drop it into one of two priority queues, all while traffic is flowing.

Results

  • Video jitter fell from 6.97 ms to 0.003 ms at the worst congestion point, and stayed under 0.004 ms in every scenario
  • Video kept its full rate under QoS where the baseline collapsed and fluctuated
  • Classification was clean on held-out flows, which is unsurprising for synthetic traffic and something I'd expect to degrade on real captures

Built at the University of Cape Town.

Snow pole detection

Snow Pole Detection for Winter Autonomous Driving

2025
Best result in the class

Real-time detection of the roadside poles Norwegian drivers rely on when snow buries the lane markings. Trained on NTNU's NAPLab RGB and LiDAR dataset and tuned to run on edge hardware.

PyTorchObject detectionLiDARComputer vision

Autonomous driving research is dominated by places where the road is visible. In a Norwegian winter it often isn't. The markings are under snow, and the only thing telling you where the road ends is a line of poles.

They are an awkward target: thin, low-contrast against white, often half-buried and small in the frame. I trained an edge-friendly detection model on NTNU's NAPLab dataset and put the tuning effort into the failure cases of poor light, falling snow and partial occlusion, while keeping it inside a compute budget that could realistically run in a car. It scored best in the class.

Fibre-optic access network design

Fibre-Optic Access Network Design Tool

2025

Software that reads GIS data, finds every household in a neighbourhood, and works out the cheapest legal way to reach all of them with fibre, formulated as an integer linear program.

PythonPuLPGeoPandasOSMnxILP optimisation

Rolling out fibre to a neighbourhood is mostly a placement problem. Where do the cabinets go, how many splitters, which streets does the cable follow? Get it wrong and you either overbuild or strand houses.

We pulled building footprints and the street graph from open GIS data, then modelled placement and routing as an integer linear program. Run on a real neighbourhood in Chile, with 1340 houses and 489 poles, the solver activated 30 of 48 candidate cabinets.

Built by a team of three at Universidad Técnica Federico Santa María, and delivered entirely in Spanish.

Scooter sharing system architecture

Scooter Sharing and Charging System

2025

A working scooter-sharing service: book and ride from your phone, park at a charging station, get charged for the trip. Scooters and stations are independent devices that coordinate over MQTT, with a Raspberry Pi and a Sense HAT standing in for a real scooter.

PythonFlaskMQTTstmpySQLAlchemyRaspberry Pi

The interesting problem in scooter sharing isn't the app. It's that the scooter is a computer standing outside in the rain. It loses signal, gets unplugged mid-charge, and has to keep behaving correctly while the server has no idea where it is.

So the app talks to a Flask API over HTTP, but everything physical talks over MQTT: scooters and charging stations each run their own state machine and publish what they're doing instead of waiting to be asked.

One scooter is real. A Raspberry Pi with a Sense HAT stands in for it. The joystick drives it around the live map, the LED matrix shows battery draining and charging, and pressing the joystick in simulates plugging it in. Built with two others for TTM4115 at NTNU.

Propulse NTNU rocket

Rocket Telemetry Tracker

2024 – 2025

The ground-side tracker used to follow Propulse NTNU's rocket through flight, receiving and decoding the live downlink so the crew knows where the rocket is and what it's doing.

TelemetryRadioEmbeddedPython

A rocket flight lasts a couple of minutes and you get one attempt. Telemetry is the only thing standing between "we launched something" and "we know what happened".

I developed the tracker the ground crew uses during flight, acquiring the downlink, decoding the packet stream and turning it into position and state the team can act on in real time. Alongside that I troubleshot across subsystems in the run-up to launch.

Two things stuck: radio links behave nothing like the diagram once there's terrain, weather and a moving transmitter, and it's worth testing the failure path harder than the happy path, because the happy path tests itself on launch day.

Smart blinds

Smart Blinds

2022

Motorised window blinds built from a stepper motor, a microcontroller and 3D-printed parts I designed to fit the existing hardware. They open on a schedule, or on a word to Siri.

ArduinoStepper motors3D printingHomeKit

You can buy smart blinds. They cost a fortune and they don't fit the blinds you already own, so I built the mechanism instead. A stepper motor drives the existing blind, brackets and a gear coupling are 3D-printed to fit the window frame, and the whole thing is exposed to HomeKit so it responds to schedules and to Siri.

It was the first project where the mechanical, electrical and software sides all had to agree with each other. A strong enough motor with a bracket that flexes gets you nowhere. Several print iterations later it's still running.

Self-built drone

Self-Built Drone

2019

Specified and sourced the parts, soldered the power distribution and ESCs, assembled the frame and configured the flight controller, then learned to fly it.

ElectronicsSolderingFlight controllers

The project that started the habit. I wanted a drone, and building one from parts was cheaper than buying one, which is true only if you don't count the time, and I've never regretted the time.

Choosing motors, ESCs, battery and frame so the thrust-to-weight actually worked out, soldering the power distribution, then configuring and tuning the flight controller taught me what has been true of every project since: the specification is the easy part, and everything interesting happens when the parts arrive and don't quite fit.

RFID and sub-GHz experiments

RFID, NFC and Sub-GHz Protocol Experiments

2024

Hands-on exploration of short-range wireless protocols on my own equipment, understanding how these systems authenticate and how weakly some of them do it.

RFID / NFCSub-GHzProtocol analysis

Access cards, garage remotes and tags are everywhere and almost nobody thinks about what they're actually transmitting. Using a Flipper Zero on my own tags and remotes, I read and analysed RFID, NFC and sub-GHz signals to see how the protocols are structured.

The instructive part is the gap between systems. Some credentials carry real cryptographic challenge-response; others are effectively a number read aloud, where possession of the number is the entire security model.

Snake reinforcement learning agent

Snake Reinforcement Learning Agent

2024

A deep Q-network that learns to play Snake from scratch through trial and error, with no hand-written strategy at all, just a reward for eating and a penalty for dying.

PythonPyTorchDeep Q-learningpygame

A small project to get a feel for reinforcement learning by building both halves of it: the game in pygame, and an agent that learns to play it.

The agent never sees pixels, only eleven booleans for where the danger is, which way it's heading and which way the food lies. A small network learns what each of its three moves is worth. The reward is blunt on purpose: food is good, dying is bad, turning costs a little.

The first couple of hundred games are worthless, then the average starts to climb. Watching that go from flat to rising explains reinforcement learning better than any diagram.

Minesweeper

2023

A playable Minesweeper in Java and JavaFX, with a 10×10 board, recursive flood-fill reveal, a timer and a top-ten leaderboard that survives closing the app.

JavaJavaFXFXMLJUnitOO design

Minesweeper is a deceptively good exercise in object orientation. The rules are trivial and the structure isn't: something has to own the board, something has to own a tile's state, and something has to draw it. Let those blur together and you end up with game logic living inside a click handler.

A 10×10 board with recursive flood fill, flagging, a timer and a top-ten leaderboard that persists between sessions. File handling sits behind an interface rather than being called directly, which is what makes the leaderboard testable without touching the real file. Written for TDT4100 at NTNU.

Theatre database

Theatre Database

2023

A relational database for a theatre's productions, performances, seating and ticket sales, modelled from scratch as an EER diagram, then normalised and implemented in SQL.

SQLEER modellingNormalisation

A theatre looks simple until you try to model it. A ticket isn't just a row. It's one seat, in one hall, at one performance, of one play, bought as part of an order, priced according to which customer group the buyer belongs to. Get the entities wrong early and every later query fights you.

The decision I'd defend is putting price on the relationship between a play and a customer group rather than on the ticket or the play. A student ticket can then be priced differently for each production without duplicating anything, and old tickets keep the price they were actually sold at.

02

Experience

Security consulting, embedded machine learning, defence engineering, and a year in the Norwegian Army.l

mnemonic

Jun 2026 – Aug 2026

Governance, Risk and Compliance Intern · Norway

Translated security and regulatory requirements into practical guidance for how an enterprise client adopts AI, and evaluated European technology vendors as part of a digital sovereignty assessment.

Working in governance, risk and compliance at one of Europe's larger security companies meant sitting at the point where regulation meets what an organisation can actually do on a Tuesday.

  • Turned security and regulatory requirements into concrete, usable guidance for how an enterprise client should adopt AI, the kind of document that has to survive contact with people who are not security specialists
  • Assessed European technology vendors as part of a digital sovereignty evaluation, comparing them against the requirements that drive sovereignty decisions

The technical side of security is the part I came in strong on. The lesson was how much of the outcome is decided by whether the advice is written so someone will follow it.

Defence Technology Startup

Jul 2026 – Aug 2026

Engineering Intern · United Kingdom

Built computer vision components and designed a mechanical test rig for hardware validation during a three-week placement.

Intense placement at an early-stage defence technology company, taken during my summer at mnemonic because the opportunity was worth the lost holiday.

  • Developed computer vision components for the product
  • Designed a mechanical test rig used to validate hardware, from requirements through to a working setup engineers could run tests on

Three weeks in a small team is a fast way to learn how much gets decided by whoever is willing to build the thing that unblocks everyone else. Specifics of the work are not public.

Propulse NTNU

Aug 2024 – Oct 2025

Telemetry Engineer · Norway

Telemetry engineer on NTNU's student rocket team. Developed the rocket tracker used to follow the vehicle during flight, and helped solve technical problems across the project.

Propulse NTNU is a student organisation that designs, builds and launches rockets. It is a full engineering project with a hard deadline and no possibility of shipping a patch afterwards.

  • Developed the tracker used to follow the rocket during flight, from receiving the downlink to presenting position and state to the ground crew
  • Operated in a large volunteer team where nothing gets done unless someone picks it up

See the project entry above for more on the tracker itself.

Jotron AS

Jun 2025 – Aug 2025

Junior Development Engineer, Embedded Machine Learning · Norway

Worked on machine learning for speech enhancement, improving voice clarity in noisy environments and deploying the models to edge devices.

Jotron builds communication equipment for aviation and maritime use, settings where the person on the other end has to understand you the first time, and the background is an engine room or a runway.

  • Worked on machine learning models for speech enhancement, pulling intelligible voice out of heavy background noise
  • Used PyTorch for model work, and TensorFlow Lite and ExecuTorch for conversion and deployment to edge devices
  • Dealt with the real constraint of embedded ML: a model that is accurate but doesn't fit in the memory or latency budget is not a solution

Norwegian Air Force Flight School

Aug 2024 – Sep 2024

Student Pilot · Norway

Selected as 1 of 22 from over 1800 applicants after a five-phase selection process. Best in class when I left, in pursuit of a more technically oriented career.

Selection for the Norwegian Air Force flight school runs over five phases of physical, mental and computer-based testing. 22 of more than 1800 applicants were selected; I was one of them, and was ranked best in class at the point I left.

I left voluntarily. Flying is a career that asks for all of you, and the longer I was there the clearer it became that the problems I actually want to spend a decade on are technical ones. Choosing to walk away from something you worked hard to get into is uncomfortable, and I'd make the same call again.

Duvi Pensjon

Aug 2023 – Sep 2024

Technical Problem Solver, part-time · Norway

Offered a part-time position after a summer internship. Handled integration and API issues, collaborating with other companies to solve technical problems.

Duvi is a Norwegian pension provider, which means most of the technical work happens at the seams between systems owned by different companies.

  • Kept a part-time position alongside full-time studies after being asked to stay on following a summer internship
  • Diagnosed and resolved integration and API issues across organisational boundaries
  • Coordinated directly with counterparts at partner companies to trace faults that neither side could see alone

Norwegian Army

Jul 2020 – Jul 2021

Artillery Ranger · Norway

Second-in-command of a patrol, responsible for team equipment and for making sure the team met its goals. Selection where only 9 out of 100+ made it through.

Artillery rangers operate in small patrols behind enemy lines, often far forward and for long periods, with whatever they carried in. Selection was rigorous: of more than 100 candidates, 9 finished.

  • Second-in-command of a patrol
  • Responsible for the team's equipment, and in a small self-sufficient team equipment failure is mission failure
  • Accountable for the patrol meeting its objectives and duties

A year of this teaches you what a team can do when it's tired, and how much of leadership is preparation nobody sees.

03

Extracurriculars

Teaching, volunteering and the outdoors, mostly variations on helping someone else get started.

Teaching programming and electronics

Developer & instructor

Pet Projects

Volunteer instructor teaching programming and electronics to teenagers.

Running workshops where teenagers build something real with code and electronics: Arduino projects that blink, move or react, rather than exercises that produce a number on a screen.

I made prototypes the teens could later build themselves.

Seniornett

Leader

Seniornett

Helping seniors with technology, and responsible for the participating students.

Seniornett helps older people navigate the technology that public services and daily life now assume everyone has. As leader I was responsible for the students taking part, organising sessions and making sure people were paired well.

It is the best correction I know for the assumption that an interface is obvious. Explaining BankID to someone who has every reason to distrust it teaches you more about usable security than a textbook does.

Climbing instructor

Climbing instructor

NTNUI Tindegruppa

Teaching climbing technique and safety at NTNU's mountaineering group.

Tindegruppa is NTNU's mountaineering group. As an instructor I teach technique and, more importantly, safety systems such as belaying, knots and checks, to people who are new to climbing.

Climbing is one of the few hobbies where the procedure genuinely matters every single time, which makes it a good place to practise teaching habits rather than facts.

04

Education

A master's in cybersecurity and a bachelor in economics in parallel, plus a year abroad.

Norwegian University of Science and Technology (NTNU)
MSc in Engineering, Cybersecurity and Data Communication · BSc Economics · Trondheim
Aug 2022 – Jun 2027
University of Cape Town
Exchange semester in engineering and economics · South Africa
Jan 2026 – Jun 2026
Universidad Técnica Federico Santa María
Exchange semester in engineering and economics, taught and examined in Spanish · Chile
Aug 2025 – Dec 2025

Full CV

One page, PDF. Education, experience, projects and skills.

Download PDF
05

About

I'm studying for an MSc in Engineering at NTNU, specialising in cybersecurity and data communication, with a bachelor in economics running alongside it. The combination is deliberate: I like understanding both how a system works and why someone decided to build it.

Most of what I know best, I learned by building it. A drone assembled and soldered from parts. Motorised blinds driven by Siri. A rocket tracker for NTNU's student rocket team. Machine learning models squeezed onto edge hardware. The pattern is the same each time: take something apart, get it working, then figure out why it works.

Along the way I've served as second-in-command of an artillery ranger patrol, been selected as 1 of 22 from 1800+ applicants to the Norwegian Air Force flight school, and spent a year studying abroad, a semester in Chile, taught and examined entirely in Spanish, and a semester in South Africa.

Away from a screen I'm usually outside, and usually somewhere with poor phone coverage. I've skied in every month of the year, which in Norway means driving a long way to find the snow that's left. The rest of the time it's climbing, paragliding, surfing or kiting, depending on what the conditions allow.

The same restlessness has taken me further out. I've travelled through all of Central America and much of South America, driven the length of Chile and Argentina, and spent time in the mountains of Patagonia. More recently I crossed Namibia through country where you can go a day without meeting anyone, and Lesotho after that. Planning those trips myself, and sorting out the parts that didn't go to plan, taught me more about being self-sufficient than anything I've done indoors.

It's the same instinct that makes me open up a piece of hardware I don't understand yet. If you're working on something that needs that, I'd like to hear about it.

Eirik Simón Ortega Guttelvik outside a hut in the Andes
Graduating
June 2027
Languages
Norwegian, English, Spanish
Outside
Skiing, climbing, paragliding, surfing, kiting