Skip to contentSkip to content
Verified credentials. On-chain. Forever.Learn more
Ewance
Sign in
Cover image for Build a Shareable Immutable List for a Real-Time Document Editor
Code

Build a Shareable Immutable List for a Real-Time Document Editor

FreeVerified credential2 weeksAdvanced

Overview

What this challenge is about.

Build a Shareable Immutable List for a Real-Time Document Editor. Advanced challenge in code. Writing production code that solves real engineering problems, ...

CredentialBlockchain-anchored
ShareableLinkedIn-ready
LanguageEnglish
PaceSelf-paced

The Brief

What you'll do, and what you'll demonstrate.

Build a persistent immutable list whose every edit produces a new version cheaply by sharing structure, validated against the built-in list and benchmarked at three sizes.

This is not a coding exercise. It is the work a software engineer does between a Jira ticket and a merged PR. That distinction matters to every hiring manager who has seen candidates solve LeetCode problems and none who have shipped production code under real constraints.

When you finish, you will have something most graduates do not: a real-world deliverable, verified by Ewance, that you can show to a hiring manager and say "I did this. Here is the proof."

Earning criteria — what you'll demonstrate

  • Design and implement a persistent immutable data structure using structural sharing rather than copy-on-write
  • Express list operations recursively over a wide, shallow branching tree to keep per-operation cost proportional to depth
  • Validate a data structure against a trusted reference using property-based and fuzz testing
  • Benchmark and interpret time and memory behavior across multiple orders of magnitude of input size
  • Communicate a non-trivial abstraction clearly to engineers without prior background

Program Fit

Where this fits in your program.

Sharpens the same skills your degree expects you to demonstrate.

Aligned coursework coming soon.

Careers

Career paths this challenge builds toward

Completing this challenge demonstrates skills that transfer directly to these roles:

Backend Engineer

Shipping a versioned, immutable data structure under a collaborative editor is exactly the kind of correctness-critical infrastructure backend engineers own; you practice designing the abstraction, implementing it recursively, and proving it correct before it underpins production features.

This challenge sharpens

  • persistent-data-structures
  • recursion
  • python-programming

Platform / Infrastructure Engineer

Platform teams build reusable primitives other engineers depend on. Here you design a clean list abstraction and benchmark it rigorously across scales, mirroring how infrastructure work balances a tidy interface against measured performance at real-world sizes.

This challenge sharpens

  • data-abstraction
  • abstraction
  • benchmarking

Performance Engineer

Measuring time and memory across three orders of magnitude and explaining why structural sharing pays off is core performance-engineering work, turning intuition about cost into reproducible evidence and clear trade-off communication.

This challenge sharpens

  • benchmarking
  • persistent-data-structures
  • python-programming

One more thing

You can put a credential on your CV by Friday.