Senior Software Engineering - EmbeddedStatus: Exempt (salaried)Location: Spokane, Washington (not a remote position)Department: 000271 - Stationary Power ProductsPosition SummaryIn this role, you and your team will be responsible for firmware development activities for the Plug Power GenSure line of Fuel Cell products. This includes firmware development activities consisting of design, development, testing, and the creation of test/deployment tools and documentation. It also includes communicating with electrical engineering, performing hands-on environment setup, development, and performing debugging tasks in support of field installations. The firmware and tools are mostly written in C and targeted to run ARM processor architecture, as well as maintain legacy ColdFire-based products. Additionally, the role will support Plug's growth strategy and assist with scaling up teams, processes and methodologies as the company continues to rapidly grow.Core Duties and ResponsibilitiesBe the technical lead for a small software/firmware engineering team.Lead firmware engineering in the design, development, and test of products. This includes ensuring that all code is written in a manner that is easily understood, is well documented, and follows department standards for writing code.Write code and review contributions from other team members. Mentor junior developers on proper coding practices.Research and test tools and components to stay current with industry trendsOwn the firmware plan and delivery of multiple projects.Develop firmware specifications, design requirements, and architecture documents for projects, based on product requirements, knowledge of Plug Power Fuel Cell's technology, and the skillset of firmware team staff.Develop firmware engineering project schedules, set task priorities, and provide input to management for deliverables and timelines.Work with other development teams within Plug to improve technical collaborationWork with product managers on strategy and roadmap development for short-, medium-, and long-term goals.Support management with technical, cost, and schedule inputs for the firmware portions of projects.Coordinate with other engineering managers on test coverage between your team and the system engineers.Communicate status on projects and other initiatives to related teams and upper management.Participate in incident response and handling of system issuesEstablish, implement, and ensure adherence to appropriate coding standards & certifications.Lead efforts with code certification to industry specific standardsPromote best practices in code development, test, and deployment.Continuous improvement in code development, validation, and deployment processesLead and manage Azure DevOps Transition for code related repositories, processes and systems.Develop and implement processes for controlling, integrating, and maintaining code developed by multiple individuals and teams that ensures the software can be reproduced for production at any release level desired. Such processes will include thorough reviews of releases, release notes, and validation testing.QualificationsBSEE, BSCS, or equivalent6-10 years of experience in development of embedded software, C coding, and real time operating systemsAt least 3 years of experience leading development teamsExperience with Embedded Processor code development, RTOS developmentDeep knowledge of embedded software development practices and clear understanding of software development processes.Experience with any or all the following highly preferred:ST Micro stm32F7xx and stm32F3xx family of Arm processorsColdfire MCF5225x family of products.Driver development experience including CAN, USB, I2C, SPI Drivers Bootloaders, A/D etcFluency in C/C++, AssemblerMust be a