Wave Computing is revolutionizing the deep learning industry by enabling organizations to drive better business value from their data with its roadmap of WaveFlow™ computing systems. The company’s innovative system solutions based upon dataflow technology provide high-performance training and high-efficiency inferencing at scale, bringing deep learning to customers’ data wherever it may be. Wave Computing was named a Machine Learning Industry Technology Innovation Leader by Frost & Sullivan, and a Top 25 Artificial Intelligence Provider by CIO Application Magazine.
Wave Computing is seeking a Software Engineer to develop system software for Wave products. In this role you can use your RTOS experience to develop multi-threaded software to accelerate the pace of Machine Learning in high-performance data centers using heterogeneous equipment. You’ll also be deeply involved in development, unit testing and release of the product as an appliance.
What You Will Be Doing
· You’ll develop an understanding of the architecture of Wave’s Dataflow Processing Unit custom SoC and the overall system architecture. You’ll be responsible for developing Linux kernel system software to integrate various modules and define a common interface pipeline for modules to communicate at runtime.
Desired Skills and Experience
· 8+ years experience of software development on multi-platform systems
· Expert in C/C++ coding with good understanding of C++ 11 and/or C++ 14
· Competent in multi-threaded programming, synchronization, latency minimization, buffer and memory management
· Good understanding of various system communication and messaging protocol
· Competent in scripting languages, e.g. Python and shell scripting
· Experience with development and build tools like GitLab, Jira, etc.
· BS in Computer Science or equivalent, advanced degree preferred