Software Engineer, Full Time

SparkFun is looking to add a Software Engineer to join our Engineering team to design, create and maintain the software delivered with our single board computer products.

Shift: M-F 9-5 with Flexibility

Department: Engineering

About SparkFun

SparkFun Electronics is an open source e-retailer focused on making embedded electronics accessible to people of all ages and skill levels. SparkFun was instrumental in creating the Open Source Hardware movement and remains a leader dedicated to making it more commonplace. We strive to educate, encourage, and supply our customers in all things electronic.

In 2003, CU student Nate Seidle shorted a programmer in his dorm room and, in lieu of a way to order easy replacements, decided to start his own company. Since then, SparkFun has been committed to sustainably helping our world achieve electronics literacy from our headquarters in Boulder, Colorado. No matter your vision, SparkFun’s products and resources are designed to make the world of electronics more accessible. In addition to over 2,000 open source components and widgets, SparkFun offers curriculum, training and online tutorials designed to help demystify the wonderful world of embedded electronics. We’re here to help you start something.

We are an equal opportunity employer that values a diverse workforce and an inclusive culture. SparkFun offers an abundance of opportunities to learn new skills from other Funions, in addition to many other benefits and perks.

About the Department

SparkFun's Engineering Department is responsible for the elaboration, design and development of SparkFun’s original products. This includes microprocessor boards, sensor system breakout boards and everything in-between. In our web-store, if the PCB is red, it was produced by the SparkFun Engineering team.

The Engineering department focuses on team collaboration and success, developing users centered products in a highly cooperative, communicative and transparent manner.

Open Source and its associated community are key values for SparkFun, and a key part of all our software efforts. All embedded software is open source and community driven. SparkFun developed technology is given back to the community through updates or complete open source projects.

If you like the sound of our Engineering team and want to hack on the software that powers our embedded products, this team is your home.

SparkFun's Next Software Engineer

The Software Engineer is an important role within SparkFun, developing and delivering key functionality to the products and solutions we create for our customers.

Working closely with other members of our Engineering team, the Software Engineer is responsible for the software components of the products we build for single board computers (Raspberry Pi, NVidia Jetson), ensuring the developed solutions deliver the desired functionality and meet user expectations.

The Software Engineer is a member of SparkFun’s Engineering team, reporting to the Engineering Department Manager.

The right candidate collaboratively works with a variety of internal and external customers, as well as other members of the Engineering team to develop software components for SparkFun products. Following a user-centered design approach, the Software Engineer ensures the design, development and delivery of a software solution that not only meets functional needs, but user desires and skill levels.

Essential Job Functions:

  • Research, design and implement software solutions for single board computers
  • Develop cross platform solutions that operate across a wide variety of single-board-computers.
  • Work closely with hardware engineers to develop software solutions that seamlessly work with new products.
  • Describe the developed functionality through documentation, tutorials and examples.
  • Work as a key member of a cross-functional product development team.
  • Work closely with the open source software community, collaborating with larger products, as well as supporting SparkFun created solutions.
  • Meet with internal customers and facilitate the creation of requirements and user stories 

  • Facilitate the elaboration of customer requirements into development user stories and acceptance tests 

Required Qualifications:

  • Expert in Python development
  • Experience with C/C++ development
  • Familiarity with hardware communication protocols (I2C, I2S, SPI)
  • Experience with real-time operating systems and Linux.
  • Experience with network development, and internet-of-things network patterns and protocols.
  • Familiarity with DIY projects that involve electronics, single board computers and programming.
  • Familiarity with user-centric software development
  • 3+ years software experience
  • Excellent communication skills

Preferred Qualifications (not required)

  • Experience with Open Source software and community driven development
  • Experience with version control software and methodologies (git,

SparkFun Benefits & Perks

SparkFun Electronics offers its employees a comprehensive benefits package, in addition to several perks. In regards to benefits, we offer medical, dental, and vision. And, we offer a 401k match, disability, life insurance, and a flexible leave policy.

SparkFun offers many perks, including but not limited to a dog-friendly workplace, professional development opportunities, an on-site fitness center, lunch and learns, and internal classes to learn from fellow Funions!

Please log in to apply for this position!