DescriptionDescription:
Do you enjoy working in a fastpaced environment Collaborating across team functions to meet customer needs Working with a great team of people and bridging embedded software applications to the physical world Then come join our development team here in Everett WA.
As a Senior Embedded Software Design Engineer the qualifying candidate will be part of the Embedded Software Engineering OS and Platform firmware team in developing sustaining and supporting lowlevel firmware and platforms for across Flukes product line. Work on this team will be involved in the development of challenging cuttingedge embedded software for the operation and control of handheld and benchtop instruments used in test and measurement calibration networking infrared/acoustic imaging and power quality. Our embedded software enables our customers to visualize diagnose track calibrate and report issues using a wide range of Fluke products. The ideal candidate will bring an aptitude for bridging platforms to provide our customers with the best products in the world.
This candidate will have overall responsibility for designing and implementing embedded software for our products. They will develop effective efficient and reliable embedded software during project phases. They will continuously design develop and improve the existing software platform to meet the needs of our customers and maintain a robust modern development environment.
Responsibilities:
- Serve both as a technical leader and as an individual contributor developing Embedded Software Programs for Microcontrollers and Microprocessor programmable systems
- Work with other embedded software application & UI development teams to deliver full stack solutions
- Lead in development of software abstraction layers for processor architecture board and chipsets interfaces using Board Support Packages (BSPs) device Trees ARM CMSIS and other hardware abstraction interfaces
- Collaborate with the hardware and systems team for board bringup firmware specifications and requirements.
- Maintain patch and upgrade our Linux kernel and update drivers based on product requirements and ensuring compliance with Secure Product Development practices
- Partner with Third Party Vendors and contract suppliers to deliver on project needs and contribute to requirements and Statements of Work (SOWs) for external efforts
- Contribute to and govern a shared component library full drivers logging mechanisms APIs IPC and computational algorithms.
- Perform firmware verification of modules applications embedded OS drivers using unit tests staticanalysis and hardwareintheloop testing
- Support advanced research and product development efforts through evaluating new chipsets technologies or libraries.
- Follow team standards for firmware/software development including project planning documentation design reviews firmware testing project status reporting and software configuration management.
- Own our Embedded Software product through the entire development Lifecycle through stages of design implementation test/verification documentation release maintenance and sustainment; support any internal and external customers through this process
- Work collaboratively with others to achieve goals
- Able to perform comfortably in a fastpaced deadlineoriented work environment
Qualifications:
- Bachelors or Masters Degree in Computer Science Computer Engineering Electrical Engineering or related field with strong firmware/software development background.
- At least 10 yrs. experience in software development with C/Cworking with Microcontrollers & Microprocessors preferable ARM Architectures
- At least 10 yrs. experience developing embedded software for technical products including supporting the full software lifecycle
- Strong knowledge and software development experience in customizing Linux Distros using Yocto
- Strong knowledge and software development experience with best practices infirmware architecture multithreaded/concurrent software designs modular softwareand Objected Oriented Design (OOD)
- Expert knowledge of modern crosscompiler toolchains build systems and environment tools to generate software builds and build artifacts including GCC Make/CMake yocto and docker etc.
- Expert usage of source control software (preferably Git)
- Expert skills inEmbedded Software verification debugging and troubleshooting techniques on and off target.
- Effective written and verbal communication abilities to engage with diverse crossfunction teams.
- An Inherent desire to lead support mentor and collaborate with fellow teammates fostering a sense of camaraderie and collaboration.
- Possess a growth mindset unafraid to seek help learn from failures question decisions and constantly strive for improvement.
Additional Qualifications
- Experience in leading nonproject organizational initiatives small and/or large project teams in Firmware
- Experience working with RTOS and baremetal embedded software
- Experience with various communication interfaces such as USART I2C CAN SPI USB etc
- Experience with TCP/IP protocols or other common networking protocols
- Ability to develop in Agilebased or scrum processes across multiple projects.
- Experience using cloud based CICD infrastructure to build and automate testing
- Aptitude for learning new programming languages tools concepts practices and technologies
Required Experience:
Staff IC