Skip to content

// Berlin · AI, Robotics & Software

Mahdi
Bayanloo

Curiosity keeps me building.

I'm into robots, AI, and making ideas do something in the real world. Sometimes that means code. Sometimes it means a robot fight.

Concept study / intelligent systems
Robotic arm with an explorable software and control architectureAn illustrative articulated robot opens into a wireframe, showing sensing, AI planning, and embedded control. Use the button or scroll to explore. This is a conceptual illustration.HARDWARE × SOFTWARE × INTELLIGENCE

Sense. Reason. Act. Test. The interesting part is making it all work together.

system nominal · berlin 52.52°N
01 /

Work Experience

  1. Jul 2026 — Sep 2026Berlin

    RV TechSoftware Integration Engineer — OTA (Intern)

    • Integrated over-the-air update software for vehicle ECUs; supported hardware- and software-in-the-loop validation.
    • Maintained HIL test setups, Python test tooling, update recipes, and GitLab CI workflows with firmware and integration engineers.
    • Added signal logging and analyzed test data across ECU platforms; used Claude and LLM-assisted workflows to prepare engineering documentation in Confluence.
    • Python
    • C++
    • HIL / SIL
    • OTA
    • GitLab CI
    • Confluence
  2. May 2025 — Jul 2026Berlin

    Perinet GmbHEmbedded Software Engineer (Working Student)

    • Wrote automated tests in Python and validated embedded firmware on STM32; debugged hardware–software integration across signal-processing and communication layers.
    • Validated Automotive Ethernet (100BASE-T1, SPE) communication stacks using VNA and oscilloscopes with high-frequency signal analysis — directly applicable to in-vehicle network testing.
    • Developed STM32 C/C++ firmware for preemptive and cooperative RTOS systems, including interrupts and communication interfaces; authored engineering and manufacturing documentation in LaTeX.
    • Prototyped an LLM workflow for firmware analysis and restructuring using task-specific code and architecture context, separate review roles, and bounded repair; presented the work internally with HTML and PowerPoint.
    • Python
    • C/C++
    • STM32
    • RTOS
    • LLM Workflows
    • LaTeX
  3. Oct 2024 — May 2025Berlin

    Zuse Institute BerlinResearch Assistant — Autonomous Driving (BMW AutoRun CAN Project)

    • Built ROS2 data acquisition and synchronization workflows for LiDAR, IMU, and CAN on the BMW AutoRun research platform.
    • Built Python automation tooling with NumPy and Pandas for test-data analysis; created dashboards and visualizations for validation runs.
    • Worked on Python replay and simulation tooling, CAN-based actuation, and reproducible validation of research data.
    • ROS
    • LiDAR
    • CAN
    • Python
    • Sensor Fusion
  4. Oct 2022 — Oct 2023Zanjan

    University of ZanjanHead of Robotics Association

    • Developed ROS-based autonomy software in C++ and Python for UAV and navigation projects, connecting sensing, control, and embedded hardware.
    • Assembled robotic hardware end-to-end; debugged hardware–software integration across sensors, actuators, and embedded controllers.
    • Mentored 20+ students in robotics software development, Git workflows, and system testing.
    • ROS
    • C++
    • Python
    • Embedded
    • Mentoring
  5. Jul 2022 — Sep 2022Zanjan

    IleriaEmbedded Systems Intern

    • Developed and tested embedded firmware on microcontroller platforms; wrote test scripts to validate sensor and communication peripherals.
    • Firmware
    • Microcontrollers
    • Test Scripts
  6. Feb 2020 — Jun 2021Zanjan

    University of ZanjanTeaching Assistant — Computer Programming

    • Taught Python, C++, and Java with a focus on OOP over 4 semesters; mentored students in debugging and software-engineering practices.
    • Python
    • C++
    • Java
    • OOP
02 /

Selected Projects

Independent engineering lab · Oct 2026

Vehicle Assistant Validation Lab

