Embedded Software Engineer - SmartRent, Remote USA

SmartRent is made up of passionate, diverse, and innovative professionals who enjoy working together. We are on a mission to make smart home technology accessible for everyone by embracing our shared guiding principles. We don’t take shortcuts; we do the hard work. We own our outcomes. We win as a team. We value authenticity and others’ perspectives. We believe solving problems starts before we write any code.

We are leading the way for smart technology for housing, particularly multifamily apartment complexes and single-family rentals. It’s a really fun intersection of physical hardware, such as locks and thermostats, and software that can control the devices; we provide applications for both the property staff — whether single-family or multifamily and also the residents of the properties. We started in 2017 and have had explosive growth ever since — going public in 2021 for $2.2b. We have deployed over 500,000 units that contain over one million IoT devices and ingest billions of events from those devices in a given month.

My name: Jeremiah Anderson
My position: Head of Talent Acquisition
Company name: SmartRent
Website: https://smartrent.com/
Country: USA

Elixir is our primary backend language of our techstack. Our extensive product line consists of web and mobile software for property owners and managers, residents and system installers as well as connected hardware that remotely monitors and controls smart locks, readers, gates, lights, thermostats, outlets, cameras and sensors. SmartRent streamlines operations for community staff, enhances the resident experience and provides property owners with a digital layer of asset protection.

The Embedded Software Engineer joins a small group of Elixir developers who use Nerves to create firmware for SmartRent devices such as Z-Wave central controllers (hubs) and access control systems. In short, we bridge the gap between hardware and software to facilitate communication between smart devices and SmartRent Web services. Don’t let the “embedded” in Embedded Software Engineer scare you. Thanks to Nerves, we are first and foremost Elixir developers!

About the job

Job title: Embedded Software Engineer
Job description: Job Application for Embedded Software Engineer at SmartRent

Salary range: $135,000.00 - $165,000.00 plus 10% target bonus and RSUs (Restricted stock units). We provide 100% employer-paid medical, dental, and vision coverage.
Position on remote work: 100% Remote
Qualifications or experience required:

  • Familiar with Elixir, Erlang or another functional language
  • Familiar with Linux and/or MacOS
  • Interested in learning embedded systems development (the Nerves way!)
  • Ready to plunge into 3rd party access control system documentation
  • Eager to learn software, hardware and electrical best practices

What the successful job applicant will be working on:

  • Participate in firmware development
  • Write API documentation and tests
  • Test the integration of SmartRent hardware with various access control systems
  • Implement new features and driver support for 3rd party access control systems
  • Continually collaborate with your fellow team members
  • Get involved in sponsored OSS support

About the interview process

Step 1: Recruiter Screen (15 min)

Step 2: Technical interview w/Hiring Manager (45 min)

Step 3: Interview w/Teammate, going over team code (30 min)

Step 4: Interview w/Teammate, reviewing YOUR code you’d like to showcase (30 min)