×
Register Here to Apply for Jobs or Post Jobs. X

Software Engineer - Embedded

Job in Tysons, Fairfax County, Virginia, USA
Listing for: Alarm.com
Full Time position
Listed on 2026-07-18
Job specializations:
  • Software Development
    Embedded Systems/ Firmware/ IoT, Software Architect, C++ Developer, Software Engineer
Salary/Wage Range or Industry Benchmark: 144250 - 169126 USD Yearly USD 144250.00 169126.00 YEAR
Job Description & How to Apply Below
Position: Staff Software Engineer - Embedded

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 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, AES
    256, HMAC, SHA
    256.
  • 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…

To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary