<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/what-i-learned-building-devscape---a-system-design-interview-grading-tool-xvzp0qn9j" -->

---
title: What I Learned Building Devscape - A System Design...
description: An indie builder shares lessons from creating a real-time architecture board tool for system design interview practice, noting that synchronizing state across...
canonical: https://daily.dev/posts/what-i-learned-building-devscape---a-system-design-interview-grading-tool-xvzp0qn9j
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: What I Learned Building Devscape - A System Design Interview Grading tool | daily.dev
og:description: An indie builder shares lessons from creating a real-time architecture board tool for system design interview practice, noting that synchronizing state across...
og:url: https://daily.dev/posts/what-i-learned-building-devscape---a-system-design-interview-grading-tool-xvzp0qn9j
og:image: https://api.daily.dev/og/posts/XVZp0Qn9j.png
og:image:alt: What I Learned Building Devscape - A System Design Interview Grading tool
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# What I Learned Building Devscape - A System Design Interview Grading tool

**[Raiyan Memon](https://daily.dev/sources/uyq31qrxhs7utomr5ywod)** · [@raiyan_memon](https://daily.dev/raiyan_memon) · 1 min read · 18 upvotes · 4 comments

## Summary

An indie builder shares lessons from creating a real-time architecture board tool for system design interview practice, noting that synchronizing state across multiple clients without introducing UI lag was far harder than rendering diagrams. Networking decisions around WebSockets vs UDP, event ordering, and state reconciliation ended up being the most instructive part of the project.

## Content

One thing I learned while building a real-time architecture board - [devscape.in](https://devscape.in)

I initially thought the difficult part would be rendering the diagram.

It wasn't.

The difficult part was synchronizing state between multiple clients without making the UI feel laggy.

That's where networking decisions started becoming much more interesting than the UI itself.

WebSockets? UDP? Event ordering? State reconciliation?

These are the parts of "system design" that become much clearer when you actually build something.

Visit 👉 [devscape.in](https://devscape.in)

## Community discussion

Top comments from developers on daily.dev.

**@spandanm110** · 2 upvotes

> Good Project for sure truly appreciating your work! I have bookmarked it as well for future using this platform.

**@agustinbarrientos** · 1 upvotes

> How do you resolve concurrent edits when two users move the same node at nearly the same time?

---

Tags: [#webdev](https://daily.dev/tags/webdev), [#career](https://daily.dev/tags/career), [#real-time-systems](https://daily.dev/tags/real-time-systems)

[View this post on daily.dev](https://daily.dev/posts/what-i-learned-building-devscape---a-system-design-interview-grading-tool-xvzp0qn9j)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"DiscussionForumPosting","mainEntityOfPage":"https://daily.dev/posts/what-i-learned-building-devscape---a-system-design-interview-grading-tool-xvzp0qn9j","headline":"What I Learned Building Devscape - A System Design Interview Grading tool","text":"An indie builder shares lessons from creating a real-time architecture board tool for system design interview practice, noting that synchronizing state across multiple clients without introducing UI lag was far harder than rendering diagrams. Networking decisions around WebSockets vs UDP, event ordering, and state reconciliation ended up being the most instructive part of the project.","url":"https://daily.dev/posts/what-i-learned-building-devscape---a-system-design-interview-grading-tool-xvzp0qn9j","datePublished":"2026-08-22T21:44:04.044Z","dateModified":"2026-09-13T21:32:59.586Z","author":{"@type":"Person","name":"Raiyan Memon","url":"https://daily.dev/raiyan_memon","image":"https://lh3.googleusercontent.com/a/AEdFTp7iKWpgJ8c1VhBfvFBRS32jIqapjecAle33iJWbAQ=s96-c","interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"EndorseAction"},"userInteractionCount":810}},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":18},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":4}],"comment":[{"@type":"Comment","text":"Good Project for sure truly appreciating your work! I have bookmarked it as well for future using this platform.","datePublished":"2026-08-24T03:38:44.062Z","dateModified":"2026-08-24T03:39:22.248Z","url":"https://daily.dev/posts/XVZp0Qn9j#c-XB34DgeC4","author":{"@type":"Person","name":"Spandan Mukherjee","url":"https://daily.dev/spandanm110","image":"https://media.daily.dev/image/upload/s--DPiFEPJn--/f_auto/v1751080458/avatars/avatar_fAzMy3W2xsDzchHrtyLZZ?_a=BAMClqZW0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}},{"@type":"Comment","text":"How do you resolve concurrent edits when two users move the same node at nearly the same time?","datePublished":"2026-08-25T01:58:41.504Z","url":"https://daily.dev/posts/XVZp0Qn9j#c-SVXG96tMZ","author":{"@type":"Person","name":"Agustin Barrientos","url":"https://daily.dev/agustinbarrientos","image":"https://media.daily.dev/image/upload/s--5ayxQnqn--/f_auto/v1788281802/avatars/avatar_wQYYVe5Tbj0NJ7C7qPoa8?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1}}],"isPartOf":{"@type":"WebPage","url":"https://daily.dev/sources/uyq31qrxhs7utomr5ywod","name":"Raiyan Memon"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Raiyan Memon","item":"https://daily.dev/sources/uyq31qrxhs7utomr5ywod"},{"@type":"ListItem","position":3,"name":"What I Learned Building Devscape - A System Design Interview Grading tool"}]}
```

