Khaled Elnaggar

Embedded Systems & Software Engineer

I build secure, low-power systems that bridge hardware and software—from STM32/MSP430 firmware and NFC communication to mobile apps, cryptography, and backend services. Recently, I’ve been focusing on secure wireless systems (BLE/UWB/NFC) and automotive-grade embedded software. Currently studying an MSc in Software Technology & Embedded Systems at TU Graz.

About Me

I'm a computer science engineer with a passion for low-level programming, operating systems, and embedded systems. I enjoy digging into how systems work under the hood, from memory management to scheduling policies.

My projects vary across multiple areas: implementing a custom malloc/free allocator in C, extending the SWEB OS with thread scheduling and context switching, and building educational RTOS primitives on MSP430. I’ve also explored stereo camera calibration and rectification using OpenCV, backend and mobile integrations, and NFC mailbox-style communication for secure data exchange between devices.

KE

Skills & Technologies

Embedded & Firmware

C (CMSIS/HAL)C++STM32 (L4/L4x6)MSP430GPIO/I2C/SPI/UARTTimers/RTOSDMABootloadersNFC (ST25DV)

Mobile, Backend & Vision

Flutter (Android/iOS) Kotlin / Swift Firebase/AuthREST APIsOpenCVPython

Security & Tools

Cryptography (RSA, signatures)CMOX / X-CUBE-CRYPTOLIBGitLinuxGDB/J-Link/ST-LINKCI basicsTesting & Debugging

Featured Projects

Brake-by-Wire System (AURIX)

Implemented a brake-by-wire control system on an Infineon AURIX platform as part of an Embedded Automotive Software course. Designed task-based control logic, signal handling, and fault-aware behavior with deterministic timing constraints. Validated the system on real hardware via recorded demo tests.

Infineon AURIX C Automotive Software RTOS Tasks Timing & Scheduling Safety-Critical

Embedded Contact Tracing (BLE + UWB)

Built a contact-tracing system on Contiki-NG using BLE advertising/scanning and GATT. Estimated proximity via calibrated RSSI and refined distances using DW1000 UWB ranging (with fallback on failures). Implemented time-based contact tracking, best-friend ranking, and contamination state propagation.

C Contiki-NG BLE (Adv/Scan/GATT) RSSI UWB (DW1000) Event-driven

NFC Smart Lock (Encrypted Mailbox)

End-to-end NFC access system: Android app writes encrypted commands to an ST25DV64KC mailbox; STM32L476 verifies signature, decrypts, actuates lock, and replies with encrypted status. Energy-harvesting experiments for actuation.

STM32L476ST25DV64KCAndroid (Kotlin)RSA/CMOXHAL/CMSIS

Educational RTOS on MSP430

Mini RTOS for MSP430: dispatcher, kernel entry, interrupts, events and wait-until syscalls. Focus on deterministic timing, context switching, and testing.

MSP430CInterruptsScheduling

Dynamic Memory Allocator (malloc/free)

Implemented a custom heap memory allocator in C, supporting malloc, free, and realloc with efficient block splitting and coalescing. Focused on fragmentation management and performance trade-offs, tested with real workloads to ensure correctness and stability.

CMemory Management Data Structures

Operating System Development (SWEB OS)

Extended an educational operating system with core OS functionality. Implemented thread creation, scheduling, and context/thread swapping to allow multitasking. Worked on process management, virtual memory handling, and synchronization primitives. Gained hands-on experience with low-level x86 architecture, interrupt handling, and kernel debugging.

C++x86Operating SystemsThread SchedulingContext SwitchingVirtual Memory

Experience

Open-Source Contributor

Catrobat (Catroid)
2024 – 2025

Contributed to Android app features and bug fixes; improved developer docs; collaborated with maintainers on CI and UX polish.

Student Trainee (Software Development)

AVL List GmbH
2023 – 2025
  • Building modular application components and workflows integrated into the larger Excite framework
  • Developing frontend and backend logic for simulation parameter management, UI interactions, and data visualization
  • Integrating simulation engines with higher-level tools (e.g. for model setup, input validation, result display)
  • Ensuring software robustness through testing, error handling, and performance tuning
  • Collaborating with domain experts (mechanical, simulation engineers) to align software with physical modeling requirements
  • Working on modular architecture, plugin systems, and ensuring plug-and-play extensibility

Embedded & Wireless Systems Projects

TU Graz · Academic & Independent Projects
2023 – Present

Developed embedded firmware and wireless systems on STM32 and MSP430, including BLE advertising, scanning, and GATT services, NFC mailbox communication, cryptographic verification, and RTOS primitives in resource-constrained environments.

Software Projects

Personal & Freelance
2021 – Present

Android apps, backend APIs, and computer vision utilities. Focus on clean interfaces and security-first design.

Education

MSc Computer Science

TU Graz (Graz University of Technology)
2025 – Present

Major in Software Technology, minor in Embedded Systems. Focus on embedded software, wireless systems, and security-critical system design.

BSc Computer Science

TU Graz (Graz University of Technology)
2021 – 2025

Strong foundation in systems programming, operating systems, and low-level software development.

Let's Work Together

I'm always interested in new opportunities and exciting projects. Let's discuss how we can bring your ideas to life.

💼LinkedIn
🐙GitHub
✉️E-Mail