Senior Embedded Software Engineer
SparkFun Electronics
Niwot, colorado
Job Details
Full-time
Full Job Description
About SparkFun
Since 2003, SparkFun has been helping turn ideas into reality – whether you’re creating a smart weather station, exploring the frontier of machine learning, building a robot for school or prototyping your first (or tenth) product. No matter your vision or skill level, our open source components, resources and online tutorials are designed to broaden access to innovative technology and make the road to a finished project shorter.
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 Engineering 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 webstore, 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.
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 Senior Embedded Software Engineer
SparkFun is looking to add an Senior Embedded Software Engineer to join our Engineering team to design, create and maintain the embedded software delivered with our products. The Senior Embedded 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 Senior Embedded Software Engineer is responsible for the software components of the products we build, ensuring the developed solutions deliver the desired functionality and meet user expectations.
The Senior Embedded 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 Senior Embedded 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 embedded software solutions to meet a variety of needs, spanning from low-level RTOS implementations, all the way to abstract Arduino libraries.
- Develop cross platform solutions that operate across a wide variety of embedded platforms, architectures, and single-board-computers.
- Work with and expand internal product frameworks and tools.
- 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.
- Collaborate on larger projects with external parties, communities and partners.
- Meet with internal customers and leads to facilitate the creation of requirements and user stories, as well as develop solutions to meet specified needs.
- Facilitate the elaboration of customer requirements into development user stories and acceptance tests.
Requirements
Requirements
- Advanced embedded software development
- Advanced C/C++ development.
- Object-oriented design and large software framework implementations
- Professional software lifecycle development experience
- Experience with a variety of embedded environments, including Arduino, real-time operating systems, and embedded Linux.
- Experience with network development, and internet-of-things network patterns and protocols.
- Familiarity with DIY projects that involve electronics, microcontrollers and programming.
- Familiarity with user-centric software development
- 6+ years of embedded software experience
- Excellent communication skills
Preferred Qualifications (not required)
- Experience with IoT cloud platforms
- Experience with open-source software and community driven development
- Experience with version control software and methodologies (git, github.com)
Benefits
SparkFun Benefits & Perks
At SparkFun, we ask a lot of our employees, and that’s why we give so much in return. Here are just some of the benefits:
- Competitive salary
- Medical/dental/vision plan
- Matching 401(k)
- Flexible Paid Time Off Policy
- A casual dress code for you
- Dogs - yes, we bring dogs to work
- Full gym with climbing wall. If that’s not your style we offer a monthly gym stipend
- We have a great employee discount and opportunities to create and share content with the SparkFun community
- Paid Parental Leave
- Paid time to volunteer
- EcoPass (public transportation pass)
- Summer BBQs, work parties, and more!