Alarm.com is the leading platform for intelligently connected properties.
Key Responsibilities
Work alongside senior engineers to develop and maintain embedded Linux applications, platform frameworks, and board support packages using C/C++.
Implement, test, and debug well-scoped features and bug fixes on real hardware, growing toward independent ownership.
Support device bring-up and validation with electrical and mechanical engineers.
Contribute to features that connect our devices to the cloud, working with software engineers across teams.
Participate in code reviews, write unit tests, and document your work to Alarm.com 's standards.
Communicate effectively and collaborate with others to ensure the timely delivery of projects.
Other duties as assigned.
Please note that sponsorship of new applicants for employment authorization, or any other immigration-related support, is not available for this position at this time.
Requirements
Bachelor's Degree in Computer Science, Electrical/Computer Engineering, or related field, completed or expected within the year.
0-2 years of professional experience; internships, co-ops, research, capstone, or personal projects involving embedded or systems software are welcome in place of industry experience.
Proficiency in C and/or C++, with an understanding of software architecture and design principles.
Coursework or project experience with Linux and comfort working from the command line.
Exposure to microcontrollers or single-board computers (e.g., STM32, ESP32, Arduino, Raspberry Pi, BeagleBone) and hardware peripherals such as UART, SPI, I2C, and ADC.
Foundational understanding of electronics and the ability to read circuit schematics.
Familiarity with version control systems such as Git.
Strong problem-solving skills, curiosity about how hardware and software meet, and eagerness to learn from code review and mentorship.
Clear written and verbal communication, and the ability to collaborate on a team.
Exposure to the Linux kernel, device drivers, board support packages, or hardware bring-up.
Experience with cross-compilation and build frameworks such as Yocto, Buildroot, OpenWRT, or Android.
Hands-on use of debugging tools such as JTAG, SWD, oscilloscopes, and logic analyzers.
Experience with scripting (Python, Bash), RTOS concepts, networking fundamentals, or automated testing.
Benefits & Perks
Collaborate with outstanding people: We hire only the best. Our standards are high and our employees enjoy working alongside other high achievers.
Make an immediate impact: New employees can expect to be given real responsibility for bringing new technologies to the marketplace. You are empowered to perform as soon as you join the Alarm.com team!
Gain well rounded experience: Alarm.com offers a diverse and dynamic environment where you will get the chance to work directly with executives and develop expertise across multiple areas of the business.
Community and Camaraderie: One of our core values is to 'Keep It Fun,' which to us means fostering a strong sense of community. Our culture is built on collaboration and connection, where we celebrate our successes and believe that a positive, engaging environment is key to doing our best work.
Alarm.com values working together and collaborating in person. Our employees work from the office 4 days a week .
Our total rewards package is designed to support you holistically—in your health, your finances, and your life outside of work. The package includes medical plans with company subsidies, a Health Savings Account (HSA) with a company contribution, and a 401(k) with an employer match. We encourage a healthy work-life balance with paid vacation that increases with tenure, paid holidays, wellness time, and paid maternity and bonding leave. To complete the package, we also provide company-paid disability and life insurance, all within a collaborative and casual work environment.
Ready to Apply?
Join Alarm.com and make an impact in renewable energy