Projects

  • Implemented a crash fault tolerant distributed banking system that uses a variant of Multi-Paxos protocol to replicate a transaction log and maintain consistent account balances across a 5-node cluster.
  • Notes
  • Developed a high-throughput PBFT consensus protocol in Java featuring a collector node pattern to reduce communication overhead as well as prune message logs with Checkpointing and Threshold Signatures.
  • Wrote extensive test cases to simulate network partitions, timing attacks, and equivocation, ensuring the protocol recovered correctly from Byzantine failures.
  • Notes
  • Built a distributed key-value store in Java supporting cross-shard ACID transactions and linearizable consistency
  • Implemented Multi-Paxos replication with cluster reconfiguration and two-phase commit for cross-shard transactions
  • Achieved 5,000+ transactions per second under concurrent workloads through iterative optimization guided by logging and monitoring
  • Notes