problem
How can assistant tools, stored preferences, and scenario checks be tested against explicit contracts before connecting them to real systems?
built
Implemented a Python lab combining budget-aware test selection, a simulated vehicle backend with token, scope, and ownership checks, idempotent writes, and SQLite memory with provenance and per-user isolation. Added structural and semantic checks for a defined OpenSCENARIO 1.2 XML subset, an official-SDK MCP stdio tool adapter, 29 automated tests, and reproducible JSON/XML benchmark reports.

Local proof of concept using synthetic fixtures and a simulated backend. Scenario checks cover a restricted subset; production OAuth, live-model evaluation, and simulator execution remain future work.

  • Python
  • MCP SDK
  • HTTP / JSON
  • Authorization
  • SQLite
  • OpenSCENARIO
  • Test Selection

LLM engineering prototype · Apr–May 2026

Multi-Agent Firmware Optimization Pipeline

problem
How can an LLM propose firmware changes while keeping architecture constraints, behavior review, and an inspectable record of each step?
built
Built a Python orchestrator using the Anthropic SDK with six roles: planner, generator, architecture reviewer, behavior reviewer, repair agent, and test designer. It assembles task-specific code and documentation context, limits repair iterations to three, and records prompts, responses, and token usage in JSONL. Includes a C++ timing harness comparing simulated blocking and non-blocking communication.

Prototype scope: timing results come from a mock harness. Generated patches still require build, hardware integration, and validation; this is not a measured hardware speedup.

  • Python
  • Anthropic SDK
  • Context Engineering
  • Agent Orchestration
  • JSONL
  • C++

Python data-processing project · 2026

Telemetry Resampling & Braking-Event Detection

problem
Irregular timestamps and missing measurements make it difficult to identify sustained events consistently in sensor logs.
built
Implemented a Pandas pipeline that aligns telemetry to an exact 10 Hz grid, interpolates continuous speed values, and forward-fills the discrete brake state. It extracts braking intervals lasting at least 0.5 seconds and reports their start, end, sampled duration, and speed drop. Three focused tests cover interpolation, discrete-state preservation, and event thresholds.
  • Python
  • Pandas
  • Time Series
  • Signal Processing
  • pytest

FU Berlin · Spatial Databases (Prof. Agnès Voisard) · 2026

Spatial Analysis of Air Quality & Traffic Patterns in German Cities

problem
Where does poor urban air quality actually coincide with traffic congestion — and can raw traffic and sensor data answer that at district level?
built
A unified spatial data pipeline in PostgreSQL/PostGIS joining TomTom road-traffic data with OpenAQ air-quality sensor measurements. Multi-layer interactive maps (Leaflet/OpenStreetMap) of Berlin, Hamburg, Munich, Cologne, Frankfurt and Stuttgart: district-level AQI polygons, 2,000+ individual sensor points, and traffic hotspots. Spatial queries and visualizations support investigation of relationships between congestion and air quality. Team of three.
  • PostgreSQL
  • PostGIS
  • Spatial Queries
  • TomTom Traffic API
  • OpenAQ
  • Leaflet

Industrial IoT · 2026

Plug-and-Play IoT Demonstration Kit

problem
Turn a complex industrial IoT system into a plug-and-play, customer-facing demo experience.
built
A compact demonstration kit integrating sensors, industrial controllers, networking, and power management in a single enclosure — waterproof panel-mounted connectivity, integrated wireless access for field demonstrations, and clean cable management for serviceability.
  • IoT
  • Embedded Systems
  • Industrial Automation
  • Networking
  • Enclosure Design

FU Berlin course project · 2026

Flow Matching vs. Denoising Diffusion (DDPM)

problem
Which modern generative approach performs better under truly identical conditions — flow matching or diffusion?
built
Implemented both methods on one shared PyTorch codebase (same backbone and training budget) and benchmarked them on 2D data and MNIST — Sliced Wasserstein, MMD, and FID with a self-trained feature network. Fully reproducible: fixed seeds, resumable, checkpointed experiments.
  • PyTorch
  • Flow Matching
  • DDPM
  • U-Net
  • Generative Models

HOLOPLOT · Dec 2024–Jan 2025

Jenkins CI/CD Pipeline for Embedded Systems

