DUTIES and RESPONSIBILITIES • Cooperate with customers and MB engineers (in-person or virtual) to understand software jobs-to-be-done and then develop software product specs (statement of requirements) for MB test & measurement products (www.mbdynamics.com) •• Develop and implement DSP control algorithms and software for multi-axis shaker tables including time history replication of road load data, random vibration profiles, and sine tests. • Maintain source control and software backups; troubleshoot compile and executable issues;
prepare internal and user-documentation including config, ini, and readme files • Assist in installation, training, Alpha/Beta testing of software products • Maintain and support existing vibration control codebase on MB's Eagle platform • Develop proficiency in the control of linear and rotary motors for dynamic force, velocity,
and acceleration applications; develop GUIs for their control
SKILLS and BACKGROUND • Background in writing Digital Signal Processing (DSP) code to implement multi-input, multi-output control of dynamic + systems including developing equations of motion of rigid bodies, multi-axis control algorithms, and calculation of drive files for multiple actuators to achieve a desired multi-axis response. • Knowledge of algorithms and methods for Digital Signal Processing including familiarity with filter design, Fourier processing, and the complex representation of phase-magnitude relationships. Knowledge of basic Linear Algebra is highly recommended. • Proficiency in C++ within the Windows Visual Studio Environment • Familiarity in C++development for Linux • TCP/IP Protocol knowledge as related to inter-process and machine to machine communication • Familiarity with cross compilation from Visual C++ to Linux or Linux C++ development a plus. • Self-motivated drive and a sense of urgency and doggedness to accomplish objectives beyond expectations and with minimal supervisory oversight • Proven experience with software that controls or monitors mechanical systems • Respect for software product quality, cost, ease-of-use, high reliability, lead time, maintainability, and supportability • Thrives working in a small company, interactive team environment