Kishan Vaghani
Founder & Lead Engineer, ShareCode
Surat, Gujarat, India
B.E. Information Technology
About Kishan
Kishan Vaghani founded ShareCode and writes the engineering deep-dives on this blog. Day to day he ships product code on the Next.js front-end, the Firebase backend (Auth, Firestore, Realtime Database), the Yjs-based CRDT sync layer, and the WebRTC pipeline that runs voice and video for live pair-programming sessions inside the editor.
He holds a B.E. in Information Technology and worked in full-stack JavaScript before starting ShareCode — the usual progression of dashboards, then real-time dashboards, then realising most of the interesting bugs in his stack lived in the sync layer. ShareCode started as a weekend project to fix the latency and feature problems he kept hitting in other collaborative editors. It has been running in production long enough that the posts on this site quote behavior from real users rather than synthetic benchmarks.
The posts he has shipped here are: the WebRTC architecture explainer (SDP, ICE, STUN/TURN, signaling), the Firebase Authentication internals deep-dive (JWT structure, refresh-token flow, persistence modes, custom claims), the real-time sync walk-through (Yjs, state vectors, WebSocket transport), the technical-interview guide, the beginner intro to remote pair programming, and a couple of shorter teamwork posts. Most run 11–16 minutes of reading time, with full code examples and the specific production mistakes the team has hit and recovered from.
His writing focuses on the gap between a working tutorial and code you would actually ship. Most posts on the wider internet teach the happy path: fetch a token, render a list, connect to Firebase. His posts pick up at the failure modes — what breaks when the refresh-token loop has been silently broken for a month, why your video calls work in dev and fall apart with a fifth participant, how a security rule that passes a smoke test still leaks data under a real query pattern.
Outside ShareCode, Kishan reviews technical interviews using the platform, mentors developers earlier in their careers, and reads more distributed-systems papers than the size of the team strictly justifies. You can find his code on GitHub at github.com/kishanvaghani and reach him on LinkedIn at linkedin.com/in/kishanvaghani.
How Kishan writes
Most developers hit a tutorial after the obvious approach already failed. The job of the post is not to repeat the official docs — it is to build the mental model that lets the reader predict the next problem on their own.
Every engineering post here follows the same pattern. Start with the concrete symptom: the actual console error, the actual Firebase rejection, the actual failure that brought you to a search engine. Build up the model layer by layer until the symptom becomes obvious. Then offer the fix, with the trade-offs you accept when you adopt it. The format takes longer to read than a copy-paste recipe, on purpose — the goal is to leave you able to handle the next variant of the problem without searching again.
What Kishan writes about
Real-time collaboration and CRDTs
How CRDTs make multi-cursor editing feel instant. Posts cover Yjs specifically: state vectors, the binary update protocol, tombstone garbage collection, awareness state for presence, and the operational differences between CRDTs and OT that decide what kinds of collaboration you can actually build.
WebRTC and low-latency media
The full WebRTC pipeline from signaling through ICE to media transport. Why peer-to-peer still needs a signaling server, when STUN is enough versus when you have to pay for TURN relay, how to back signaling with Firebase without leaking tokens, and the seven failure modes that only show up under real network conditions.
Firebase authentication and security
JWT structure and the refresh-token flow as they actually behave in the Firebase Auth SDK, persistence modes and why the wrong one logs your users out across tabs, custom claims for RBAC without an extra database round-trip, and security-rule patterns that survive an audit.
Next.js and full-stack JavaScript
Architecture choices for Next.js apps that serve both static marketing pages and live, multi-user product surfaces from one codebase. App Router conventions, Server vs Client component boundaries, integrating Firebase without leaking admin credentials, and SEO that holds up when half the site is dynamic.
Technical interviewing
Running structured technical interviews remotely — problem design that tests engineering judgment rather than syntax recall, rubrics that reduce interviewer bias, and how to structure a 60-minute slot so the candidate gets a fair signal on a bad day. Drawn from the format the ShareCode team uses internally.
Background
Born and based in Gujarat, India. Studied Information Technology (B.E.) and worked through the standard full-stack JavaScript path — dashboards, CRUD APIs, then a real-time dashboard that taught him most of what he now knows about state synchronization, mostly by debugging it at 3 a.m. before a customer demo.
ShareCode came out of frustration with existing collaborative coding tools — heavy installs, enterprise pricing for basic features, and latency that fell over the moment users joined from low-bandwidth connections. The first version was a weekend prototype. It has since grown into the product the engineering posts on this site reference directly.
What Kishan is working on now
Most engineering time right now goes into the WebSocket sync layer at higher participant counts — the architecture that handled two or three concurrent editors comfortably starts to behave very differently when an interview panel of five plus the candidate all join one room with screen share and voice on. The posts on this site will continue to track that work as it lands in production.
Writing-wise, the next posts in the queue are a deep-dive on how the editor handles offline edits and re-syncs after a dropped connection, a follow-up to the Firebase Authentication post covering the App Check and reCAPTCHA Enterprise migration, and a short retrospective on the architecture calls that did not age well.
Areas of expertise
- Real-time collaboration & CRDTs
- WebRTC & low-latency media
- Firebase authentication & security rules
- Next.js & full-stack JavaScript
- Technical interviewing
Articles by Kishan (7)
- Engineering· 15 min read· 2026-05-22
WebRTC Architecture Explained for Beginners: SDP, ICE, STUN/TURN, and Signaling
A beginner-friendly engineering deep-dive into WebRTC — how video calling actually works under the hood, what SDP and ICE do, why you need a signaling server even though it's peer-to-peer, and the seven production mistakes that quietly break video apps.
- Engineering· 16 min read· 2026-05-22
Understanding Firebase Authentication Internals: JWTs, Sessions, Security, and Scaling
An engineering deep-dive into how Firebase Auth actually works — JWT structure, the refresh-token flow, persistence modes, security rules, custom claims, and the seven production mistakes that lock teams out of their own apps.
- Hiring· 7 min read· 2026-04-10
How to Conduct a Technical Interview Online
A complete guide to conducting effective technical coding interviews online — from choosing the right platform and designing problems to evaluating candidates fairly and avoiding common pitfalls.
- Teamwork· 8 min read· 2026-03-31
7 Benefits of Collaborative Coding for Development Teams
Discover why collaborative coding improves code quality, reduces bugs, accelerates onboarding, and strengthens team communication for development teams of all sizes.
- Collaboration· 8 min read· 2026-03-31
Remote Pair Programming: A Complete Intro for Beginners
Brand new to pair programming? Start here. Covers the driver/navigator basics, what tools you actually need, when pairing is worth your time, and how to run your first remote session without it feeling awkward. The follow-up post covers advanced patterns.
- Engineering· 11 min read· 2026-05-23
How Real-Time Sync Works Under the Hood
A technical deep-dive into how ShareCode uses CRDTs (Yjs), Firebase, and WebSocket connections to deliver real-time collaborative code editing.
- Tutorial· 9 min read· 2026-05-23
How to Share Code Snippets in Real Time
Learn the step-by-step workflow for sharing code snippets in real time using ShareCode — create, write, share, collaborate, and download.
Get in touch
Spotted a factual error or have a suggestion for a topic Kishan should cover? Email sharecodelive@gmail.com or use the contact form. Corrections are reviewed by the editorial team and applied within a few business days.