Look at Copycat and Atomix. I spent 3 years writing and rewriting it while studying the Raft algorithm, and it took me a long time to fully understand all of its different components and develop the additional algorithms for log compaction, client communication, and wait-free coordination. If a new team were starting from where I did - with no knowledge of consensus algorithms - it would still take a long time to develop a fully featured system simply because of the complexity of the concepts and the time it takes to learn and understand them. I've only had one contributor thus far come along and contribute significantly with a good understanding the algorithms (Madan Jampani who was one of the authors of Dynamo and has been a huge help with Copycat). You should almost never create a new system without having exhausted existing open source options. For instance, at my work we're thinking about writing our own job scheduler because the ones we've been using for the last two years are still a PITA to work with, but if we do decide to write our own in will have been after years of struggling with existing open source options. And there are some things that are just insane to try to create on your own. A home grown consensus algorithm is one of those things. There are only a few known correct consensus algorithms in existence (Paxos, Raft, View-stamped Replication, ZAB) and they all took years to develop, are peer reviewed, and require an insane amount of expertise to understand and implement. That is why many years after the creation of Raft I believe Copycat is one of the most if not the most feature complete implementation of the Raft consensus algorithm in existence, and it's still not totally stable.