problem
Embedded software validation was manual — no automated path from commit to verified hardware behavior.
built
A Jenkins + Gradle CI/CD pipeline with automated test scripts and hardware-in-the-loop integration tests: every commit triggered automated build, test, and reporting on real hardware targets.
  • Jenkins
  • Gradle
  • Groovy
  • HIL
  • CI/CD

Bachelor thesis · Sep 2023

CNN Face-Recognition Door Control

problem
Run real-time face recognition on a microcontroller-class device — no cloud, no GPU.
built
Trained a custom CNN in PyTorch, then deployed quantized inference in C++ with OpenCV on an ESP32 for real-time embedded execution.
  • PyTorch
  • CNN
  • Quantization
  • C++
  • OpenCV
  • ESP32

Kaggle competition · Jan 2025

LLM as a Judge

problem
How robust are LLM judges — and can structured strategies systematically shift their verdicts?
built
Collaborated with a 20-researcher team at Experience Cafe on a Kaggle competition investigating disagreement among LLM judges. Researched model robustness, subjective evaluation, and exploit strategies; contributed code and essay-submission experiments.
  • Python
  • LLMs
  • Evaluation
  • Robustness
  • Kaggle
03 /

Skills

AI & Machine Learning

  • PyTorch
  • TensorFlow
  • Generative Models
  • LLMs
  • Anthropic SDK
  • RAG
  • Agent Workflows
  • Model Evaluation

Programming & Automation

  • Python
  • C/C++
  • Java
  • JavaScript / TypeScript
  • Bash
  • Groovy
  • Git
  • Linux

Robotics & Embedded Systems

  • ROS / ROS2
  • STM32
  • RTOS
  • LiDAR / IMU
  • Sensor Synchronization
  • CAN
  • MATLAB / Simulink
  • OpenCV

Data & Visualization

  • SQL
  • PostgreSQL / PostGIS
  • Pandas
  • NumPy
  • Matplotlib
  • Leaflet
  • Geospatial Analysis
  • Time Series

Testing & Infrastructure

  • Jenkins
  • GitLab CI
  • HIL / SIL
  • Docker
  • Gradle
  • AWS S3 / Lambda
  • Kubernetes

APIs & Technical Communication

  • REST
  • GraphQL
  • JSON / JSONL
  • Confluence
  • LaTeX
  • HTML
  • PowerPoint
  • Technical Presentations
04 /

Education & Certifications

Oct 2024 – Present · expected enrolment through 2028

Freie Universität Berlin

M.Sc. Computational Sciences

1.3Current grade · German scale

Computer science, applied mathematics, and physics. Passed coursework includes machine learning methods and evaluation, robotics/navigation, statistical physics, and a seminar on function-space ML, operator learning, and inverse problems. German grading scale: 1.0 is the highest grade.

Sep 2019 – Sep 2023

University of Zanjan

B.Sc. Electrical Engineering (Embedded Systems)

1stRank in cohort

Grade: 1.7 on the German grading scale (1.0 highest). Focus on embedded systems; CNN-based face-recognition thesis.

  • Jan 2025Building RAG Agents with LLMsNVIDIAview ↗
  • Jan 2025Disaster Risk Monitoring Using Satellite ImageryNVIDIA · UNITARview ↗
  • Nov 2020Machine Learning CertificateIEEE
05 /

About

I'm Mahdi, based in Berlin. I'm fascinated by what happens when code meets the physical world: a robot moving, a sensor making sense of its surroundings, or an AI idea becoming something I can actually test. I study Computational Sciences at Freie Universität Berlin, where I get to work across computer science, applied mathematics, and physics.

Outside work: building combat robots with my team, motorcycle riding, and guitar. I like projects that give me something to figure out—and something to build.

$ career --trace
Teaching programming → robotics team leadership → embedded systems → research & sensor data → AI-assisted firmware → software integration.

also written: Mehdi Bayanloo · مهدی بیانلو

Languages

  • EnglishAdvanced (IELTS 7.5)
  • GermanIntermediate — actively studying
  • TurkishNative
  • PersianNative
06 /

Contact