Senior Staff Software Engineer
About the role
Alarm.com is looking for a versatile Senior Staff Software Engineer to join our Platform team. We're doing work in smart home technology, video analytics, large scale data processing, and much more. You'll have the opportunity to work across a variety of technology domains and own projects from design to deployment.
As a Senior Staff Software Engineer, you'll work collaboratively within our Platform and Operations teams to drive technical discovery, design, and implementation of large-scale applications, products, and platforms.
Responsibilities
- Mentor groups of junior, senior, and lead engineers.
- Develop software for a wide variety of platforms and technologies.
- Lead design of major software components, systems, and features – act as an architect for the platform team.
- Engage in the research, evaluation, and application of new technologies and methodologies to solve challenging problems.
- Work closely with product owners and business stakeholders to execute strategies and roadmaps.
- Work hard and be flexible: we have quick development cycles, evolving requirements, and lots of cross-team collaboration.
- Become an expert on system architecture, functionality, and data flows as well as operations processes and tools.
- Help support our core systems in production, including deployment and on-call support.
- Assist in capacity planning, both in terms of cloud as well as physical capacity.
- Assist in advising our database and overall data processing strategy.
- Participate in on-call rotations, as well as deployment and maintenance windows as needed.
- Provide support as subject matter expert for the technical and product domains.
- Exercise good judgment. Know when to work quickly and when to build a robust solution.
- Bring your ideas! We want our engineers to collaborate on product development, not blindly build to a spec.
- Other duties as assigned.
Requirements
- Bachelor's in Computer Science, Computer Engineering, a related field or equivalent work experience
- 10+ years of professional software development experience
- Experience leading and/or mentoring other engineers with a proven track record of developing people and solutions that are reusable by other engineers
- Proven expertise in object-oriented programming skills; C# and .NET experience a plus
- Software architecture experience
- Experience with production support (SRE experience also a plus)
- Extensive observability experience (Datadog, Grafana, Wavefront, etc) as well as runbook support
- Significant database design and development experience (SQL server a plus, as well as cloud database technologies)
- Capacity planning experience (ideally both in terms of physical as well as cloud infrastructure)
- Superior analytical skills with a good problem-solving attitude
- Ability to perform in a team environment
- Independent thinker and problem solver
- Expertise in object-oriented design and software lifecycles
Benefits
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.
Pay
The base salary range for this opportunity is $167,500—$199,500 USD, determined within a range based on factors including qualifications, location, and experience. This allows opportunity for growth and development within the role. The base salary offered is part of a total compensation package.