JobBobsReal-time global job discoveryLive

Staff Software Engineer - Embedded

Alarmcom · Tysons, Virginia · 2026-07-23

executive
Apply on the employer's site

About this role

Alarm.com 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 Staff Embedded Software Engineer for the Device Engineering team to help us define the future of the Internet-of-Things for residential and commercial properties by creating and integrating devices that connect with our robust cloud using next-gen communication stacks. As a Staff engineer you will act as a technical leader and subject-matter expert, architecting software systems, driving technical decisions across teams, and mentoring 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.

Required Technical Skills:

• Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related technical field.

• 10+ years of professional software engineering experience, with a strong focus on native/embedded systems development. Experience developing and working with a large complex C++ codebase.

• Expert-level proficiency in C++ (C++11/14), including modern language features, templates, and memory management. Expertise in highly efficient design and implementation for (disk, RAM and compute) constrained devices.

• Experience with C++ in bare-metal and RTOS-based environments (FreeRTOS, Zephyr, ThreadX, or similar).

• Expertise in implementing large complex systems. Expertise in CMake, Makefile and other build systems. Expertise in cross-compilation.

• Expertise in threading, processes and other Linux systems knowledge. Expertise in asynchronous and messaging-based designs (e.g., protobuf/nanopb).

• Expertise in IP networking and networking software development.

• Experience in building Linux kernels, device drivers, kernel modules, U-Boot, etc.

• Experience with static and dynamic analysis tools.

• Hands-on experience with wireless communication protocols relevant to IoT and security devices, such as Wi-Fi, Bluetooth/BLE, Zigbee, Z-Wave, 802.15.4, LoRa, or cellular (LTE-M/NB-IoT).

• Proficiency with Git and CI/CD pipelines adapted for embedded environments.

Responsibilities:

• Drive technical decision-making across teams, including evaluating trade-offs and building consensus around architectural approaches. Ability to analyze the architecture of a large existing codebase.

• Ability to analyze & architect C++ code for various use cases, such as monolithic vs modular design, static vs dynamic memory allocation, etc.

• Implementing software patterns such as state machines, event-driven design, and publish/subscribe models across large codebases.

• Drive cross-platform software design that supports multiple hardware variants or product SKUs from a shared codebase.

• Strong oral and written communication skills. Ability to create and own technical design documents, architecture decision records (ADRs), and system-level specifications.

• Skilled at translating complex technical constraints and firmware requirements into a clear set of tasks and communicating with product managers, hardware engineers, and other stakeholders.

• Ability to proactively identify systemic risks, technical debt, and architectural shortcomings, and to champion long-term remediation plans.

Nice to Have:

• Master's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related technical field.

• Experience with porting glibc, musl or bionic.

• Experience with formal software development processes such as Agile/Scrum adapted for hardware-dependent teams.

• Functional knowledge of security standards and protocols, such as TLS/SSL, OpenSSH, ECDSA/ECDH, AES256, HMAC, SHA256.

• Experience with designing firmware for video pipeline systems, image signal processing, or streaming protocols (RTSP, H.264/H.265) is a strong plus.

• Experience with Android and AOSP.

• AI-aided design and software architecture.

• Contributions to open-source embedded projects.

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.

WHY WORK FOR ALARM.COM?

• Collaborate with outstanding people: We hire only…

Skills asked for

Similar jobs

Apply on the employer's site

Your next role is already in here.

Search live openings from thousands of employers, save the ones worth a second look, and let JobBob keep watch for the rest.