Lead Embedded Software Engineer (Hybrid)

Brady Corporation · Milwaukee, WI

Company

Brady Corporation

Location

Milwaukee, WI

Type

Full Time

Job Description

Job Description

Who Are We:

Brady Corporation is an international manufacturer and marketer of complete solutions that identify and protect people, products and places. Brady's products help customers increase safety, security, productivity and performance and include high-performance labels, signs, safety devices, printing systems and software. Founded in 1914, the Company has a diverse customer base in electronics, telecommunications, manufacturing, electrical, construction, medical, aerospace and a variety of other industries. Brady is headquartered in Milwaukee, Wisconsin and as of July 31, 2022, employed approximately 5,700 people in its worldwide businesses. Brady's fiscal 2022 sales were approximately $1.30 billion. Brady stock trades on the New York Stock Exchange under the symbol BRC. More information is available on the Internet at www.bradyid.com.

Brady offers a hybrid work option that allows for both personal flexibility and in person collaboration to deliver the greatest outcomes for our people and customers. This option is a mix of in the office and one or two offsite days which are pre-determined based on role and function.

What We Need:

The Lead Embedded Software Engineer position involves work of a technical and complex nature requiring the use of analytical ability and independent thinking to complete assignments where there is ambiguity in acceptable practices, precedents, and functional principles. The Lead Embedded Software Engineer will design and implement embedded user interfaces and utilize both hardware and software debugging tools in order to complete projects. The engineer is expected to participate in the designing of solutions that meet customer needs, document the design, write clear concise code, comment code as appropriate, and create documentation outlining code functionality. All engineers are required to follow Brady's development process which includes our iterative development process. Individuals will be responsible for managing the development of broad architecture for the entire product line as part of a development team. Individuals may utilize other resources in development of technology needed for development of firmware.

What You'll Be Doing:

  • Lead team to design, develop, code, and document entire systems within a large embedded software project.
  • Utilize C++ and object-oriented coding techniques when developing code bases, follow coding standards and follow standard development best practices and drive this practice across the project team.
  • Implement UI technology selections for current projects that support architectural goals of the organization.
  • Work with Brady's user experience team to develop user interfaces on embedded devices.
  • Setup and use software code debuggers for specific processors and development environments used in development of Brady printers.
  • Direct internal and external resources in firmware development to deliver assigned modules.
  • Make technology selections for assigned modules that support the overall architecture goals of the organization.
  • Lead team to make time estimate coding efforts for an entire project.
  • Contributes to and maintains automated build and testing systems.
  • Performs code reviews and follows all development processes.
  • Performs other tasks as required. Responsibilities include, but are not necessarily limited to, the duties listed on this job description.
  • Individuals will support the growth of technicians, and/or the growth of others in their group.
  • Drive architecture of the overall product line to maximize re-use of code

What You Need To Be Successful:

  • Minimum degree in Bachelor of Science in Computer Engineering, Electrical Engineering, Computer Science, related field or equivalent experience.
  • Minimum of 7 years of experience
  • Experienced with Qt or equivalent UI frameworks/libraries.
  • Experienced in GUI coding architecture for multiple display sizes and performance.
  • Experienced developing software for embedded operating systems such as Windows CE / Embedded Compact, QNX Neutrino, Micrium μC/OS, etc. on target hardware
  • Experienced with C++
  • Experienced knowledge of Object-Oriented Analysis and Design
  • Knowledge of application development or GUI development for embedded systems.

Desired Characteristics: Knowledge, Skills and Abilities:

  • Knowledge of C++11 or higher
  • Knowledge of CMake.
  • Knowledge and experience with creating and reading UML models
  • Experience reading schematics, utilizing oscilloscopes, logic analyzers, and other test equipment in the development and debugging of firmware designs.
  • Knowledge of .NET and C# programming a plus.
  • Knowledge of QML.
  • Knowledge of Python.

#LI-HYBRID

Date Posted

02/22/2023

Views

9

Back to Job Listings Add To Job List Company Profile View Company Reviews
Positive
Subjectivity Score: 0.8