Platform.sh is a groundbreaking hosting and development tool for web applications. We run dozens of cloud regions all over the world with a mix of clients, from individual developers running small development clusters to the biggest companies on earth, running some of their critical apps on us.
For its groundbreaking PaaS solution, https://platform.sh is looking for a Cloud Software Engineer with an interest in Python or Go, good understanding of Linux systems, and an ability to embrace the challenges of building robust, distributed systems.
There are many interesting challenges at Platform.sh that could use your attention:
- Our project backend allows customers to update their application with a Git push, or spin up a development environment in one step. We’re steadily adding more features to it.
- We maintain a wide selection of LXC, VM (AWS, Azure, Google Cloud, OpenStack), and Docker images using concise, declarative manifests.
- We have a high container density in our industry, and we’re aiming to get it higher.
- We’ve been working hard on a fast, resilient, and cost-optimized observability framework to make system behavior transparent to us and our customers.
- We support customer applications that use many different programming languages, including Python, Ruby, NodeJS, PHP, Java, Elixir, and .NET.
- We want to explore many other areas, including auto-healing on high-availability clusters, the performance of our multi-protocol ssh proxy, improvements to our block storage layer built on Ceph, new features on the edge layer, and the great ideas you’ll bring with you when you join.
- A curiosity about all things computer related, with a broad understanding of operating systems, system administration, networking, distributed systems, and version control, or strong expertise in one or more of those areas.
- Proficiency in Python or Go. We also love other languages, so if you’re interested in working with Python and Go and have expertise in a couple of other languages, we’d still like to hear from you.
- Strong knowledge of Git usage or internals
- Networking background (routing/protocols)
- Knowledge of practical security and cryptography
- Experience with C / C++ (we contribute to a bunch of upstream projects, like LXC) is a plus; love of C or C++ not required
- Experience with other programming languages (e.g. Rust, Haskell, Java, Javascript, Ruby, Common Lisp, PHP)
- Good knowledge of how the Web works (hacking Nginx with Lua a plus). You may want to brush up on HTTP before the interview.
- Good understanding of how database systems and search engines work
- A good notion of distributed systems (consensus protocols like Raft/Paxos, eventual consistency models, gossip protocols)
- Experience with Debian packaging or system administration