Work Experience
Senior Software Engineer
Cruise Automation (2021 – present)
- Working on acoustics, security, and safety applications
Senior Software Engineer
Cisco Meraki (2015 – 2021)
- Led the development of a new secure tunnel implementation for our device management
- Started and led a 2½ year engineering-wide effort to migrate build system to Yocto
- Brought up and launched Meraki's first cellular security appliances end-to-end (MX67, MX68)
- Developed and launched Meraki's first cloud-based security appliance on AWS and Azure (vMX100)
- Oversaw firmware readiness for Meraki in China
- Revamped security and architecture of Meraki AutoVPN using well-established protocols
- Helped harden defense against reverse-engineering of backend servers using TPM-based solutions
- Set up fuzz-testing of Click Modular Router through AFL fuzzer as a side project
- Helped set up a scale testbed using thousands of vMXes
Software Developer Intern
Cisco Meraki (May 2014 – May 2015)
- Redesigned Meraki VPN to significantly reduce the attack surface
- Implemented VPN encryption, decryption, authentication, and exchange of keys using the IKE protocol
- Worked on a massive virtual testbed for our devices
- Worked on a side project to improve tools internally used at Meraki for code reviews/audits
Undergraduate Research Assistant
University of Waterloo (January – April 2014)
- Worked with Professor Jesse Hoey on Bayesian Affect Control Theory
- Investigated turn-taking agents and group social simulations
Software Developer Intern
Wind River Systems (September – December 2013)
- Extended and improved the user-facing ONS control script functionality for Linux Containers (LXC)
- Worked on the Open Network Software to add functionality and fix reported issues
- Started and led the effort to enable Yocto project compilation using LLVM/Clang
Software Developer Intern
Intel Corporation (January – April 2013)
- Worked on LLVM and Clang to optimize performance on Intel processors
- Optimized parts of LLVM IR and parts of X86 code generation from IR
- Worked on adding Intel Haswell architecture's instruction set to LLVM and LLVM Vectorizer
- Worked on supporting Intel Memory Protection Extensions in LLVM
Security Automation Analyst Intern
Blackberry (April – August 2012)
- Worked on Automated Malware Detection system and researched taint analysis for the system
- Added various analyses to improve malware detection capabilities
- Improved the API for the system to facilitate development of modules for the system
- Learned about various malware detection methods and reverse engineering of binaries
WLAN Software Developer Intern
Siemens Enterprise Communications (September – December 2011)
- Ported to x86 Linux, discovered design limitations and implemented solutions for an IPSec package, racoon2
- Added the ability to encrypt data (through racoon2-managed IPSec) to the WLAN simulation system
- Investigated parallel association of APs/MUs to the controller; Gained experience modifying Linux kernel for debugging
Skill Summary
- Leading technical projects in terms of design, execution, and people management
- Excellent problem-solving skills; very quick learner
- Proficient in C/C++, Python, Ruby/Rails
- Familiar with Go, Scala, Rust, Perl, PHP, Haskell
- Experienced with Linux kernel development and debugging
- Experienced with distributed systems, network programming, concurrency
- Experienced with compiler development
- Experienced in implementing and using various networking and security protocols
- Experienced with various compilers, build systems and debuggers
- Experienced with backend and frontend technologies
- Comfortable with development on Linux/MAC
Education
Computer Science Honours (Co-op)
Combinatorics and Optimizations Minor
University of Waterloo (2010 - 2015)
Scholarships: University of Waterloo President's Scholarship, 2010
Cambridge GCE Advanced Level
Beaconhouse (2008 - 2010)
Projects & Activities
Projects & Contributions
Interests
- Project leadership
- Problem solving
- Robotics
- Cryptography, security
- Embedded systems, sensors, IoT