Lead Embedded Software Engineer
Principal Software Architect for the NEXSYS LYNK (DCU120) product line. (https://www.appliedavionics.com/lynk.html)Responsible for all aspects of software definition and implementation including:-Overall system architecture including the BSP, HAL, RTOS, Application Layers, and PDIT definitions.-Requirements processes including gathering, writing, and reviewing. -Implementing MISRA compliant code in C for STM32 ARM processors.-Writing bare metal device drivers for system peripherals, SPI, and I2C devices.-Ensuring all code is compliant with DO-178C DAL A for avionics systems.-Integrating Micrium ucOS-II RTOS.-Defining and implementing overall system test framework and strategy. Started an embedded software development team from scratch.-Interviewed potential team members and made hiring recommendations.-Assigned work priorities and reviewed code as needed.-Coordinated work with outside software vendors.-Provided training and mentoring to other software engineers.Implemented core tools for a DO-178C DAL A development process including: -Jenkins server for Continuous Integration. -VisualSVN for source code control. -VisualGDB for embedded software development. -Grammatech Codesonar for static analysis. -VectorcastQA for dynamic analysis, structural coverage, and MC/DC testing. -Googletest for unit testing. -Doxygen for code documentation. -Jira for project management + requirements management. -Confluence for project coordination.