Skip to main content

Firmware Engineer Level 3

Lyndhurst, OH
Permanent

Posted

Job Summary

Join our world-class industrial automation company in Mayfield Heights, OH, as a Senior Embedded Software Engineer. You will be responsible for designing, implementing, and maintaining real-time embedded software while collaborating with cross-functional project teams across multiple locations around the globe. The environment is dynamic and requires a highly motivated individual. You will work on complex control system products utilizing state-of-the-art technology. Become part of a team that believes in knowledge sharing, innovation, continuous learning, collaboration, and a commitment to best-in-class practices and technology.

You will report to the Manager, Embedded Software.

Key Responsibilities:
  • Design, implement, and test software that communicates to other parts of the product or system via APIs, services, or protocols.
  • Operate across the entire software development life cycle as part of an Agile development team: requirements management, design, implementation, test, release, and maintenance.
  • Directly apply technical skills to assigned tasks, having some complex features. Use proven software design techniques, procedures, and criteria to complete a sequence of related engineering tasks in accordance with the company's quality guidelines.
  • Participate in peer reviews of documents, designs, code, test cases, and user documentation.
  • Perform unit or functional testing of developed software to ensure correct operation per functional requirements and compatibility with other components in the system.
  • Continuously improve software development capabilities by keeping abreast of current trends in software development practices, technology utilization, and development tools.
  • Effectively collaborate with others through mutually supportive professional relationships, open and direct communications, and respect. Able to cope with and leverage personality differences and differences of opinion.
  • Coach less experienced engineers on design and implementation techniques.
Knowledge/Skill:

An experienced professional with a full understanding of the area of specialization resolves a wide range of issues in creative and effective ways.

The Essentials - You Will Have:
  • Bachelor's Degree or equivalent relevant experience
The Preferred - You Might Also Have:
  • Typically requires a minimum of 5 years of related experience. Embedded development experience.
  • Bachelor's degree in Computer Engineering, Software Engineering, or Electrical Engineering with a Computer Science emphasis. Demonstrated competence in object-oriented design and the use of an object-oriented programming language.
  • Seek knowledge of and keep informed of current trends in embedded systems technology, including design techniques, development tools, and overall process improvements.
  • Experience with embedded software development tools such as In-Circuit Emulators, Debuggers, Oscilloscopes, etc.
  • Proficiency in C
  • Experience with Python or equivalent scripting language
  • Experience with Realtime OS utilization (RTOS)
  • Experience with both ARM and x86 architectures
  • Experience with software requirements analysis and software testing, including automation frameworks
  • Experience working with industrial protocols, especially Common Industrial Protocol (CIP)
  • Experience in using open source tools like Git and Jenkins
  • Excellent collaborative skills. You should be a team player.
  • A passion for embedded software development.

Job Type: Permanent

Job ID: 255046482