Signal is looking for a senior engineer to fill a key role on the SRE side of our team. Instead of developing the products that Signal sells, we develop the systems that run our products.
So, what would you be doing?
- Design, implement, deploy and help maintain systems for building, deploying, and operating customer-facing applications.
- Implement Infrastructure As Code
- Research and deploy best software and hardware in order to make others more productive and run our applications at top performance.
- Learn and provide support for our foundational technologies and abstractions (including databases, load balancers, monitoring, reporting, etc.)
- Be awesomely vigilant and aware of new security threats. Recommend and implement new security technologies and policies.
- Production support. Yes, this means occasional PagerDuty.
What do we need from you?
- You foster cooperation, learning and coordination between development and ops functions, and embrace open source practices.
- You enjoy relentlessly automating away all toil
- Experience monitoring a large distributed system, and a thorough understanding of networking
- Strong knowledge of Unix (POSIX) with an emphasis on Linux (in particular, Debian GNU/Linux or Ubuntu).
- Experience with containerization
- Experience with databases (you do not need to be a DBA), both SQL and NoSQL.
- Experience with AWS that extends beyond simple cloud computing.
- You comfortable reading code in different languages (e.g, Java, Python, etc.)
- Configuration management experience (We use Puppet (for now), but strong Chef or Salt experience is good, too).
- Strong shell scripting experience.
- A solid foundation in computer science with practical experience in data structures, algorithms, and software design.
Bonus points for:
- Strong networking-fu
- Use of distributed log-oriented messaging systems, like Kafka
- Managing large-scale cloud deployments (especially using AWS)
- HAproxy, Nginx, Apache familiarity.