Staff Software Engineer
Alarm.com · Tysons Corner, VA · 2 days ago
Engineering$144k–$169k/yrFull-time
About the role
Alarm.com is seeking a versatile Senior Staff Software Engineer to join our Platform team. This role involves working across various technology domains, owning projects from design to deployment, and contributing to the reliability of our production environment.
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 and optimize engineering solutions
- 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
- Advises on our database and overall data processing strategy
- Participate in on-call rotations, as well as deployment and maintenance windows as needed, working with our SRE team
- 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. Your work will be used by multiple business units so you will need to consider many use cases when developing
- Bring your ideas! We want our engineers to collaborate on product development, not blindly build to a spec
Requirements
- Bachelor’s in Computer Science, Computer Engineering, a related field or equivalent work experience
- 8+ years of professional software development experience
- Proven expertise in object-oriented programming skills; C# and .NET experience a plus
- Software architecture experience
- Experience leading and/or mentoring other engineers with a proven track record of developing people and solutions that are reusable by other engineers
- 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
- Expertise in object-oriented design and software lifecycles