Link Team
Email: link@radicle.xyz
Radicle is an ecosystem of technologies that aim to bring code collaboration to the decentralised landscape. We’re building protocols to allow us to collaborate in a self-sovereign manner, while also exploring how to make open-source software more economically viable without relying on large platforms.
Like our software, our team is decentralised, having many individuals work across the globe. Each team is completely self-governing in how they are organised.
The Link Team, in particular, is focused on effective protocols for code collaboration. We would like to note that this does not involve any blockchain technologies – in comparison to other Radicle teams utilising the Ethereum network for their technological solutions. We, as a team, invite a healthy dose of scepticism.
We are looking for individuals to supplement our current team as well as build an internal team. For the former, we are looking for individuals who want to work on and improve architecture components, helping us to use and battle test our own tools. We also want a protocol architect to work out more of the lower-level details. Finally, we are looking to build an internal team to research and implement a decentralised development architecture. As developers, we rely on automation of testing and deployment to make our lives easier. As Radicle developers we want this automation to happen in the decentralised landscape using the radicle-link
protocol and CRDTs. So, read on and see if these descriptions resonate with you!
The Automation Artificer
We want someone who would enjoy thinking about how we can bring continuous integration and deployment to a decentralised network. This would include making it easy to host and manage seed nodes that would also act as testing infrastructure and automated maintainers. We want to be able to use what we build and you must be willing to sell our team on your solutions.
Characteristics:
-
Enjoys the nitty-gritty of systems management.
-
Likes thinking about network architecture.
-
Has a penchant for automating the boring stuff.
-
Is familiar with monitoring for visibility into systems.
-
Experienced with deployment environments and technologies.
Bonus Knowledge
-
Has experience with different deployment systems, e.g. bors.
-
Understands Git to a deep level, warts-and-all.
The Collaborative Crafter
We are looking for someone who wants to rethink the collaborative process for changing code. Git brought us distributed code changes but merges centralised this workflow. We have experimented with having a distributed workflow using e-mail, but we centralise this by rotating maintainers. So, how can we utilise CRDTs and a patch-based workflow to automate maintainership without coordinating to agree on the order of commits? If you have an idea of how to do this, then we want to hear from you.
Characteristics:
-
Experience with and/or opinions about authenticated data
-
Cares about local-first applications
-
Wants to design new workflows for code collaboration
Bonus Knowledge
-
Has experience with different git workflows, e.g. gerrit.
-
Understands Git to a deep level, warts-and-all.
Application Architecture Artisan
The radicle-link
codebase has gone through quite the journey to be in a state where we, as a team, want to host and collaborate using our own tooling. There are many well-defined and yet-to-be-defined components that still need to be worked on. We want to expand our team to help get us there, so let us know if this sounds like you!
We want someone who likes building out the smaller components of a system to culminate in one, coherent system. This means diving into parts of the protocol as well as more API surface-level components. We want someone who is comfortable with writing long-form communication for design and collaboration.
Characteristics
-
Enjoys organising code in a data-oriented manner.
-
Likes designing API surfaces.
-
Is able to communicate with other teams and understand their needs and wants.
Bonus Knowledge
-
Understands Git to a deep level, warts-and-all.
-
Experienced with Rust, warts-and-all.
-
Fearful of concurrency, no matter what Rust tenets tell you.
Protocol Physician
Radicle is a protocol-first project. We need someone who is experienced with protocol design. You should enjoy the process of refining and articulating the design goals of the project and designing and evaluating the protocol architecture based on these goals. This includes network programming and cryptography – taking into account the interests of different network participants.
The goals of the protocol include:
- Local-First
- Self-Sovereign
- Platform Capture Resistant
Characteristics
- Deep understanding of the history of protocol designs and how those tradeoffs play out
- Experience designing public network protocols
- Detailed understanding of git (it’s fine to regret this)
Bonus knowledge
- Experienced with Rust or a functional programming language