Proficient with object oriented C++ • Experience in embedded systems design, including use of an RTOS Preferred Additional Skills: Experience troubleshooting on embedded targets Experience in object-oriented software architecture and design Working knowledge of signal processing, control systems, networking Experience with drivers/hardware interfaces including PCIe, 1553, RS232, SPI, I2C, FPGAs, and other unique hardware Knowledge of protocols such as IP, UDP, TCP, EtherCAT, CAN, RTPS/DDS Strong depth of knowledge in programming languages, compilers, and application execution Understanding of operating systems including Linux, Unix, VxWorks, Windows Knowledge of UML diagrams such as class diagrams, component diagrams, state diagrams, sequence diagrams, etc. Knowledge of modeling software: Matlab, Simulink, MATRIXx, Sci-Lab, Octave Scripting languages such as Python, Bash, Perl Familiarity with software configuration management tools, defect tracking tools, and peer review techniques Knowledge of DevOps technologies such as virtualization, Docker, build automation (e.g.