Harry Zhao
12+ years in automotive low-level software, from ECU drivers up to AutoSAR CP platform architecture. I stand up the whole development chain from zero — build flows, test scripting, Git servers, Jenkins CI/CD, and chip-level functional safety on TC397 / S32K314. I also put AI agents into the real engineering flow: a self-hosted multi-node OpenClaw platform turns build, release, operations and content production into pipelines that run on their own.
Core Expertise
/ what I buildBSWAutoSAR BSW Development
End-to-end configuration and implementation of the communication stack and basic software — OS task scheduling, interrupt management, diagnostics and network management — with the ability to debug cross-module issues.
- Com Stack: CanSM / CanNM / Com / Dcm / CanTp / PduR / CanIf
- BswM action lists, EcuM, E2E protection, Dem diagnostics
- Hands-on with Vector, ETAS, Neusoft and Puhua toolchains
MCALMCAL & Chip-Level Functional Safety
Configuration of CAN-related and chip-level safety modules, with delivery experience on Infineon Safety Pack and NXP SAF.
- Infineon TC397 / NXP S32K314 functional safety development
- GTM / MultiCAN / QSPI / DMA / GPIO / Calibration IO
- Ethernet PHY / MAC configuration and driver adaptation (100M / 10M Base-T1S)
ETHAutomotive Ethernet / DoIP & OTA
Full path from PHY driver to TCP/IP stack up to the diagnostic layer: Ethernet low-level driver adaptation, TCP/IP stack bring-up, open-source DHCP porting, plus DoIP stack integration and Ethernet OTA flashing.
- 100M / 10M Base-T1S Ethernet low-level driver development and adaptation (PHY config, MAC TX/RX, link management)
- TCP/IP stack bring-up: ARP / IP / ICMP / UDP / TCP; ported an open-source DHCP implementation
- DoIP (ISO 13400) stack integration: SoAd ↔ DoIP ↔ Dcm end to end, three PDU-ID spaces mapped and TX confirmations wired back
- Ethernet OTA: flashing the ZCU itself and other nodes over Ethernet instead of CAN
PLATFORMDevelopment Platform & Build System
Team-level development environments built from scratch: build flow, toolchain adaptation, memory layout and platform code frameworks — turning "it compiles" into "it compiles for anyone, anytime".
- Python + SCons build environment for Tasking / GHS / GCC
- Makefile, link file and memory map design and maintenance
- MCU software integration: application + BSW, delivering BSW libs
CI/CDJenkins Automation Pipelines
Independently deployed and configured Jenkins servers, building the automation path from commit to releasable artifact and removing version drift caused by manual packaging.
- Automated build, packaging and release orchestration
- Triggering integrated with Gerrit / Gitea code servers
- Multi-compiler, multi-target build matrices
GITGit Servers & Code Management
Docker-based Gerrit and Gitea servers with branch/repository strategies, permission models and review workflows, wired into CI.
- Gerrit / Gitea (Docker) deployment and operations
- Repository split strategy, permissions and review policy
- Plastic SCM, SmartGit and related tooling
AI & AGENTAI Agent Platform & Automation
Self-hosted OpenClaw with multi-agent orchestration: Gateway deployment, sub-node provisioning and pairing, and compute offload across machines — plus MCP integrations, with Skills and cron automating engineering, ops and release workflows.
- OpenClaw Gateway deployment and ops; sub-node creation, pairing and compute offload
- MCP integrations (Feishu / GitHub / Cloudflare / QNAP / Google Workspace) and Skills development
- Cron automation, browser automation over CDP, systemd service ops and snapshot watchdog; n8n workflows
Tech Stack
/ daily driversExperience
/ 12y 9m in automotiveEmbedded Software Expert
Xingyu Automotive Lighting Systems 2023.02 — Present- BSW development on Puhua and Neusoft AutoSAR toolchains: OS task scheduling and interrupts, Com Stack (CanSM / CanNM / Com / Dcm / CanTp / PduR / CanIf), BswM communication action lists, E2E algorithms and EcuM.
- AutoSAR MCAL configuration covering CAN modules and chip-level functional safety, with Infineon Safety Pack and NXP SAF experience.
- Ported FreeRTOS to RH850 and implemented task runtime and CPU load monitoring.
- Built a Python + SCons build platform supporting Tasking, GHS and GCC.
- Deployed Jenkins and established the CI/CD architecture for automated build, packaging and release.
- Docker-based Gerrit and Gitea code servers, code management policy and Jenkins integration.
- MCU software integration and delivery of BSW libs for joint application/low-level development.
- 10BASE-T1S Ethernet: configured TI DP83TD555J and integrated lwIP on TC397 with ARP / UDP / ICMP / DHCP server.
- Automotive Ethernet and DoIP: adapted 100M / 10M Base-T1S drivers, brought up the TCP/IP stack and ported open-source DHCP; integrated the DoIP (ISO 13400) stack to enable Ethernet OTA flashing of the ZCU itself and other nodes.
Embedded Software Expert
Inceptio Technology 2021.05 — 2023.02- AutoSAR software development: BSW Dem, Dcm, Com, LdCom, PduR and MCAL.
- Build environment and Makefile scripting.
- HAL abstraction layer architecture and implementation.
AUTOSAR Software Engineer
Chuangshi Automotive 2020.12 — 2021.06- Low-level complex drivers for Infineon TC397-based ultrasonic radar (Shanghai, Pudong).
Software Engineer
Delphi (China) Technology R&D Center 2017.01 — 2020.12- HAL and HWIO layer development for gasoline engine ECUs on Infineon TriCore / Aurix: GTM, MultiCAN, QSPI, DMA, GPIO, Calibration IO.
- GNU-based build flow development, Tasking compiler configuration, ECU memory map design, Makefile and link file authoring.
- ECU boot software design, including ECU-side UDS flashing plus Python / C# flashing scripts.
- Factory test (testability) software to validate peripheral chip functionality.
- Low-level software version management and release (Plastic SCM, SmartGit); test tooling in C# / Python / Windows BAT.
Low-Level Software Engineer
Jianshi International Automotive Design (Beijing) 2015.09 — 2016.12- SPI / CAN / PWM / interrupt / timer drivers and abstraction layer software on Infineon TriCore.
- Delivered low-level software for an in-house TriCore 1782 motor controller through vehicle commissioning; wrote drivers for a TI28035 DCDC controller.
Electronic Components Engineer
Brilliance Automotive Engineering Research Institute 2014.06 — 2015.09- Vehicle electronic switch development and DV test planning, keeping parts on schedule through PT / OTS phases.
- Zhonghua V3 vehicle switch development, from feasibility study to pre-production.
Selected Projects
/ selected workXingyu DLP Lighting Platform
A new class of lighting controller platform combining conventional light control with communication middleware for digital projection elements; since 01/2026 also owning ZCU (zone control unit) software. As platform software lead, I own the architecture, the BSW design and the whole engineering toolchain.
- Platform: built the build platform from scratch in Python + SCons, hiding Tasking / GHS / GCC differences; unified Makefile, link file and memory map generation so one codebase builds for many models and chips — onboarding became a config change, not a code change
- Architecture: led the layered architecture (application / RTE / BSW / MCAL), defining module boundaries and interface contracts; delivered the platform framework and config templates so application and low-level teams work in parallel
- BSW design: designed and configured MCAL, CanIf, CanTp, PduR, Com, BswM, EcuM, CanSM and CanNM; BswM action lists for power-up, sleep and wake-up; E2E protection and Dem diagnostics
- ZCU software (from 01/2026): low-level software for a zone control unit in the central-compute + zone architecture — BSW integration, I/O abstraction and communication forwarding, reusing the DLP build platform and BSW baseline
- Toolchain: Docker-based Gerrit / Gitea with review policy, Jenkins CI/CD across compilers, communication integration test scripts
- Ethernet and DoIP (Ethernet OTA): wrote and adapted the 100M / 10M Base-T1S low-level drivers, brought up the TCP/IP stack and ported open-source DHCP; integrated the open-source DoIP (ISO 13400) stack, remapping the three PDU-ID spaces across DCM / SoAd / DoIP, so the ZCU itself and other nodes flash over Ethernet instead of CAN
Inceptio Autonomous Driving Domain Controller
Multi-platform commercial vehicle ADAS domain controller with Dongfeng Commercial Vehicle, L2 in mass production. I owned the MCU-side architecture and abstraction layers, with the goal of decoupling upper-layer algorithms from the underlying hardware.
- Abstraction layer: designed and implemented the HAL unifying CAN, automotive Ethernet, ADC, GPIO and watchdog access, so upper-layer logic knows nothing about chip or board differences — one codebase reused across hardware revisions
- Architecture: contributed to the MCU-side architecture, drawing boundaries between boot, diagnostics, communication and supervision; defined interface contracts and init sequencing so application and BSW evolved in parallel
- Communication and diagnostics: AutoSAR BSW and Com Stack (MCAL / CanIf / CanTp / PduR / EthIf / Com / LdCom), Dem diagnostics; CAN and automotive Ethernet in parallel
- Build and delivery: build environment and Makefile scripting for multi-hardware-version builds, baselining and delivery
Delphi GDI Direct Injection
Direct-injection controllers on Aurix TC265D and TC367DP. The core of the work was complex device drivers (CDD) and the HWIO abstraction layer, meeting microsecond-level injection timing requirements.
- Complex drivers: wrote CDDs that bypass the BSW and drive GTM, MultiCAN, QSPI, DMA and interrupt controllers directly, meeting microsecond jitter budgets for injection and ignition timing; hardened against register-level timing, concurrency and fault injection
- HWIO abstraction: wrapped pin, channel and register access behind one interface, hiding TC265D / TC367DP differences so application code migrated unchanged
- Boot and flashing: ECU boot software and ECU-side UDS flashing, with Python / C# host flashing and test scripts
- Build and memory layout: customised the GNU build flow and Tasking settings, designed the ECU memory map, authored Makefiles and link files
- Factory test: testability software validating peripheral chip functionality for end-of-line test
Jianshi Motor Controller (G20 program)
Motor controller driver development on TriCore 1782.
- TJA1145 SPI configuration, AT25128 EEPROM driver, GPTA PWM with dead-time
- Vehicle CAN protocol implementation, message parsing and fault handling; CAN network management module
- Build environment setup, system integration and final software release
DCDC Controller BootLoader
BootLoader driver development for a TI28035-based DCDC controller.
- TJA1145 SPI configuration, BootLoader CAN driver, UDS-compliant FLASH driver
- BootLoader/application FLASH partitioning with .cmd files; UDS protocol porting and debugging
Zhonghua V3 Vehicle Switches
Vehicle electronic switch development for the Zhonghua V3 compact SUV.
- Owned switch development and part status through PT / OTS phases
- Planned DV testing to validate component performance
Education · Certification · Languages
/ backgroundEDUEducation
- Jilin University (Project 985 / 211) · Measurement Technology & Instruments · M.Eng. · 2011.09 — 2014.06
- Jilin University (Project 985 / 211) · Microelectronics · B.Eng. · 2006.09 — 2010.07
CERTCertification
- Functional Safety Engineer — TÜV SÜD certified, ISO 26262
- Languages: English (CET-6) · Mandarin (native)
Let's talk automotive software
If you need an embedded engineer who can go from low-level drivers to platform tooling — and actually land CI/CD — feel free to reach out.