Senior Device Engineer
Alarm.comAbout the role
<p><a href="http://alarm.com/">Alarm.com</a> is a rapidly expanding technology company developing innovative cloud and device solutions across a wide range of cutting-edge technologies that provide a unified, connected service to millions of residential and commercial properties in the US and abroad. We are looking for a talented and passionate embedded software engineer for the Device Engineering team to help us develop the define the future of the Internet-of-Things for residential and commercial properties by developing and improving the camera line of products. You will be working with a team of talented engineers across a diverse set of technological backgrounds to design devices, build and manufacture hardware, architect and implement software, and collaborate in an agile and fast-paced environment.</p> <p><strong>Responsibilities:</strong></p> <ul> <li>Design, implement, and test embedded software for camera platforms (e.g., ARM, microcontrollers, SoCs).</li> <li>Develop firmware, and hardware abstraction layers to interface with sensors, communication modules, and peripherals.</li> <li>Collaborate with hardware engineers for board bring-up, integration, and troubleshooting.</li> <li>Collaborate with hardware engineers on camera performance optimization, power management, and hardware driver integration.</li> <li>Optimize software for performance, reliability, and resource usage.</li> <li>Develop and execute unit and integration tests, perform debugging using oscilloscopes, logic analyzers, and emulators.</li> <li>Document code, technical designs, and development processes.</li> <li>Support production, QA, and field teams in deployment and issue resolution.</li> <li>Assist in defining requirements and participate in design reviews.</li> <li>Work with cloud software teams to design APIs, protocols, and features that enable seamless device-to-cloud connectivity.</li> <li>Partner with product managers and quality engineers to define technical requirements, conduct system testing, and ensure products meet performance and reliability standards.</li> <li>Other duties as assigned</li> </ul> <p><strong>Required Skills:</strong></p> <ul> <li>Bachelor's Degree in Computer Science, Electrical/Computer Engineering, or equivalent experience.</li> <li>5-15 years of embedded software development experience with Embedded Linux platforms.</li> <li>Professional experience working in C++ and familiarity with RTOS (e.g., FreeRTOS, ThreadX) and bare-metal programming.</li> <li>Experience with embedded systems/platforms, hardware interfaces (UART, SPI, I2C, CAN, Ethernet, etc.).</li> <li>Knowledge of build systems, firmware upgrade mechanisms, an
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s