Senior software/computer engineer with a diverse background in both hardware and software. Experienced in:- Embedded systems using the Yocto Project (Linux/FreeRTOS), National Instruments LabVIEW (RTOS and FPGA), and VxWorks 653- ARM-based board bring-up using Yocto, including device tree editing to enabled/disable devices, assignment of interrupts, UART configuration, I2C and SPI devices, GPIOs, and hardware configuration validation- Creation of application software while referencing electrical diagrams to find appropriate GPIOs and other onboard devices and interfaces- Many years of experience in embedded C/C++, from developing fault-tolerant software to creating device drivers from scratch- Safety Critical software development, meeting DO-178 and MISRA standards, including generation of unit tests and artifacts to prove software meets above standards using VectorCAST unit tests- Development of device drivers for on-board devices and via I2C (in both Linux and FreeRTOS), including interrupt configuration and interrupt service routine development- Creation of inter-processor communications routines for multiple-CPU embedded systems (between freeRTOS and Linux)- Eclipse and Visual Studio- LabVIEW development, including production of remotely installed/run RealTime and FPGA projects- Analog/Digital data capture, both using physical test equipment and programmatically via software control using C and/or LabVIEW- Software control of hardware output devices for testing; power and discrete analog signal control. Includes creation of server-side applications allowing developers to work remotely while interfacing with real hardware- Creation of test algorithms using National Instruments LabVIEW, TestStand, C++, and SCPI- Serial communications parsing and formatting- Experience leading teams of 5-10 engineers in an agile environment developing safety-critical software
Listed skills include C#, Java, Embedded Systems, C, and 16 others.