Staff Software Engineer

Alarm.comCentennial, CO
Hybrid

About The Position

Staff engineers optimize for the system that must keep delivering features two years from now — and they know the difference between a design that's clean on a whiteboard and one that holds up under real traffic, real teams, and real change. Alarm.com is scaling its customer experience platform through a significant architectural transition, and needs someone who has done this kind of work before — who knows how legacy systems accrue complexity, how to carve the right seams, and how to bring a team along for the journey without breaking what's already in production. This position is on the Customer Experience (CX) team — a full-stack group embedded at the core of Alarm.com's mobile and web apps. CX owns the moments that matter most to customers: getting them up and running on the platform, giving them the tools to manage their accounts, and finding ongoing ways to make the overall experience smarter and more intuitive. The systems that back those experiences are growing in complexity, and the team is actively working through an architectural evolution that requires strong technical leadership from within the team. As a Staff Software Engineer, you'll define how the team builds — not just what it ships. That means setting the architectural patterns the team builds against, driving the decomposition of complex monolithic systems into maintainable services, and making sure the quality bar doesn't slip as the pace picks up. You'll also be a mentor and technical anchor: the engineer that others bring their hardest problems to, and trust to give them a straight answer. This is a hands-on role. You'll still write code, lead design sessions, and stay close to production. The difference is that your decisions ripple outward — they shape how the whole team works.

Requirements

  • Bachelor's in Computer Science, Computer Engineering, a related field, or equivalent work experience
  • 7+ years of professional software development experience, with a demonstrated progression into technical leadership
  • Deep, hands-on experience in systems design and backend architecture — you can show specific examples of systems you've designed, the tradeoffs you made, and how those decisions held up over time
  • Experience designing and operating high-scale, high-availability services — systems where latency, throughput, and reliability SLAs are real constraints, not theoretical ones
  • Meaningful experience with distributed systems: service decomposition, inter-service communication, data consistency, and failure isolation
  • Strong object-oriented programming skills; C# or Java experience is a plus
  • Deep SQL expertise — schema design for scale, query optimization, index strategy, and understanding how database bottlenecks surface at the application level
  • Proven ability to lead technical direction in a collaborative environment — you know how to build alignment on architectural decisions, not just make them

Nice To Haves

  • Direct experience leading or significantly contributing to a monolith-to-microservices migration — including the organizational and process dimensions, not just the technical ones
  • Experience with event-driven architecture and messaging systems at scale (Kafka or similar)
  • Familiarity with the customer experience domain: onboarding flows, account management systems, session management, or notification infrastructure
  • Experience with Android (Kotlin/Java), iOS (Swift), or a front-end web framework — enough to engage meaningfully on client-side design decisions
  • Experience building platforms or shared services that other engineering teams build against

Responsibilities

  • Define the architectural patterns and technical standards for the CX team - your decisions become the baseline that others build against
  • Lead the decomposition of monolithic systems into well-scoped, independently deployable services, with a clear migration strategy that keeps production stable throughout
  • Design systems that absorb change - architectures that remain sound as requirements evolve and scale increases, not just ones that work on day one
  • Drive high-leverage technical decisions: data modeling, API contracts, service boundaries, event-driven patterns, and infrastructure choices
  • Identify architectural drift and technical debt before they threaten delivery, and build the case for addressing them
  • Set and maintain standards for testing, observability, and deployment across the team's systems
  • Conduct code and design reviews that raise the team's technical floor - teaching through feedback, not just approving or rejecting
  • Collaborate with engineering managers and product managers to sequence technical investment alongside product priorities
  • Stay close to the work: write production code, prototype solutions, and maintain enough hands-on involvement to lead with credibility
  • Model effective use of AI tools across the team - identifying where they provide real leverage and helping the team build good instincts for when and how to apply them
  • Other duties as assigned

Benefits

  • medical plans with company subsidies
  • a Health Savings Account (HSA) with a company contribution
  • a 401(k) with an employer match
  • paid vacation that increases with tenure
  • paid holidays
  • wellness time
  • paid maternity and bonding leave
  • company-paid disability and life insurance
  • collaborative and casual work environment
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service