Motor Control Software Engineer

Joby Aviation Joby Aviation · Robotics · San Carlos, CA · Software

Software engineer for motor control systems in electric-powered, fly-by-wire aircraft, focusing on architecture, design, and implementation. Responsibilities include sensorless control, closed-loop position control, optimization using MATLAB Simulink, and testing.

What you'd actually do

  1. Position sensorless control of permanent magnet synchronous motors; including advanced inverter pulse-width modulation, position and velocity estimation, current control, fault detection, and efficiency optimization
  2. Closed loop position control of servo actuation systems; including redundant position sensors and multi-phase motors controlled from separate servo drives
  3. Optimization of motor controls using MATLAB Simulink with hand coding capability
  4. Assure inverter and motor systems meet performance requirements via controls algorithm development, implementation and testing
  5. Oversee dynamometer testing and interpretation of data for controls development, validation and improvement

Skills

Required

  • University degree in computer science, computer engineering, or electrical engineering
  • 3+ years of full-time industry experience
  • Expert knowledge of ac motor control design principles and applications including field oriented control, PWM strategies, current control
  • Expert knowledge of MATLAB Simulink model-based design for controls development
  • Experience with basic electronics debugging tools: oscilloscope, logic analyzer, power analyzer
  • Basic understanding of version control technologies

Nice to have

  • Master of Science or Doctoral degree in electrical engineering or mechanical engineering focusing on power electronics and/or motor controls
  • 5+ years of full-time industry experience
  • Track record of working on safety critical systems and knowledge of safety standards
  • Experience in position sensorless field oriented control development from design to validation
  • Knowledge of control system design and principles of feedback control including PID control and advanced control techniques and their applications in the servo systems
  • Knowledge of creating mathematical models of servo systems for analyses and simulations
  • Knowledge of electro-mechanical systems focusing on interactions between electrical and mechanical components in servo systems
  • Knowledge of real time bare-metal firmware development
  • Knowledge of object-oriented programming methodology and multi-layered system architectures
  • Knowledge of multi-threaded systems
  • Experience with modern integrated development environments and debuggers
  • Exposure to other languages such as: python, C#, C, SQL

What the JD emphasized

  • safety critical systems