Sign in

Driver Python

May 14, 2020

Contact this candidate


Jeremy McNicoll Open to relocation (worldwide)

Canadian Citizen US Permanent Resident (green card) EXPERIENCE

RED HAT INC. SOFTWARE ENG. (KERNEL) Anywhere, USA Sept. 2015 – Present

• Designed / developed PCIe based video capture card device driver

• Automated Docker, Kubernetes via Python

• Mainlined kernel support for Google Nexus 5X/6P (ARM Cortex A57 & A53) phones


• Designed, developed low latency zero overhead shared memory driver with ION and dmabuf

• Customization of Yocto & Buildroot distributions APPLE INC. FIRMWARE ENG. Cupertino, CA Dec. 2012 – Sept. 2015

• Designed and developed device drivers for: USB, I2C, Serial(UART), Bluetooth (IOS and OSX)

• Implemented and supported full SPI driver for touchpad and keyboard input

• Designed USB to Serial (UART) translation / abstraction layer

• Increased factory productivity via I2C driver for setup and diagnostics

• Debugged and resolved, highly complex system level issues (detailed fault isolation & perf tuning) QUALCOMM INC. LINUX SW APPS ENG. (KERNEL) San Diego, CA Sept. 2011 – Dec. 2012

• Delivered customer and internal training on new and emerging technologies

• Assisted OEM’s with debugging critical issues using JTAG (Trace32) WIND RIVER LINUX KERNEL / BSP DEVELOPER Ottawa, ON Canada July 2007 – Aug. 2011

• ModiĆed Linux kernel (paravirtualized) to run as guest for Wind River Hypervisor (type 1)

• Developed, designed and maintained new device drivers e.g. shared memory, UART, I2C, USB, ethernet

• Early board bring up running on various boot loaders as well as Linux running on Hypervisor

• Low level debugging of bootloaders and Linux kernel using JTAG / ICE, running natively and on hypervisor

• Pre-silicon board bring up using hardware simulator (Simics)

• Designed, developed and maintained BSP for Wind River SBC8265 & SBC8548 reference board consisting of U-Boot (bootloader) & Linux kernel

MARCH NETWORKS SOFTWARE DESIGNER Ottawa, ON Canada July 2005 – July 2007

• Developed and maintained video analytic component for embedded digital video recorder and related client software

• Linux development on a wide variety of core system functionalities, ranging from shell scripts to writing application level software for an embedded video server SKILLS

PROGRAMMING LANGUAGES C/C++ (gcc/clang), GoLang, ASM (Intel, ARM, PPC), Java, MySQL, NoSQL SCRIPTING TOOLS Python, Perl, Lua, BASH, CSH, TCL/TK VIRTUALIZATION & SIMULATION KVM, QEMU, Simics, Containers(Docker Kubernetes), VMWare, XenServer BUILD & MISC TOOLS GIT(GitHub, GitLab, Gerrit), Jenkins, SVN, Jira, Buildroot, Yocto PROTOCOLS I2C, I2S, SPI, UART, TCP/IP



CARLETON UNIVERSITY BENG COMPUTER SYSTEMS Ottawa, ON Canada 2005 Updated on 1st May 2020

Contact this candidate