Posted in

Contract – Senior Firmware Engineer

Contract – Senior Firmware Engineer

Companyquip
LocationNew York, NY, USA
Salary$70 – $95
TypeFull-Time
DegreesBachelor’s, Master’s
Experience LevelSenior, Expert or higher

Requirements

  • 7+ years of experience in advanced embedded software for consumer electronics
  • Bachelor’s (B.S.) or Masters Degree in Computer Science or Computer Engineering
  • Strong knowledge and experience with Agile Development Scrum Sprint Cycles
  • Proficiency in embedded software design concepts such as state machines, event-driven design, interrupts and timers, common microcontroller peripherals (e.g. SPI, I2C, ADC, DMA)
  • Experience working with hardware development kits and being able to setup and debug communication issues (e.g. COM ports, baud rate, etc.)
  • Board bring-up and system-level integration experience
  • Experience programming in C and Python
  • Familiar with electronics testing and debugging while using lab equipment (oscilloscope, power supply, power analyzer, digital analyzer, multimeter)
  • Familiarity with embedded DSP/ML technologies (i.e. data collection, cleaning, training, etc.) and porting algorithms written in python to C/C++
  • Familiar with the Silabs BG2X family of chips (e.g. BG21, BG22, etc.) and the Silabs API
  • Working knowledge of testing and implementing motion sensors (accelerometers, gyroscopes, IMUs)
  • Working knowledge of Bluetooth protocol and capabilities (e.g. GATT services and characteristics, OTA updates, etc.)
  • Experience with battery operated consumer electronics and working with various battery chemistries (e.g. Alkaline, NiMh, Li-ion)
  • Extensive experience with product qualification, testing, and validation
  • Experienced with JIRA, Github, version control, regression testing etc.
  • Flexibility to travel domestically and internationally when appropriate
  • Strong written and verbal communication and presentation skills. Ability to communicate complex technical subjects to a non-technical audience
  • Strong project management skills to manage a broad set of tasks and responsibilities

Responsibilities

  • Architect and develop embedded firmware using Bare-Metal or Real-Time Operating System (RTOS) ensuring seamless phone application integration
  • Collaborate with the Engineering and Product Management teams to define, implement and maintain firmware features, tasks, and schedules.
  • Compose and maintain firmware architecture documentation
  • Support hardware builds for bring up, optimization and design validation. Write special tests or R&D firmware when needed.
  • Troubleshoot problems in-person with teams both foreign and domestic
  • Work independently or with QA team members to develop and Maintain QA processes (e.g. regression, traceability) for tools used in embedded firmware development
  • Establish and execute test procedures for firmware and subsystems.
  • Manage approvals and sign off processes as well as version controls
  • Lead development and maintenance of a best-in-class tracking algorithm for tooth brushing coverage using motion (i.e. accelerometer and gyrometer) data as input. Algorithms should be capable of running on an MCU with limited computing resources
  • Accurately assess project scope and risks, and ensure stakeholders are updated on progress, risks, and opportunities throughout a project
  • Independently track projects to ensure adherence to schedule and the quip process.
  • Work cross-functionally with Customer Experience, Design, and Quality teams to resolve quality issues and bugs
  • Support redesign initiatives when required for supply chain continuity or cost reduction

Preferred Qualifications

  • Experienced with provisioning security credentials on bluetooth devices on a factory line. Has best practices for methods of credential storage and retrieval by a web or phone application.
  • Knowledge of consumer electronics regulatory standards and compliance (FCC/IC/UL/IEC)
  • Experienced with maintaining and designing manufacturing hardware fixtures (e.g. PLC, RS-232, etc.) and related software (e.g. Python scripts)
  • Prior experience setting up and scripting fixtures to collect and retroactively label time-series motion data. Able to recommend best practices and construct a SOP and BOM for needed fixtures.
  • Knowledge of DSP and adaptive filtering as applied towards motion tracking. Able to develop features for use in a machine learning model.
  • Experience with machine learning algorithms and model development for embedded environments (such as TensorFlow Lite).
  • Strong knowledge of statistics, linear algebra, and physics.