StraaS's infrastructure powers OTT solutions (streaming, messaging and advertising technology with best multi-screen and multi-device user experiences) for businesses all over the world. We help businesses integrate OTT solution into their products, build world-class developer-friendly APIs, SDKs, and more. If you're an infrastructure engineer here, you'll get to build the systems that power our products.
You'll be on a team that maintains services we provide to the rest of engineering team, like resource scheduler or message queue. You'll make decisions with a significant impact on StraaS. There is a lot of work to do to make StraaS engineers' work easier and our platform even more reliable than it is today, and we'd love for you to be part of it. We're close to the customers using our systems, so we constantly get feedback that we can use to make them better.
We're looking for people with a strong background (or interest!) in systems. We'd love to hear from you whether you're a seasoned systems developer, or whether you've just learned you might like working with databases.
# You will
- Design, build, and maintain the core infrastructure used by all of StraaS's engineering team
- Debug production issues across services and levels of the stack
- Build a great customer experience for people using your infrastructure
# You may be a fit for this role if you:
It's not expected that any single candidate would have expertise across all of these areas. For instance, we have wonderful team members who are really focused on their customers' needs and building amazing user experiences, but didn't come in with as much systems knowledge
- Think about systems — their edge cases, failure modes, and lifecycles
- Know your way around a Unix system
- Focus on the needs of our users, both internal and external
- Are able to write high quality code in a programming language (Our main programming language is Golang, but it is not a must)
- Be familiar with cloud platform (e.g. GCP, AWS, Azure, etc...)
- Be familiar with container technology and relating CI/CD experiences based on it (eg. Docker, Kubernetes, etc...)
# Projects you could work on:
We have a ton of important work to do, which is why we're hiring! Our projects are of course changing all the time, but here are a few projects that we're working on, so you can get an idea of the types of work we do. Technologies we use include: nginx, jenkins, docker, kubernetes, etcd, mysql, elasticsearch, influxdb, redis, mongodb, fluentd and others.
- Plan and implement multi-region availability for our messaging infrastructure! All of our systems can sustain losing machines, and making our systems even more resistant to failure is a big theme for us. If you like thinking about distributed systems, you might find a good home here!
- Distributed tracing! To make it easier for any StraaS engineer, when debugging, to trace a request from its source down to every service it touched.
- We have a bunch of projects around deploying and running code: help us instantly roll back bad deploys so that we can recover quickly, and build infrastructure that lets us scale up our API workers in seconds in response to high API load.
- Maintain and improve the in-house cloud resources scheduler to fulfill specific scaling policies which the cloud platform doesn't provide.