Motor Control Engineer

Location: Oxnard CA

Software Engineer 4 designs, develops, maintains, tests, and evaluates software for CNC computer control system under limited supervision of the Software Engineering Supervisor. This level of engineering calls for an experienced engineer with expertise in particular area(s) (specific for particular job differentiations).

Essential Duties and Responsibilities include the following. Other duties may be assigned.

  • Proposes problem solutions through analysis, problem definition, requirement generation and implementation of proposed solutions.
  • Creates documentation and supporting diagrams supporting solutions.
  • Prepares and installs source code into source control by determining compliance of software changes with system specifications, programming best practices, and ensuring these changes are free from defects.
  • Improves workflow by conducting analysis and recommending changes in policies and procedures to management.
  • Creates bug reports through investigation and by collecting, and analyzing data, and providing clear documentation on reproduction of observed issues.
  • Must be an active coder
  • Communicate technical ideas clearly, able to use Microsoft Office applications when appropriate.
  • Employees are expected to follow instructions, procedures and to escalate any issue impacting workflow, quality, etc.
  • Employees must exhibit honesty and integrity as well as demonstrate adherence to rules, procedures and policies.

Qualifications

To perform this job successfully the candidate must be able to perform each essential duty adequately. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

Minimum Qualifications

  • 5+ years of coding experience.
  • Expertise in Java, C and C++.
  • OOP (Object Orientated Programming) expertise.
  • Experience reading and writing bash and batch scripts (basic).
  • Comfortable working in Windows and Linux environments. Linux is not a requirement, but will have to learn.
  • Experience with inter-process communication (Google Protocol Buffers is a plus.
  • Experience in writing and debugging multi-threaded applications.
  • Strong understanding of real time systems, XML , file systems, networking, multi-threaded applications, computer graphics, linear algebra, calculus, geometry, and trigonometry, human-computer interaction/User Interface design, design patterns, encryption, hashing, checksums, and CRCs (Cyclical Redundancy Check).
  • Communicate technical ideas clearly, able to use Microsoft Office applications when appropriate.
  • Experience in reading and writing technical requirement documentation.
  • Experience working with source-control system.
  • Experience with Eclipse/Visual Studios.
  • Can reverse engineer source code written in C and generate requirements, and write equivalent code in a higher level language.

Education

Master’s Degree MA/MS/MBA/MFA from a four-year college or university is required, plus
additional related experience, training and/or equivalent combination of education and
experience.

Preferred Major

  • Computer Science
  • Computer Engineering
  • Electrical Engineering