Software Engineer
Dandy Cheng
Bayan Lepas, Penang, Malaysia
Software Engineer with 4+ years of experience building and maintaining low-level systems software in C/C++, including Linux kernel modules, device drivers, and serial/GPIB interfaces. Deep Linux kernel debugging experience on Linux and LinuxRT targets. AI Champion and Innovation Committee member who integrates AI-assisted development (GitHub Copilot, multiple LLMs) into engineering workflows and has delivered multiple internal technical sharing sessions to R&D.
Professional experience
Experience
-
Staff Software Engineer (IC2)
National Instruments (now part of Emerson)
- Own the NI-Serial and NI-488.2 (GPIB) drivers, and maintain NI-VISA, including Linux kernel modules written in C. Manage third-party dependencies, triage defects, and run regression tests across supported kernel versions.
- Diagnosed and resolved a critical serial driver compatibility issue that was blocking customers' kernel upgrade paths, restoring uninterrupted upgrades and protecting the installed customer base.
- Debug Linux kernel and driver issues remotely on Linux and LinuxRT targets using GDB and Visual Studio Code, isolating kernel-level and hardware-interface defects.
- Use AI-assisted development tools (GitHub Copilot) in daily driver development and debugging, selecting different LLMs based on task needs and token cost to keep usage efficient.
- Applied AI skills to build internal development tools that cut the effort for a development task from about 1 day to about 1 hour.
- Serve as AI Champion and Innovation Committee member, advocating responsible adoption of AI tools across the engineering organization.
- Delivered several internal technical sharing sessions to the R&D organization on Linux debugging techniques.
- Support customer issues and escalations involving CompactRIO and PXI chassis hardware with LabVIEW-based test and measurement systems, including but not limited to Aerospace, Defense, and Government customers.
-
Software Engineer (IC1)
Motorola Solutions
- Developed and maintained screen-based application features in C++ for mission-critical Motorola APX two-way radios, including the channel cloning feature, within an Agile team.
- Designed and built bash utility scripts adopted department-wide to automate routine development tasks, reducing repetitive manual work.
- Performed code reviews to catch defects early and enforce coding standards, improving code quality and consistency.
- Authored unit tests for critical components to raise test coverage and catch regressions before release.
- Investigated and implemented targeted performance improvements to existing C++ code.
Technical skills
Skills
- Languages
- CC++PythonJavaScript (React)Bash
- Systems & Embedded
- Linux Kernel ModulesLinux Kernel DebuggingDevice DriversLinuxRTUARTRS232RS485GPIB
- Debugging & Tooling
- GDBRemote DebuggingVisual Studio CodeGitGNU MakeDocker
- AI-Assisted Development
- GitHub CopilotMulti-LLM Workflows (Claude and others)LLM Token OptimizationAI Skills / Agent ToolingModel Context Protocol (MCP, personal projects)AI Tool Adoption & Enablement
- Testing & Quality
- Unit TestingRegression TestingCode ReviewRESTful APIPostman
- Hardware Platforms
- CompactRIOPXI ChassisLabVIEW
Education
Education
Bachelor of Computer Science in Software Engineering
INTI International University
First Class Honours
CGPA 3.55 / 4.00
Awards & achievements
- Dell Hack2Hire Competition — 1st Place
- Toastmasters International Speech Contest — 3rd Place
GitHub
Repositories
Loading repositories from GitHub…