Systems Engineer in R&D at ShowmaxApply now
We’re building a next-gen video streaming service —
Come join us!
At Showmax, we develop, maintain and operate a video streaming service enjoyed by people across the African continent. With the introduction of live sports streaming, we have to be able to cope with significant traffic spikes. Our current goal is to handle tens of millions of users in a span of minutes without any issues, automatically scaling resources as needed.
Since our private-cloud-based infrastructure cannot react to changing customer demand fast enough, we decided to migrate all of our workloads to AWS. The new stack, which has been under development for about six months, revolves around AWS, Kubernetes, and Go microservices.
The role of the R&D team is to bring the new infrastructure to life, oversee the migration process, and participate in all technical decisions. Internally, the team has a back-end part (mostly focusing on software development) and an infrastructure part (primarily focused on infrastructure development). Currently, we are short a pair of hands on the infra side of things, and that’s where you can help! :)
You are an excellent fit for the team if you:
- Want to help us design a next-generation infrastructure, enjoy studying how others did it, know how to evaluate competing solutions, and can come up with new ideas and write PoCs to validate them.
- Are not afraid of consistently running into situations for which you can’t find a (good) answer via Google. This means being ready to spend hours in front of a whiteboard understanding the problem and then designing the solution.
- Can handle a great amount of freedom and responsibility in what you do and when you do it (this is not for everyone).
- Have a strong sense of ownership, care about the quality of the work you deliver and expect the same from others.
You can look forward to:
- Learning a lot every day through rational discussions not affected by fashion-driven development. We use Kubernetes because, according to our research, it makes sense, not because it’s the trendy cool overhyped technology of tomorrow.
- Working in a small team (8 people, including you) dedicated to building something new, simple, robust, scalable, and reliable. That also means you have a say over what’s going to be done and why. In such a small team, you can actually make a difference.
- Streamlined, iterative development. It’s not uncommon to write, test, build and, deploy your changes in an hour, — that’s true for both the software and the infrastructure-as-code.
- We may never grow as big as Google, Facebook, or Netflix, but we’re solving precisely the same problems, just on a different scale. You will regularly have to worry about eventual consistency, cache invalidation, data partitioning and other toughies.
- Great hardware, 5 weeks of vacation, home office twice a week (Showmax is currently fully-remote due to the pandemic), 5 sick days, and a decent learning/conference budget.
These are our expectations of your experience:
- First of all, you should bring an open mind. Ideally, you would have enough prior experience working in similar jobs. However, less experience can be compensated by a great attitude: if you’re eager to learn, and are self-sufficient most of the time, you’re good to go! Our only expectation of experience is that you broke some critical piece of technology before, you cleaned up your own mess, and learned a lesson :).
- We expect you to be fluent in one of Python, Go, Ruby, C, C++, or Rust. You should have at least rudimentary experience with container virtualization — preferably Docker.
- Prior knowledge of Kubernetes would help. Ideally, you would know what K8s are, what makes them tick, and would have some experience developing, deploying and observing containerized applications orchestrated by K8s, or a similar technology.
- GNU/Linux hacker mindset: You should be able to leverage the power of standard Unix utilities and the shell since you will spend most of your time in command line and text editor. You should have a solid understanding of the core principles of operating systems and container virtualization, or at least you should enjoy working with them.
- Knowledge of English, spoken and written, is a must. You need to be able to express yourself in verbal and written forms, as we use English for task tracking, documentation, and at meetings with our English-speaking colleagues (usually, there’s somebody not speaking Czech, so most meetings are held in English).
- Extra kudos for experience with any of the following technologies: Terraform/Terragrunt, CloudFormation, Ansible, AWS (VPC, EC2, IAM, S3, EKS, MSK, ElastiCache, …), Helm, Kustomize, K8s CRDs, Jsonnet, non-trivial shell scripting.
If you don’t tick all the boxes, don’t worry and try anyway! Students are fine too! We want people who know their stuff or are willing and able to learn.
See other positions (12)