I'm a Software Engineer with over 20 years of experience in product development and with these key strengths: * Strong programming background in C, Python, C++, Bash, assembly * Excellent written and verbal communication, and interpersonal skills * Experience with a variety of tech (virtualization, network,...
Experience
2021 — Now
San Jose, California, United States
Disaggregated NVMe/TCP Storage Clusters, Front-End Team
2020 — 2021
2020 — 2021
Software-Defined Servers, I/O Virtualization Team
2016 — 2019
2016 — 2019
San Jose
Wireless Switch and AP Infrastructure
* Virtualization Tech:
Learn to use QEMU, KVM and libvirt, by setting up and running various VMs
Learn AWS CLI tools: older ec2-utils and newer awscli, to run VX9000 images
Setup and run WiNG build system, first in KVM, then in LXC, using shared source via NFS and bindfs
Learn to use Docker, run WiNG components isolated in containers
Convert WiNG-build LXC to Docker image, and bind-mount the shared source
Use AWS Simple Queue Service for prototype debug agent that runs as container at customer, and communicates via SQS to controller process at work office
* Port WiNG dataplane as VM on new Extreme switch platform:
Upgrade WiNG system to 4.14.30 kernel and drivers, port NIC-dataplane patches
Setup testbed with NX9600 (4x fiber ports) as KVM host, and Ixia traffic generator
Study and learn PCI-passthrough and Intel SR-IOV, define VFs on host passed to ixgbevf in WiNG VM
Reach demo milestone, showing high-thruput NAT routing through WiNG dataplane
* Resolve customer issues as ECRT member
Make bug fixes, analyze customer data, review code, and consult with team
All kinds of bugs: panics, wireless infra, dataplane core mechanisms, NX mfg, HW watchdog, kernel softlockup detection
* Support Aeroscout Locationing Feature
Study and learn WiNG feature implementation, in dataplane and user config
Port feature to several newer model APs (2017), then two more
Setup two Aeroscout test labs, fix cutomer bugs
Contribute to discussion and doc of proposed new auth design
* Work as member of AP7612 development team
Learn Qualcom/Atheros QCA wireless SoC, help port WiNG dataplane radio features
Work with vendor wireless and nand drivers
Study and use kernel mtd and flash subsystems, ubifs, resolve assigned bugs
2014 — 2016
2014 — 2016
San Jose
Acquired by Extreme Oct 2016
* Resolve customer issues as ECRT member:
Make bug fixes, analyze customer data, review code, and consult with team
Assist with data analysis and code review for many customer issues
All kinds of bugs: panics, wireless infrastructure, dataplane core mechanisms, NX
manufacturing support
* Develop and maintain software for NX product features
Port WiNG kernel and driver customizations to newer kernel versions as needed
NX96 throughput tuning: setup Ixia testbed to pump traffic, measure and optimize
IRQ distribution of 4x 10GBps ports across 12 cores on dual Intel Xeon E5 platform
Refactor RAID code used on NX96, NX95, NX75
Mentor engineer doing NX55 diagnostics
* Virtualization Technology
Study and learn to use AWS to run instances, do accounting, manage regions (2016)
Scrape laptop image onto PC, study and learn QEMU to boot and run it as a VM (2014)
2007 — 2014
2007 — 2014
San Jose
Acquired by Zebra Oct 2014
* Resolve customer issues as part of ECRT, rough average 1 to 3 per week (2007..2014)
Make bug fixes, analyze traces, logs, configs and customer data, review code, setup
testbeds, consult and advise team
* Implement features and fix assigned bugs during WiNG dev programs (2007..2014)
Initially a variety of topics like these, but later years focus more on NX products
• support in dataplane for GRE tunnel (routed IP presents as a bridge port) (2010)
• support gigabit fiber port on NX65, includes driver and dataplane changes (2011)
• add ExpressCard support in AP boot loader (2012)
• support HW refresh with programming for new PIC-based part (2012)
* Create NX Product Diagnostic Software (2011..2014)
Develop bootable USB and CDROM images, provides a mfg/diag environment
based on WiNG kernel, used during mfg to install SW, and during HW testing
and diags, supports operations for POE switch, HDD, temp/fan, mfgrom, NCM, PSU
status, LCD, etc
Initially for NX6500 in 2011, this evolved for NX9500, NX7500, and NX9600
* Develop RAID Support for NX products (2012..2014)
Study and learn to use various HW RAID devices (Adaptec and Intel MegaRAID)
Backport newer megaraid driver from later kernel to WiNG
Implement python for WiNG to manage RAID, integrated with CLI and config system
For NX9500 (2012), over time to support NX75 and NX96
Responsible for RAID feature, through test and release of WiNG 5.5 and 5.7,
including manufacturing support, and resolving customer issues
* NX Platform Lead Engineer, for NX75 (2013) and NX96 (2014)
Develop WiNG and diagnostic SW to support new copper and fiber ports, new RAID
controllers, PSU status detection, LCD display
Port NX diagsw to new platforms, and resolve various needs and issues from HW test,
manufacturing, and service diagnostics
Lead resolution for all WiNG issues found NX platforms in WiNG 5.5 and 5.7 programs
Education
California Polytechnic State University-San Luis Obispo