Overview
What I study
I study how to make computer systems — especially embedded systems found in cars, aircraft, industrial equipment, and everyday appliances — safer, more reliable, and easier to trust.
My research spans system software (RTOS, scheduling, resource management), verification and testing methods (including fuzzing and formal approaches), safety and security analysis, and assurance frameworks. I collaborate with both academic researchers and industry engineers to bridge theory and practice.
Overview
Why this matters now
In the past, many embedded systems worked mostly on their own. Today, they are often connected to networks, cloud services, and other systems around them.
Because of that change, it is no longer enough to study only one device at a time. We also need to understand larger systems made from many parts that affect one another.
Overview
Current topics
Current topics include mixed-criticality service orchestration for software-defined vehicles (SDV), blockchain-based IoT access control with zero-knowledge proofs, concurrency-aware fuzzing, and resilience engineering for Mobility-as-a-Service (MaaS) using multi-agent reinforcement learning.
A common goal across these topics is to support systems not only when they are designed, but also while they are being used and updated over time.
Overview
How this research is approached
One approach is to focus on a single embedded system and build it carefully from components whose behavior is well understood. This makes it possible to reason step by step about performance and quality.
Another approach is to study larger systems that include unknown or changing parts, as well as systems that interact with people and society. In those cases, we try to keep the system in as good a state as possible and explain what is happening even when perfect understanding is impossible.