Software Engineer - Distributed Systems m/f/d
Impossible Cloud is building a new, distributed, virtual Cloud platform. Our first offering will be Cloud storage, later followed by Cloud compute and networking through our distributed network of nodes provided by various suppliers. Demand for Cloud services is increasing exponentially: here, you become part of the new global system driven by decentralized technologies disrupting the mainstream Cloud space.
Our founders are serial entrepreneurs and were extremely successful with previous companies. This provides the company with highly stable financing. We are strategically and financially independent from investors, we’re entering a booming market, and we’re passionate and 100% committed to success.
Join our team of rockstar entrepreneurial-minded engineers driving innovation, especially when established technologies face scaling challenges. In an all-English-speaking environment, we are researching and learning new solutions daily, pushing the boundaries of distributed technologies. Become part of something bigger: Impossible Cloud is aiming to create a European technology counterweight to the current dominance of the tech giants. Finally, we are proudly part of a global movement to improve the efficiency of existing infrastructure and build a smart, diverse, and sustainable business. Come reinvent the internet with Impossible Cloud!
In order to meet our ambition, we have to push distributed systems beyond what people consider possible! Your skills and experience are essential to build a reliable, scalable network of nodes.
You will be involved hands-on, solving the most exciting challenges of distributed systems: speed, reliability, and security. Because we do not have direct control over the providers, we assume that nodes will come and go frequently. Each leaving node could potentially take some of our states with it, so we must replicate and rebalance this state continuously to ensure we never lose data. The network needs to be robust against corrupted or rogue nodes. And should a node be involved in compute services, we must ensure that the computation is done correctly.
Together with your team of experts, you will be researching, building, and operating the software and systems necessary to solve these challenges.
What you will do
- Build products from scratch and maintain them in the area of distributed cloud solutions
- Support a cross-functional setup of scalable data structures, distributed storage, and computing architecture
- Design, build and operate large-scale systems serving data with the latency of tens of milliseconds to many countries worldwide with millions of users
- Write high-quality, well-tested code with very frequent and fast deployments to production
- Play a crucial role in the growth of our highly ambitious startup
What you bring to the table
- Significant experience building applications using Go, Rust, or related languages
- Track record developing and operating large-scale infrastructure services
- Self-drive and motivation, with a strong work ethic and passion for problem-solving
- Strong experience in designing and developing APIs and high-volume data streaming and processing systems
- A solid understanding of distributed systems and the technical building blocks like distributed hash tables, consensus algorithms, and gossip protocols
- Deep knowledge of network protocols and technologies, from DNS to IP routing, TCP and UDP connections, and modern high-level protocols (HTTP2, gRPC, Websockets)
- You understand cloud platforms architecture, especially networking, security, storage, and resilient application topologies
- You have experience designing and building peer-to-peer software systems and applications
- Practical experience “how the internet works”, hole punching, STUN/TURN
What we offer
- Experience of speedy growth: work with top talents on the journey to become THE next impactful player in cloud computing and the blockchain industry
- Being part of the founding team: one of the best times to join in terms of risk/rewards
- Openness: you can impact the company’s culture and make a difference with your own ideas, including on topics like benefits!
- Flexible home/remote balance
- Cool office, healthy brain foods (fresh fruit, berries, nuts, yogurt, or avocados), and good coffee!
- Experienced, supportive, and motivating colleagues
- Flat hierarchy and trust where the teamworks together on the same mission
- International environment: English is our work language
- Exciting tech and enough challenges: you will never be bored
1. Please submit your LinkedIn Profile or CV together with the application form
2. After checking your application, we invite candidates fitting our requirements to a first screening, during which we will also tell you about us.
3. We will then initiate further interviews to understand you and your skills better while striving for a fast and lean process.
4. Very soon, you might get an offer call, a written offer letter, and one signature later, you join the team.