Insight # 2: Teams
Many developer team qualities are transferable to the blockchain space, but Ethereum’s Web 3.0 ecosystem is a completely different model. As such, it presents new problems that require teams with additional qualities.
If people are coming from a Web 2.0 background, where they are used to a very agile experience and the goals are to build, ship, break and redeploy, they will need an orientation to methods and goals better suited for blockchain, says Brett Sun, EVM Engineer for Aragon, an application running on Ethereum that enables self-organization beyond physical and national borders.
Deploying a smart contract in Solidity, for example, is a very different type of programming. “You can fix something that you deploy, technically, but by the time you realize that [there’s a problem], it’s been out there and potentially is dangerous and very bad things can happen.”
Blockchain properties such as “immutability” and “trustlessness” — especially on chains like Ethereum which process a large a number of transactions and store high value — require additional methods more similar to systems engineering.
“How do we build this well, how do we make sure it’s well tested? How do we make sure it doesn’t break, how do we make sure it’s robust? Versus, I just did it in 10 minutes, ship it, see if it works, redeploy it in the next 10 minutes when I make more changes. It’s a very different mental model,” Brett says.
Blockchain developer teams can be agile in other ways, however. Many are small, distributed globally, don’t have a hierarchy, pivot quickly — on scaling specifications for instance — and work to make it easy for core and part-time devs, as well as anyone in the open source community, to contribute to a project. But the Ethereum model is such as different system that it raises new problems for teams building in this space.
“We were a team of seven, just before our Contribution Period last year and now we’re about a hundred. We’ve grown quite aggressively and there’s definitely things that I’ve learned along the way,” says Jarrad Hope, co-founder of Status, working to build a mobile-first Ethereum operating system.
Because Web 3.0 technology is a different paradigm, it is important that teams have people who genuinely believe in it. “There’s a lot of people out there now who are excited about it, but if they don’t understand the core principles behind these things, they come up with solutions that might not be fully ideal for whatever reason. You end up having a lot of discussions or dialogue in trying to do education before getting back to execution.”
As teams become larger it is even more important to have people who believe in the technology. This is because as teams grow coordination costs also grow which adds pressure to centralize. Having people who understand the core principles of the technology is especially important when you’re trying to be a decentralized organization.
Of course, many of the qualities that make up good teams in the Web 3.0 space are also the same as those in Web 2.0. For Nick Johnson, founder and lead of the Ethereum Name Service project which maps from human-readable names to resources on Ethereum and elsewhere, excellent technical communication is important.
“People value rockstar developers, but underappreciate how much an amplifying effect being able to communicate effectively with workmates is. If you’re very good at what you do but you can’t communicate, then you’re only going to be effective on a small projects,” he says.
The ability to communicate clearly and technically is crucial for teams working to scale projects, currently a key objective of Ethereum. “I would much rather work with someone who is less efficient or less inspired but is better able to communicate their ideas with others and understand other people’s ideas. I think that leads to much more scalable teams.”
However, there are qualities that seem transferable to teams working on any project but take on new significance in the blockchain space. Community building, for instance, is important for all teams developing software and especially for those working on free and open source applications. But the ability to fork a network can give the skills needed for community building added importance, especially where networks form around high value products such as many blockchains and their applications.
“There’s a lot of weird things that can happen when you can take a network and duplicate it essentially and have a competing network without a lot of effort and then they can start attacking each other and things like that. There’s really crazy things that can happen when you start to get literally a clone of yourself,” says Aragon’s Brett Sun.
“The only thing that really differentiates particular clones I guess would be the community and so I think community building — getting people really interested, getting people really energetic and empathizing with the values in the mission — is really, really important. Because without that all of the potential in a particular project starts to fizzle out.”
Building community around strong values is important for teams to help withstand difficult decisions and taking leadership when hard choices need to be made.
“What happens if you get hacked, for example, how do you handle that? In the worst circumstances how do you react? These questions are really really important and the answers show whether or not that community is going to defend the project and really see it as something that’s important to them as well or if it’s just, ‘Okay. Then like I don’t this project anymore, let’s go somewhere else.’”
Ethereum has been battled tested and has so far overcome many problems it has faced. Doing so has produced, seemingly, an even more vibrant and committed developer base. However, as work to scale the system takes off, understanding the principles driving the protocol’s design, as well as the missions and visions informing many of its applications, will gain importance among teams, as will continued technical excellence, an orientation towards systems engineering, agile organization, clear communication and effective community building.
Note: Scaling Today is funded by the May 2018 Ethereum Grants Program. For more information visit: scaling.today