Job Description:
Objective of role:
The Embedded Software Engineer is responsible for the design, development, testing, and support of embedded software solutions for both existing and new products, including new hardware bring-up, low-level hardware/software integration, and support of microcontroller-based embedded systems.
Expectations:
This role blends hands-on engineering with cross-functional collaboration, technical problem solving, product lifecycle support and software technical leadership where appropriate. The engineer will contribute to software architecture, product enhancements, and reliability validation while supporting internal teams, customers, and manufacturing operations.
This position requires strong analytical skills, a solid foundation in software engineering principles, and the ability to work independently across most phases of the development cycle. The ideal candidate is comfortable working close to the hardware and can efficiently diagnose and resolve low-level issues involving microcontrollers, memory, interfaces, sensors, and communication devices.
Main Duties and Responsibilities:
Software Design & Development
• Develop, code, test, and debug new embedded software or enhancements to existing software for third-party customers and internal product lines.
• Work from specifications with limited guidance to design and modify moderately complex software applications, tools, and utilities.
• Apply software design theories, engineering principles, and scientific methods to create robust, maintainable embedded solutions.
• Modify existing software packages to meet unique customer configurations and requirements.
• Validate successive software versions to ensure proper integration with system hardware.
• Bring up embedded software on new hardware platforms, including initialization and verification of microcontrollers, memory, clocks, interrupts, communication interfaces and peripheral devices.
• Develop, integrate and debug low-level drivers and board support software for interfaces such as UART, SPI, I2C, ADC, USB, Ethernet, GPIO, etc.
Engineering Leadership & Departmental Support
• Provide technical input to project schedules, development estimates, software-related planning activities and team training needs.
• Coordinate technical activities with cross-functional project teams and communicate software scope, status, risks, and technical issues clearly.
• Document designs, changes, and engineering analyses thoroughly and professionally.
Testing, Reliability & Verification
• Determine test and analysis requirements to validate product reliability, performance, and parameter control.
• Conduct or coordinate tests to evaluate failure limits, environmental susceptibility, component reliability, and overall product safety.
• Participate in the design of product test equipment or production test systems when needed.
• Interpret test results and translate findings into actionable engineering decisions.
• Develop and execute bring-up, integration, and regression test plans for new hardware and firmware.
• Diagnose issues related to startup behavior, communication failures, timing issues, memory, and interaction between firmware and hardware.
Cross Functional & Customer Support
• Resolve software-related user complaints and respond to suggestions for improvements or enhancements.
• Assist in the development of software user manuals and technical documentation.
• Collaborate with technical staff to diagnose and resolve software issues.
Innovation & Product Development
• Drive the electrical/software design process from concept through manufacturing release, including:
o Creative concept development
o Detailed design
o Mathematical and scientific verification
o Prototype build and evaluation
o Engineering documentation
o Production transition
• Work closely with electrical engineering during schematic review, component selection and prototype bring-up to ensure software readiness and efficient debug.
Qualifications:
• Bachelor’s degree in engineering (Software, Electrical, Computer Engineering, or related discipline required).
• Minimum of 4 years of relevant experience in embedded software development or related engineering roles.
• Proficiency in embedded programming languages (e.g., C/C++), version control (Git/Github) and real-time operating environments (FreeRTOS, MQX).
• Strong understanding of hardware/software integration and system level design.
• Ability to work independently across design, coding, testing, debugging, implementation, and documentation phases.
• Excellent analytical, problem-solving, and communication skills.
• Experience supporting manufacturing, field teams, or customer applications is a plus.
• Demonstrated experience with new board bring-up, including debug of low-level hardware/software issues on prototype hardware.
• Ability to read and work from schematics, datasheets, reference manuals and interface documentation.
• Experience with embedded debug tools such as JTAG debuggers, oscilloscopes, logic analyzers and serial/protocol analysis tools.
• Experience integrating communication and connectivity technologies such as Bluetooth/BLE, UART, SPI, I2C, USB, or Ethernet.
• This role requires quarterly travel to our Fairmont, MN facility, with the possibility of additional onsite visits depending on project-specific needs.
#LI-Remote
Compensation Information:
salary range
$78,400 - $130,000
ITW is an equal opportunity employer. We value our colleagues’ unique perspectives, experiences and ideas and create workplaces where everyone can develop their careers and perform to their full potential.
As an equal employment opportunity employer, ITW is committed to equal employment opportunity and fair treatment for employees, beginning with the hiring process and continuing through all aspects of the employment relationship.
All qualified applicants will receive consideration for employment without regard to race, color, sex, gender identity, sexual orientation, religion, national origin, age, disability, protected Veteran status or any other characteristic protected by applicable federal, state, or local laws.
...Objective: Under the supervision of the Registered Nurse, participates as a member of the multidisciplinary surgical team to assist with operating room set-up and turn-over to enable efficient use of operating room scheduling time in accordance with the Standards of Care...
...Why Join Sunrise Senior Living At Sunrise Senior Living, we believe meaningful work starts with purpose. Our team members are passionate... ...Health Updates (SHUs) Transcribe physician orders and support care plan updates Observe and report physical, emotional, or...
...Job Description Job Description Now Hiring Cell Phone Repair Technician CPR Cell Phone Repair is currently seeking an experienced and dependable Cell Phone Repair Technician to join our team. We are looking for individuals who are technically skilled, customer...
...living, performs patient care tasks and maintains a safe and clean environment. Completes tasks under the supervision of a Registered Nurse within the scope of practice. A current employee who is attending an accredited nursing school. HS Diploma or equivalent....
Where those who love pizza can be their true self.Free Food on shiftPlus Tips - You'll receive tips/Tronc*50% off food and drink when youre not workingWellbeing Support for you and your familyReferral Bonus of 400 for referring pizza chefs and 1000 for referring...