DSP SOFTWARE ENGINEERING & DEVELOPMENT
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
Job Type: Full-time
Pay: $110,000.00 - $125,000.00 per year
Benefits:
- 401(k)
- Dental insurance
- Flexible schedule
- Flexible spending account
- Health insurance
- Life insurance
- Paid time off
- Tuition reimbursement
- Vision insurance
Schedule:
- 8 hour shift
- Monday to Friday
Application Question(s):
- Proficient in the control of linear and rotary motors for dynamics force, velocity, and acceleration applications
- Experience with software that controls or monitors mechanical systems
- Background in writing 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 basic Linear Algebra highly recommended.
Experience:
- C++ Under Linux or Windows: 5 years (Required)
- DSP Programming: 5 years (Required)
Work Location: Hybrid remote in Bedford, OH 44146