David Downey work email
- Valid
- Valid
- Valid
- Valid
David Downey personal email
- Valid
- Valid
I’m a Senior (25 years) Software Engineer seeking an opportunity that capitalizes on my BS in Electrical Engineering and MS in Computer Engineering, exploits my extensive C/C++ (23 years) programming expertise, and may benefit from my driver (16 years), embedded/RTOS (22 years), Linux (11 years), and network/bus development (21 years) experience.Operating Systems/Bootloaders: Android (SDK and NDK) (3 years), FreeRTOS (5 years), Linux (11 years), U-Boot, UNIX (6 years), VxWorks (4 years), VMS, Windows (7 years), various RTOSs (14 years)Programming Languages: Ada 95, Assembly (Arm, 8051, AMD 29050, MIPS32, Power PC), C (23 years), C++ (8 years), Fortran, HTML, Java (3 years), JSON, MATLAB, various Linux/UNIX shells, Python (5 years), Visual Basic (4 years), XMLNetworks/Busses (21 years): AFDX, ATM, CoAP, DDS, Ethernet (7 years), HTTP, I2C (4 years), MIL-STD-1553, MIPI, MQTT, PCI, PPPoE (4 years), Smart/SIM Card (ISO 7816, PC/SC) (3 years), SNMP (5 years), SPI, TCP/UDP/IP (9 years), USB (4 years), VMEbus, Wireless (LMDS, Wi-Fi 802.11) (6 years)
-
Software Engineering ConsultantBrightaiSan Jose, Ca, Us -
Software Engineering ConsultantSonos, Inc. 2021 - PresentSanta Barbara, Ca, Us -
Sr. Principal Firmware EngineerOn Semiconductor 2017 - 2021Scottsdale, Arizona, UsAP0300 Image Signal Processor firmware• Tri-core Arm Cortex-M3 with a CEVA DSP SoC on FreeRTOS using C & C++- Drivers: Sensor embedded data, sensor trigger, JPEG, spatial transform engine, image pipe extract points, power domains, PLL driver, MIPI Tx and Rx (including D-PHY and embedded data type), and AUTOSAR MCAL ADC.- Brought up rev2 SoC.- Added Arm Software Test Libraries (STL) to three cores.- Code testing, standards, and tools: Fixed MISRA C & C++ violations detected by Klocwork. Implemented CppUTest framework and tests. Wrote C & C++ coding standard. Implemented Uncrustify, Doxygen, and Lauterbach frameworks. -
Software Engineering ConsultantAcer 2016 - 2017Xizhi District, New Taipei City, TwCloud IoT devices and Android companion apps• Production IoT (ARM Cortex-M3) device and Android AAR- IoT (IAR/FreeRTOS using C): Implemented user and device management, persistent memory, state machine, button detection, LED control.- Android AAR (Java): Implemented user and device management, key-value cloud storage.• “IoT” (Raspberry Pi) and Android companion app plant watering demonstration- Single-handedly created entire client-side HTTP/MQTT demo.- RPi (Python): Provisioned to cloud. Measured water flow, light, moisture, temperature, and humidity. Controlled water pump.- Android (Java): Provisioned IoT device. Listed plants. Graphed water flow, light, moisture, etc. over time.• libcoap (MW302 WiFi uController (ARM Cortex-M4) SoC on FreeRTOS using C)- Ported libcoap to platform.- Tested libcoap against ETSI CoAP plugtest, using a ported CoAP client and remote CoAP server.• IP camera (Raspberry Pi using Linux/C)- Upgraded SW from Debian Wheezy (SysVinit) to Jessie (systemd).- Fixed various bugs -
Software Engineering ConsultantUsens Inc. 2015 - 2015San Jose, Ca, UsImpression Pi Virtual Reality Headset• Qualcomm Snapdragon 805 (Android KK) platform using C- Integrated dual MT9M021camera and Hillcrest SH-1 sensor hub drivers. -
Software Engineering ConsultantIntel Corporation 2013 - 2015Santa Clara, California, UsAtom (Bay Trail & Cherry Trail) CPU platforms• Experimental Touch Panel- MATLAB, Linux desktop, and Zynq platform: Prototyped and benchmarked touch panel algorithms.- Windows 8* C DLL: Ported touch panel algorithm.* Visual Basic: Created an app that fetched raw data from an NI ADC card, input the data into the DLL, and displayed the resultant touch data onto a GUI.• Maxim Touch Panel (Android KK & L on Atom (Cherry Trail) platform using C)- Modified SPI-based Maxim touch driver to work on platform.- Adapted two platform GPIOs to serve as driver’s INT and RST lines.• Camera/Sensor Sync (Android KK on Atom (Bay Trail) platform using Java and C)- Linux: Modified kernel to toggle GPIO for each camera frame.- I2C Sensor Hub FW: Modified FW to tag sensor data with a sequence number for each GPIO assertion.- NDK: Modified sensor HAL to accommodate the sequence number field.- SDK: Modified app to match camera frames with sensor data.• Benchmark (Android KK NDK/Linux on Atom (Bay Trail) platform using C)- User space CRC32 on kernel memory vs. kernel CRC32 on kernel memory -
Software Engineering ConsultantCisco Systems 2013 - 2013San Jose, Ca, UsCatalyst Switches• Linux (Cisco’s “Nova” distribution on a Cavium 6230 (MIPS64, 4 core) platform using C):- Fixed memory leak, SNMP, and temperature sensor bugs. -
Software Engineering ConsultantMips Technologies 2011 - 2013San Jose, California, UsMIPS32 and microMIPS RISC architectures• Xilinx Vertex-6/XCVLX110 FPGA platforms using C:- Linux 2.6.35 kernel: Added new microAptiv, interAptiv, and proAptiv processor support. Fixed kernel vs. userspace (Debian and TimeSys) incompatibilities. Added kernel command line options. Added /sys/…/cpufreq/ entry.- Bootloaders* U-Boot: Added platforms. Ported YAMON functionality.* YAMON (MIPS open-source bootloader): Added new processor support. Added debug features (report true memory size via SPD, option to boot uncached, L1 cache diags).* Drivers: Ethernet (PCnet), I2C (PIC32-based), RTCs (MC146818 (PIXX4) and M41T81S)- EZ-USB (Cypress FX2LP USB 8051 (MCS51) Microcontroller/High-Speed USB Peripheral Controller):* Ported Keil C51 code to SDCC.* Added platforms and features (status LED).- Debug: Created scripts that decoded new processors’ out-of-order execution (signaled to a logic analyzer). -
Software Engineering ConsultantAmazon 2011 - 2011Seattle, Wa, UsKindle• Linux (2.6 on a Freescale ARM Cortex A8 (i.MX508) platform using C++):- Diagnostics and bug fixes: Atheros Wi-Fi (AR6003), Freescale power management IC (PMIC) (MC13892), TI E Ink PMIC (SN92009A4), eMMC, mDDR, Freescale accelerometer (MMA8453Q), Wolfson audio codec (WM8962) -
Software Engineering ConsultantCurtiss Wright Controls 2010 - 2010Davidson, North Carolina, UsRQ-4N Global Hawk Unmanned Aerial Vehicle• Linux (embedded WindRiver 3.0 on a MPC8641D platform using C): - Drivers: Discrete IO (Low-Voltage TTL, Differential RS422), EEPROM (CAT24C16), NMEA-0183, Power Supply - Built-In Tests (BIT): EEPROM, Power Supply• VxWorks 6.7 (on a MPC8641D platform using C): - Drivers: Power Supply, NMEA-0183 - BIT: Discrete IO, EEPROM, Elapsed-Time Indicator (ETI), One Pulse Per Second (1PPS), Temperature Sensors (CAT6095 and RTDs connected to LTC2309 ADCs)• Documents (using DOORS): Software Design Description (SDD), Interface Design Description (IDD), Version Description Document (VDD)• Gave several presentations to the customer detailing the system's software design. -
Applications EngineerReal-Time Innovations 2008 - 2009Sunnyvale, Ca, UsData Distribution System Middleware• Linux (embedded LynxOS on a MPC7448 platform using C/C++ and Java): Ported middleware.• VxWorks MILS 2.0 (on a MPC8641D platform using C/C++ and Java): Ported middleware. -
Software/Firmware EngineerSun Microsystems 2005 - 2008Palo Alto, Ca, UsSun Ray Thin Clients• BSD-like embedded RTOS (on a MIPS Au1550 platform using C):- Drivers: Smart card (Philips TDA8007B), Wi-Fi (Ralink RT2561)- Diagnostics: USB- Protocols: PPPoE, Local PIN Entry• UNIX (Solaris on SPARC and x86 using C):- Protocols: PPPoE, Local PIN Entry• Linux (SUSE on x86 using C): Local PIN Entry -
Software Engineering Consultant (Part-Time)Soundside Inc. 2005 - 2005Various Windows apps• Windows XP- App (using C++): Added Win32 graphics to a science app.- Office (using VBA): Added functionality to a utility company's Word form.
-
Software Engineering ConsultantNorthrop Grumman 2004 - 2004Falls Church, Va, UsBQM-74F Unmanned Aerial Vehicle• Proprietary embedded RTOS (on a BAE Systems processor using C): Added software enhancements. -
Software Engineering Team Lead (Consultant)Boeing 2004 - 2004Arlington, Va, UsWideband Gapfiller (Military) Satellite• Led a team of five engineers.• VxWorks (on a PowerPC 750 platform using C):- Drivers: High-Throughput PCI DMA, Interrupt Controller (handled 400 sources)• Windows XP- DLL (using C): Test Station/VxWorks UUT Interface -
Systems/Software Engineering ConsultantHoneywell 2002 - 2003Charlotte, North Carolina, UsAirbus A380 Airliner• Proprietary embedded RTOS (on a AMD 29050 platform using C++):- Protocol: Data Transfer over AFDX• Documents (DO-178B): Flight Management System's ICDs, SRDs, SDDs- Protocols: ICMP, SNMP, Printer- Interface: Input/Output Controller -
Software Engineering ConsultantBoeing 2001 - 2002Arlington, Va, UsWAH-64D Apache Attack Helicopter• Proprietary embedded RTOS (on proprietary system and weapons processors using Ada and C): Added software enhancements. -
Graduate ProjectSan Jose State University 2001 - 2001San Jose, Ca, Us- Ported Linux PPPoE access-concentrator and host source code to VxWorks. -
Software Engineering ConsultantBridgewave Communications 2000 - 2001UsGE60 60GHz Gigabit Point-To-Point Wireless Link• VxWorks (on a MPC850 platform using C):- Kernel: Fixed DHCP bugs, added multiple boot paths- Drivers: Cable amplifier (MAX3510), FPGAs (Xilinx), NVRAM (DS1250W), Temperature Sensors (AD7814 and MAX1617)- Protocol: Envoy SNMP Agent -
Software Engineering ConsultantNortel Networks 1999 - 2000CaShasta Subscriber Service System• VxWorks (on a PowerPC 750 platform using C):- Diagnostics: Ethernet (Intel 21143 ) (internal loopback test), PCI-to-ISA/IDE Xcelerator (PIIX4E), RAM Datapath• Windows NT 4.0 (using LabWindows CVI and Visual BASIC):- App: Automated Functional Tests (Read test scripts, wrote and read commands through a GUI, transmitted and received data through a pair of RS-232 ports, and recorded test results in log files.) -
Software Engineering ConsultantFourelle Systems 1998 - 1999Bandwidth Optimization Engine• Linux ("embedded" Red Hat using C):- Protocol: SNMP agent (CMU's snmpd)- Scripts: Automated Tests (Set up several micro web browsers and micro web servers on several Linux PCs, carved out IP routes between the PCs and the compressor across Ethernet, launched the web servers and browsers, processed and graphed the raw output, and stored the results on a file server.)
-
Software EngineerWytec Incorporated 1996 - 1998LMDS base station and CPE prototypes• Windows NT 4.0- Drivers (DLLs): ADCs, Digital I/O Boards, FIFOs, Parallel Ports, Serial Ports, VXI boards (register and message-based)- Protocol: SNMP (Manager: Using C++ with MFC and HP OpenView’s SDK. Agent: Using C with Windows NT’s extensible agent.)- App: Spectrum Analyzer (C DLLs directly interfaced with ADCs and hardware FIFOs as well as performed an FFT on the collected time domain points. A Visual BASIC GUI displayed the resultant frequency response.)- System: Manager/Base Station Software (Manager: Controlled/monitored as well as downloaded code to base stations via modem using Visual BASIC. Base Station: DOS "embedded" SW using C.)
-
Software Test Engineering ConsultantNational Semiconductor Corporation 1995 - 1996Fortezza and iPower Security PC Card• UNIX (Solaris on SPARC using C): Test Apps (Tested RSA public/private key and triple-DES security.) -
Software Qa Engineering ConsultantAcademic Systems Corporation 1994 - 1995Algebra I & II Multimedia Courseware• Supervised 15 software testers during swing shift.• Drafted test scripts.• Implemented automated tests and bug tracking systems.
-
Project CoordinatorCabletron Systems 1993 - 1993UsNetworking Computer Equipment• Designed Ethernet, Token Ring, FDDI, and ATM LANs and WANs for prospective customers.• Wrote detailed proposals and gave customer presentations outlining my designs.• Coordinated entire network installations, including hubs, switches, cabling, and NICs.• Helped make the company half a million dollars.
David Downey Skills
David Downey Education Details
-
San José State UniversityComputer Engineering -
California Polytechnic State University-San Luis ObispoElectrical Engineering
Frequently Asked Questions about David Downey
What company does David Downey work for?
David Downey works for Brightai
What is David Downey's role at the current company?
David Downey's current role is Software Engineering Consultant.
What is David Downey's email address?
David Downey's email address is to****@****ail.com
What schools did David Downey attend?
David Downey attended San José State University, California Polytechnic State University-San Luis Obispo.
What skills is David Downey known for?
David Downey has skills like Embedded Systems, Device Drivers, Linux, Unix, Embedded Linux, Software Engineering, Debugging, C, Software Design, Embedded Software, C++, Shell Scripting.
Free Chrome Extension
Find emails, phones & company data instantly
Aero Online
Your AI prospecting assistant
Select data to include:
0 records × $0.02 per record
Download 750 million emails and 100 million phone numbers
Access emails and phone numbers of over 750 million business users. Instantly download verified profiles using 20+ filters, including location, job title, company, function, and industry.
Start your free trial