Role: Senior Software Engineer, Distributed Systems (Camera)
Salary: $130K - $200K (heavily dependent on experience and work location) + RSUs, performance bonus, sign-on bonus
Location: SF, Chicago, Austin or Remote (anywhere in the U.S.)
About Cisco Meraki:
At Cisco Meraki, we know that technology can connect, empower, and drive us. Our mission is to simplify technology so our customers can focus on what's most meaningful to them: their students, patients, customers, and businesses. We’re making IT and security easier, faster, and smarter with technology that simply works. Meraki’s camera team is a growing, fast-moving team building security cameras with a unique edge-storage architecture, redefining an industry where innovation is rare. The MV security cameras blend the elegance and ease of use of high-end consumer systems with the immense scalability, security, and power of enterprise-grade solutions.
Who You’ll Work With
You’ll get the chance to work with a group of very skilled but low ego and collaborative engineers, with deep experience from both established companies to startups. The MV Backend team is focused on delivering stability, scalability, speed, and quality in MV’s cloud services. You will be joining a team that manages core portions of the system’s architecture. This includes our cloud proxy, which helps securely deliver video from cameras to user’s browsers or phones (wherever they are in the world), our video processing and export pipeline, systems that archive video to the cloud, the systems that trigger and deliver crucial alert notifications, and more.
What you'll work on:
We are looking for a Senior Software Engineer who will architect the next generation of our systems to support our rapidly growing business. You will help us as we convert our system to a set of highly reliable microservices, and work to bring new features to market at scale.
- Help plan and and execute our migration of existing services to microservices (Docker, Kubernetes)
- Design, code, package, and deploy core applications, with a focus on security (Go, Python, Scala, Java, Ruby, etc.)
- Create and prioritize useful and actionable metrics, monitoring, and alerting (Statsd, Grafana, Elasticsearch, Kibana, Pagerduty)
- Continuously improve resilience and performance of services via chaos engineering or other means
- Lead, mentor, and spread best practices to other engineers on the team
- Contribute to documentation to clearly define out workflows and service architectures
- Create unit, functional, and integration tests for services to ensure quality and correctness
You are an ideal fit if you:
- Have 2+ years of production experience with containers and container orchestration such as Docker and Kubernetes
- Have 4+ years of production experience with one of these or similar languages: Go/Python/Scala/Java/Ruby
- Successfully developed distributed systems at scale (a plus if IoT) in the past
- Would be excited to join a people-focused team, and look forward to contributing time to help your teammates
- Are familiar with Linux at an advanced level and can debug performance of a web service
- Take a focused, organized approach to development, testing, and quality
- Understand that privacy is inherently valuable for everyone, and work to make sure our system is transparent in its operation and secure with its data
- A plus: have experience with Audio/Video codecs (H264, etc.) and streaming protocols like HLS, RTSP, DASH