SPX is a diverse team of unique individuals who all make an impact.
As a Firmware Engineer, you will be responsible for the development, implementation, and maintenance of embedded software for systems designed to inspect underground infrastructure.
What you can expect in this role (Job Responsibilities)
While each day brings new opportunities at SPX, your core responsibilities will be:
1.
Design & Develop
Gather and define project requirements.
Design, code, debug, and verify embedded software applications that perform according to project specifications.
Update existing firmware as needed to support new features, modify current operation, and/or sustain a product through hardware changes.
Document technical details of operational firmware to be published as product manuals for customer operation and various internal documents for future development efforts.
2.
Test, Analyze and Collaborate
Conduct detailed analysis, simulations, and calculations to evaluate and optimize the performance, efficiency, and durability of components and systems.
Analyze and interpret test data, making design modifications if necessary, to meet product performance and safety requirements.
Conduct product and component testing in accordance with CUES standards and recognized approval agency requirements and codes, such as UL, ANSI, ISO, and/or CSA.
Develop and maintain project schedules, ensuring timely completion of activities related to product design and development.
Collaborate with product management, electrical and firmware engineering and other functions to define product requirements, specifications, and design goals for mobile robotic systems
Provide technical support and assistance to other departments, including Operations/Manufacturing, Quality, Customer Service, Lab Supervisor, Product Managers, and Purchasing.
Identify potential technical improvements to existing products/processes/services or cost reductions.
Lead cross-functional teams in the development, maintenance, and update of DFMEAs, and assist in the development of PFMEAs and Process Control Plans.
Mentor engineering team members on core engineering principles/practices and assist in their professional growth.
3.
Continuous Improvement
Stay updated with industry trends, advancements, and emerging technologies in pipe inspection robotics.
Continuously seek process improvement opportunities by identifying and recommending changes that improve efficiency and effectiveness
Participate in other projects as assigned that relate to the overall goals of the department and organization
What we are looking for (Experience, Knowledge, Skills, Abilities, Education)
We each bring something to the table, and we are looking for someone who has:
Required Experience
Experience with embedded systems using Linux as the primary O.
S
Exposure to selecting, building, customizing, and deploying Toolchain (distribution, development environment, cross-compiler, etc.
), Bootloader, Kernel, Root Filesystem, Debugger, Device Drivers
Proficiency and experience programming in C, C++, Linux Shell Scripting
Preferred Experience, Knowledge, Skills, and Abilities
3-5 years of relevant experience in manufacturing or engineering
Experience writing reliable code used in a production environment
Experience in Debian or Ubuntu Linux is preferred
Previous experience with Vision systems is a plus
Basic electronic troubleshooting and ability to read schematics is a plus
Education & Certifications
Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field
Travel & Working Environment
Post-offer background check and drug screening required
8AM – 5PM Monday – Friday, overtime as necessary
Ability to use computers and office equipment, light lifting and other physical requirements necessary to perform essential job functions
Must be able to grip and operate hand tools and lift up to 50 lbs on occasion
Possible travel to customer sites in unique situations