Embedded Software Engineer

Engineering · Full-time · New York, United States

Job description

Fi is rethinking the relationship between dogs and humans. We build products for your dog to live a longer, better life. We are full of experienced, passionate people that have built and shipped outstanding products for Nest, Square, Google and Uber who all care about their dogs. Together, we're bringing a digital revolution to the dog space.

Today's dog industry is a relic from the 80s. We are using technology to improve dogs' lives and make the 100 million dogs in the US live longer. Dogs' life expectancy hasn't improved in decades - we are here to change this. We are keeping dogs safe by allowing owners to keep track of their whereabouts. We are keeping dogs healthy by showing owners how much they should exercise and keep them accountable. We also monitor health patterns like sleep and overall balance of activity versus resting patterns.

The hardest part about being a dog owner is they can't tell you when something is wrong. Fi aims to change that; We're looking for people to join us who love a good challenge—and of course, dogs. We set the bar high at Fi. In our world, "impossible" means "let me find a way".

If you feel like you belong, keep reading!

Fi is hiring an Embedded Software Engineer!

  • You possess a minimum of 4 years of hands-on experience in firmware/embedded software development
  • Proficiency in the C and C++ programming languages, and an understanding of the differences between them. Additionally, experience with or eagerness to learn Python.
  • Prior exposure to hardware interfaces, real-time operating systems (RTOS), and embedded systems design.
  • Familiarity with debugging tools and methodologies for embedded systems.
  • Experience with version control systems (e.g., Git) and issue tracking tools (e.g., Jira).
  • Strong problem-solving abilities and the ability to work in a collaborative team environment, communicating effectively with hardware engineers, software developers, and other stakeholders.
  • Understanding of low-level hardware interactions and device drivers.Experience in designing, developing, and testing firmware for microcontrollers and embedded systems.Understanding of low-level hardware interactions and device drivers.Experience in designing, developing, and testing firmware for microcontrollers and embedded systems.

Responsibilities:

  • Firmware Development: Take a front-line role in designing, developing, and maintaining firmware for embedded systems, ensuring functionality, reliability, and performance optimization.
  • Collaborative Problem-Solving: Work closely with cross-functional teams to integrate software with hardware components, troubleshoot issues, and optimize system performance.
  • Code Review and Documentation: Conduct code reviews, document code changes, and ensure compliance with coding standards and best practices in firmware development.
  • Testing and Validation: Develop test procedures and perform rigorous testing to validate firmware functionality and identify and resolve bugs or issues.
  • Research and Innovation: Stay updated with emerging technologies, tools, and trends in embedded systems and contribute innovative ideas to enhance product capabilities.

What's in it for you?

  • Unlimited Vacation
  • Commuter Benefits
  • Medical/Dental/Vision coverage
  • FSA
  • 401(k)
  • Stocked Kitchen
  • Team Lunches
  • Perkspot Discounts
  • $2,000 / month donated to dog-related charities (it's our #Barkback program)