Embedded Software Engineer
Embedded Software Engineer
Embedded Software Engineer, Franklin Ma
As part of the Chemical Analysis Division, the Environmental & Process Monitoring team develops, manufactures, and services instrumentation used for monitoring and analysis of 1) gaseous and particulate emissions and 2) process flows and pollutants. These state-of-the-art products are used in a wide variety of customer applications and market segments from local, State & Government entities to Oil & Gas industry, Iron & Steel industry, Pharmaceutical, Food and other process industries. We utilize the latest technology to continuously evolve our product line which enables our customers to make the world healthier, cleaner and safer.
How will you make an impact?
With your proven technical foundation in the principals of software engineering, software architecture and design practices, you will develop software-firmware for our line of air pollution and process diagnostic instrumentation. You will work cross functionally with the system software team, SQA, Project & Product Management, and Operations to develop and deliver elite scientific instruments.
What will you do?
Participate in development activities of the embedded system software team including design strategies, implementation and the review and test of software applications in both embedded and desktop environments.
Contribute to embedded software architecture design and implementation.
Development embedded software for multiple products utilizing modularized and re-usable common code base.
Develop software/firmware system requirements with product management team and other engineering team leads.
Work with external development partners to drive project progress and results.
How will you get here?
Bachelor’s degree in Computer Science, Electrical Engineering or related technical discipline; Master’s degree is highly preferred
• 5+ years software/firmware development experience with C/C++ in an embedded environment
• Experienced in developing firmware/software for ARM Core Microcontroller/Microprocessor (NXP i.MX6, SAMD, Renesas S5), Coldfire and TI MSP430 is preferred
• Proven understanding of device drivers such as RS232/485, Embedded TCP/IP and Web Servers, I2C, SPI, USB
• Hands on Linux/Embedded Linux/Real-Time Operating System (RTOS) is highly preferred. Pumplin Salvo or equivalent RTOS experience is preferred
• Highly qualified in software development lifecycle, Agile/Scrum development methodologies, and utilizing issue and project tracking software (Bugzilla, Jira)
• Experience with medical device/analytical instrumentation software development and cloud connectivity is a plus
• Recent experience with hardware description languages (HDL) and industry standard simulation, synthesis, debug and verification tools for FPGA hardware design is a plus
Knowledge, Skills, Abilities
• Highly skilled in reading schematics and IC chip data sheets for software/firmware interface.
• Proven knowledge in unit test frameworks and TDD process.
• Ability to communicate and collaborate in a matrix environment and work in partnership with development, product management, project management, operations, and services.
• Strong computer engineering fundamentals and object-oriented programming skills.
• Excellent analytical skills and problem solving/troubleshooting skills.
• Knowledge of continuous process improvement methods such as PPI or Six Sigma.
• Knowledge of EPA regulations a plus.