• Full Time
  • Poland

Overview

Across the planet, there is a vast untapped amount of computing power. By creating a global marketplace to connect all of this spare capacity, Golem will change the internet as we know it.
Decentralization is starting to play an important role in the global economy, starting with how we exchange resources. Golem has been in the Ethereum space since its early days and is a recognized decentralized computations leader.
Does building this ambitious game-changer project sound like a challenge you’d like to take on? If the answer is yes, we want to talk to you about joining the Golem team.

The Role:

We’re currently looking for a Backend Software Engineer to join our Core Team.
This team is building the backbone of the Golem Network, a highly complex and, in our opinion, quite enjoyable system. The main component is yagna, written purely in Rust. It is an entry point to Golem like, e.g., geth or erigon are entry points to the Ethereum network. The team consists of above-average skilled engineers solving complex problems in the decentralized systems area.
You would have much space for your ideas and research, doing innovations to improve yagna, our runtimes (QEMU-based light VM), networking (being currently reimplemented), scalability, reputation, security, and many other pieces that are at the core of the Golem Network. In many aspects, we tackle unique problems that no one has done before, which makes this role challenging and exciting.
In-office location: Warsaw, Poland
Remote location(s): CET timezone

‍What you’ll do with us:

  • Learn to code in Rust. You do not need to be a Rust developer. Any strongly, statically typed language experience (C++, Java, C#) would be enough to start.
  • Develop reusable, testable, scalable, and efficient code using Rust
  • Contribute to the Golem Factory open-source projects @GitHub
  • Asynchronous, concurrent, and network programming (TCP, UDP, HTTP)
  • Develop for all three leading platforms: Linux, macOS, and Windows
  • Design REST API (low-level Golem API)
  • Get feedback from the Applications team and SDK team on the above
  • Contribute to the company Tech Council committee
  • Test what you write with unit, integration, and manual tests
  • Attend daily and weekly stand-ups, sprint plannings, retrospectives, 1:1s
  • Work collaboratively in the CET timezone with other engineers within the team and across teams, especially when working remotely

You’re a great fit if:

  • You already use and love Rust, including async
  • You have experience with asynchronous and concurrent programming
  • You are skilled with Git, Github, and its tools and the know-how to use them in more significant projects
  • You have good knowledge of general software design, as well as API design (REST in particular)
  • You know your way around command-line tools and shell scripting
  • You have experience in using Qemu, configuring interaction with external host applications and development
  • You have experience with implementation of TCP protocol (we maintain own fork of smolTCP library)
  • You are a fast learner and are eager to pick up new technologies and projects
  • You can communicate fluently in English

It will be a plus if:

  • You are familiar with Python and Node.js

Golem Factory Tech Stack:

  • Backend: Rust, Python 3.8+, JavaScript (Node.js), TypeScript, REST
  • Version control, Reviews, Issue tracking: GitHub
  • Continuous Integration/Tools: GitHub Actions
  • Infrastructure: we are building one – the Golem Network!, Docker, Prometheus stack

Benefits @ Golem:

  • Attractive salary
  • Performance bonus
  • Flexible contract types
  • Remote-first culture with a hub in Warsaw (100% from home, 100% from office or hybrid)
  • 26 days of PTO
  • Training and conference budget
  • Private medical care
  • Sports card
  • Free meals and professional foosball table in the office
  • Company retreats and events