Hands-on guide on building a scalable, distributed, fault-tolerant, task scheduler platform using Zookeeper in Java