Firmware Engineer

ENGINEERED CORROSION SOLUTIONS LLCMaryland Heights, MO
2d

About The Position

A Firmware Engineer engages in activities related to designing, developing, testing, documenting, maintaining and training around the software for embedded systems, bridging hardware and software in ECS products. This individual will develop and support embedded firmware and IoT infrastructure and networking from R&D to field support. Supervisory Responsibilities: No Duties/Responsibilities: As a broad role in the ECS organization, the daily and weekly activities will vary significantly. Highlights are captured below but not intended to be all inclusive. Embedded Firmware & R&D Design and develop firmware for new R&D products, including embedded system architecture, driver development, and hardware/firmware integration decisions Implement and optimize firmware and libraries for various sensors and devices (LCDs, accelerometers, temperature, pressure, etc.) Write efficient, secure, and reliable code, typically in C or C++, for the STM32 platform of microcontrollers. Collaborate with hardware teams to define requirements, select components, and ensure seamless hardware-software integration. Work in harmony with team members to develop custom electronics for equipment, including migrations of existing PLC/HMI projects to microcontrollers, developing firmware for product refresh Utilize debugging tools (e.g., oscilloscopes, logic analyzers) to troubleshoot system-level, hardware-related, or firmware-related issues. Create and maintain technical documentation, including design specifications, test plans, and code documentation. Production & Quality Support Update, modify, and improve product quality control tools to help streamline flow, automate testing, and support field identification of issues. Work with hardware team to manage production software programming process by introducing tools and compiled files, while maintaining work instructions for program installation/execution. Communication Protocols / IoT System Implement drivers for communication protocols such as I2C, SPI, UART, BLE, Wi-Fi, or TCP/IP. Support IoT platform including dashboards, email alerts, and workflows to support current and future products Support technical aspects of client/customer relationship with IoT platform provider(s) Product Strategy & IP Contribute to high-level product strategy and roadmaps related to both new and existing products Support patent generation and disclosures, adding intellectual property value Support generation of documentation/capture related to commissioning videos and manuals. Provide technical guidance for software and Building Management System (BMS) connectivity/communication inquiries Generate documentation such as, technical communications, reports, meeting notes, change management, field work instructions, and other relevant technical documentation. Follow appropriate design practices and departmental procedures for design control and regulatory compliance. Test and validate firmware with hardware designs to ensure systems meet operational and functional requirements. Work cross-functionally with internal departments to accomplish design projects and implement them into manufacturing. If required, interface with external contractors on any outsourced programming development or testing activities, including specification development for SOWs. Lead firmware deliverables, including tracking project progress and reports status and projected timelines to management. Support continuous improvement of project management process at ECS. Be an active member of the Product Development team, onboarding and mentoring engineers; providing best practices and troubleshooting support while supporting team growth with A3s, process maps, guides, and documentation Personally strengthen skills to support growth of self to support growth of role in an expanding organization Job Summary: A Firmware Engineer engages in activities related to designing, developing, testing, documenting, maintaining and training around the software for embedded systems, bridging hardware and software in ECS products. This individual will develop and support embedded firmware and IoT infrastructure and networking from R&D to field support. Supervisory Responsibilities: No Duties/Responsibilities: As a broad role in the ECS organization, the daily and weekly activities will vary significantly. Highlights are captured below but not intended to be all inclusive. Embedded Firmware & R&D Design and develop firmware for new R&D products, including embedded system architecture, driver development, and hardware/firmware integration decisions Implement and optimize firmware and libraries for various sensors and devices (LCDs, accelerometers, temperature, pressure, etc.) Write efficient, secure, and reliable code, typically in C or C++, for the STM32 platform of microcontrollers. Collaborate with hardware teams to define requirements, select components, and ensure seamless hardware-software integration. Work in harmony with team members to develop custom electronics for equipment, including migrations of existing PLC/HMI projects to microcontrollers, developing firmware for product refresh Utilize debugging tools (e.g., oscilloscopes, logic analyzers) to troubleshoot system-level, hardware-related, or firmware-related issues. Create and maintain technical documentation, including design specifications, test plans, and code documentation. Production & Quality Support Update, modify, and improve product quality control tools to help streamline flow, automate testing, and support field identification of issues. Work with hardware team to manage production software programming process by introducing tools and compiled files, while maintaining work instructions for program installation/execution. Communication Protocols / IoT System Implement drivers for communication protocols such as I2C, SPI, UART, BLE, Wi-Fi, or TCP/IP. Support IoT platform including dashboards, email alerts, and workflows to support current and future products Support technical aspects of client/customer relationship with IoT platform provider(s) Product Strategy & IP Contribute to high-level product strategy and roadmaps related to both new and existing products Support patent generation and disclosures, adding intellectual property value Support generation of documentation/capture related to commissioning videos and manuals. Provide technical guidance for software and Building Management System (BMS) connectivity/communication inquiries Generate documentation such as, technical communications, reports, meeting notes, change management, field work instructions, and other relevant technical documentation. Follow appropriate design practices and departmental procedures for design control and regulatory compliance. Test and validate firmware with hardware designs to ensure systems meet operational and functional requirements. Work cross-functionally with internal departments to accomplish design projects and implement them into manufacturing. If required, interface with external contractors on any outsourced programming development or testing activities, including specification development for SOWs. Lead firmware deliverables, including tracking project progress and reports status and projected timelines to management. Support continuous improvement of project management process at ECS. Be an active member of the Product Development team, onboarding and mentoring engineers; providing best practices and troubleshooting support while supporting team growth with A3s, process maps, guides, and documentation Personally strengthen skills to support growth of self to support growth of role in an expanding organization

