Posted in

Senior Embedded Software Engineer

Senior Embedded Software Engineer

CompanyRockwell Automation
LocationMayfield Heights, OH, USA
Salary$Not Provided – $Not Provided
TypeFull-Time
DegreesBachelor’s
Experience LevelSenior

Requirements

  • Bachelor’s Degree or Equivalent Years of Relevant Work Experience
  • Legal authorization to work in the U.S. We will not sponsor individuals for employment visas, now or in the future, for this job opening.

Responsibilities

  • Design and develop embedded firmware for Programmable Logic Controllers and Industrial PCs.
  • Build and maintain automated tests in support of new and existing product features.
  • Work in a variety of hardware and software environments, ranging from commercial off-the-shelf to custom System on Chip architectures, and from general purpose to embedded real-time operating systems.
  • Use modern continuous integration and development tools as well as promote continuous improvement of tools and practices across the global development organization.
  • Demonstrate a strong understanding of object-oriented programming concepts, C++ and Python.
  • Operate across the entire software development life cycle: requirements management, design, implementation, test, release, and maintenance.
  • Work on an Agile development team within a larger Scaled Agile Framework (SAFe) organization, participating in short term (sprint), medium term (program increment) and long term (product roadmap) planning.
  • Mentor less experienced personnel and encourage knowledge sharing and learning among the development community.

Preferred Qualifications

  • Bachelor’s degree in Computer Engineering, Computer Science, Electrical Engineering or equivalent knowledge in the application of software engineering principles, theories, concepts, and techniques.
  • This role typically requires a minimum 5+ years of software engineering experience with demonstrated professional development in software design and implementation.
  • Ability to understand and apply knowledge of object-oriented analysis, design, and programming techniques.
  • Experience developing embedded software in object-oriented languages such as C++.
  • Experience developing automated tests and tools in high-level languages such as Python.
  • In depth knowledge of software engineering and application of engineering principles and practices in a related field.
  • Experience in requirements decomposition and test traceability.
  • Experience using open-source tools like Git and Jenkins.
  • Knowledge of unit testing frameworks like CppUnit, GoogleTest, etc.
  • Experience with continuous integration environments, automated test, and acceptance testing.
  • Experience working in an Agile development setting and Agile project tools.
  • Experience working with industrial protocols, especially Common Industrial Protocol (CIP)
  • Experience developing software and tests to safety and security standards such as IEC 61508 or IEC 62443.
  • Advanced courses or degree in Engineering, Computer Science, or Controls.