Requirements

  • 3-5 years of experience working with software design and architecture with embedded system designs
  • Knowledge related to building and delivering working products to customers and integrating embedded systems with cloud services.
  • 3-5 years of experience developing firmware for embedded systems, preferably with STM32 microcontrollers and associated tools (CubeMX, CubeIDE)
  • 2-3 years of experience with software/firmware validation and testing and version control.
  • Ability to understand electrical and mechanical systems and the ability to translate desired outcomes into code
  • Proven ability to plan a roadmap for complex code, develop code to the roadmap, develop test plan for code, and commercialize
  • Strong knowledge of industry best practices regarding maintaining security of code and communication protocols.
  • Masterful organizational and communication skills, with a keen eye for detail.
  • Competent in the use of Microsoft Suite (Word, Excel, PowerPoint, etc.) with demonstrated ability to organize data and develop decisions from associated analysis.
  • Demonstrated effective problem-solving skills. Able to understand complex issues and provide appropriate, effective solutions in a timely manner
  • Proven success as a team member, collaborating, cross-functionally, and participating in diverse thinking
  • Must be self-motivated with the ability to work independently and in a team environment
  • Flexible and a strong willingness to adapt and be an advocate for change
  • Ability to work through prioritization to complete daily tasks
  • Bachelor’s degree in computer engineering, software engineering, or electrical engineering - required
  • Demonstratable experience in firmware creation, deployment, validation testing, troubleshooting and issue resolution.

Responsibilities

  • Design and develop firmware for new R&D products, including embedded system architecture, driver development, and hardware/firmware integration decisions
  • Implement and optimize firmware and libraries for various sensors and devices (LCDs, accelerometers, temperature, pressure, etc.)
  • Write efficient, secure, and reliable code, typically in C or C++, for the STM32 platform of microcontrollers.
  • Collaborate with hardware teams to define requirements, select components, and ensure seamless hardware-software integration.
  • Work in harmony with team members to develop custom electronics for equipment, including migrations of existing PLC/HMI projects to microcontrollers, developing firmware for product refresh
  • Utilize debugging tools (e.g., oscilloscopes, logic analyzers) to troubleshoot system-level, hardware-related, or firmware-related issues.
  • Create and maintain technical documentation, including design specifications, test plans, and code documentation.
  • Update, modify, and improve product quality control tools to help streamline flow, automate testing, and support field identification of issues.
  • Work with hardware team to manage production software programming process by introducing tools and compiled files, while maintaining work instructions for program installation/execution.
  • Implement drivers for communication protocols such as I2C, SPI, UART, BLE, Wi-Fi, or TCP/IP.
  • Support IoT platform including dashboards, email alerts, and workflows to support current and future products
  • Support technical aspects of client/customer relationship with IoT platform provider(s)
  • Contribute to high-level product strategy and roadmaps related to both new and existing products
  • Support patent generation and disclosures, adding intellectual property value
  • Support generation of documentation/capture related to commissioning videos and manuals.
  • Provide technical guidance for software and Building Management System (BMS) connectivity/communication inquiries
  • Generate documentation such as, technical communications, reports, meeting notes, change management, field work instructions, and other relevant technical documentation.
  • Follow appropriate design practices and departmental procedures for design control and regulatory compliance.
  • Test and validate firmware with hardware designs to ensure systems meet operational and functional requirements.
  • Work cross-functionally with internal departments to accomplish design projects and implement them into manufacturing.
  • If required, interface with external contractors on any outsourced programming development or testing activities, including specification development for SOWs.
  • Lead firmware deliverables, including tracking project progress and reports status and projected timelines to management.
  • Support continuous improvement of project management process at ECS.
  • Be an active member of the Product Development team, onboarding and mentoring engineers; providing best practices and troubleshooting support while supporting team growth with A3s, process maps, guides, and documentation
  • Personally strengthen skills to support growth of self to support growth of role in an expanding organization
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service