Harsh Yadav, design engineer
I'm Harsh Yadav. I design software, then write the code that ships it. Most recently design and frontend at
CureMeAbroad. Before that, sole frontend engineer on legal AI at Hammurabi, where I still design the system today. Started out freelancing on
Upwork.
Based in Pune, India. Open to new opportunities.
tap to see colorI care about the things most people skip. The edge cases, the layout shift, the place where a design gets handed off and quietly loses something. Most days I'm shipping somewhere in that gap.
EXPERIENCE
- ▪own the design system for a legal AI product live in the Turkish market, covering the existing Next.js web app and a new mobile app now being designed. the work runs from token architecture in Figma through the pipeline that generates the stylesheets
- ▪rebuilt the token layer as five Figma collections so every semantic token aliases a primitive in one hop, removing the vendor kit's middle theme layer. 64 variable pairs deleted and 134 bindings repointed
- ▪wrote a deterministic OKLCH palette generator in Python that derives the color ramps from six measured brand anchors and emits the contrast report alongside them, so the locked palette document is generated rather than hand written
- ▪built a three-part Figma to CSS token pipeline because the kit's own plugin could not be used: a dump script, an exporter, and a verifier that round-trips all 220 values back against the source. the exporter fails loudly on count drift and the generated stylesheets carry a do-not-edit header
- ▪held all text to AA 4.5:1 with no large-text relaxation, since the product's dominant text size is 12px. the palette carries 182 automated contrast checks with zero failures, and the focus indicator is an opaque 1px ring verified across all 15 focus variants
- ▪added a Desktop/Touch density collection and built the first mobile components against it. uppercase text-transform is banned system wide because Turkish distinguishes i/İ and ı/I, so labels are authored in their intended case
- ▪designed and built across two surfaces: the public site on Next.js 16, React 19 and TypeScript, and an in-house CRM, owning work from the database schema through the API layer to the interface. componentized the React codebase, centralized the design system and cleared out dead code
- ▪drove the page-side Core Web Vitals work on the public site with ISR, React Server Components and first-window code splitting. CLS on the doctors route went from 0.85 to near zero, and the destinations route moved from 3.6s to 2.0s LCP with Lighthouse performance from 81 to 93
- ▪cut first-window JavaScript by evicting axios from the critical path (57KB) and lazy loading the auth menu (26KB)
- ▪built the in-house CRM from schema to UI: PostgreSQL tables, Express and Prisma REST endpoints, React screens, a hospital and doctor directory with full CRUD, presigned S3 uploads, Zod request validation and pagination, plus real-time dashboard components over Socket.IO and React Query
- ▪designed the hospital document layouts in Figma and built the renderer behind them, generating PDFs on demand from live data with Puppeteer
- ▪moved site assets to S3 behind a CDN and reworked the image pipeline around it. tightened the public API with response payload projection, Cache-Control headers and PostgreSQL indexes on hot query paths
- ▪sole frontend engineer on a TUBITAK-backed AI legal research and drafting platform. owned the whole UI, the design system, TR/EN localisation and the state architecture underneath it
- ▪reverse-engineered UYAP's undocumented UDF format by decompressing the container and working out its XML formatting model, then built a web viewer that renders those documents in the browser with their formatting intact
- ▪designed and built the real-time research interface. a custom client-side protocol handles 15+ SSE event types into the React Query cache, so a lawyer follows each reasoning and retrieval step with its citations instead of waiting on a spinner
- ▪built the AI drafting flow on TipTap with custom extensions for section-by-section generation, version diffs and contextual mentions. in an internal survey, lawyers reported it cut their drafting time roughly in half
- ▪shipped the frontend of the UYAP judiciary integration to production, where lawyers use it on the platform
- ▪designed the full product in Figma and built it out in Next.js + Tailwind CSS
- ▪led full JavaScript → TypeScript migration across the entire codebase
- ▪configured React Query with smart cache invalidation, reducing redundant API calls by 30-40%
- ▪built social media integrations, onboarding flows, and modular Recharts dashboards
- ▪improved Lighthouse performance score from 70 → 95
- ▪took on small freelance work while finishing the last semester of my b.tech. a small client list, plus one project i built on my own to learn from
- ▪worked solo, so the design and the build were the same job. scoping what the client actually needed, drawing the screens in figma, then building and shipping the front end
- ▪learned the parts of the work that are not code. writing the scope before starting, and getting a site reviewed, deployed and live
PROJECTS
UDF Viewer
IN DEVWeb-based viewer for UYAP Data Format files used in Turkish legal and government systems. Replaces the government's desktop-only app with in-browser XML parsing, file structure extraction, and rendering.
Opal Consulting
ONLINECorporate website for a visa and migration consulting agency. Built the Next.js frontend with WordPress CMS integration for blog content and handled the full technical SEO setup.
Kleenestar
ARCHIVEDMarketing analytics platform with AI features. Owned the frontend development and product design, from initial wireframes to a production React app used by marketing teams.
Codesnippify
ARCHIVEDFull-stack code snippet manager with authentication, Shiki.js syntax highlighting, folder organization, dark/light theming, and public sharing via unique links.
QRestro
IN DEVSaaS platform for restaurant digitization — QR-based menus, real-time order management, and integrated payment processing via Razorpay.
TESTIMONIALS
Harsh doesn't need to be told what to do. He sees the problem, thinks it through, and ships it. We never had to micromanage him once.
He picked up our entire frontend alone and ran with it. Deadlines were always met, communication was always clear. Exactly the kind of person you want on your team.
Gave him the brief, got back a finished product. No back and forth, no missed deadlines. Just solid work delivered on time.
Harsh handled both the design and the code. He brought ideas to the table without being asked and the final product was better because of it.
Really easy to work with. He gets context fast, doesn't block you with questions, and always delivers what he says he will. Good teammate.
Harsh doesn't need to be told what to do. He sees the problem, thinks it through, and ships it. We never had to micromanage him once.
He picked up our entire frontend alone and ran with it. Deadlines were always met, communication was always clear. Exactly the kind of person you want on your team.
Gave him the brief, got back a finished product. No back and forth, no missed deadlines. Just solid work delivered on time.
Harsh handled both the design and the code. He brought ideas to the table without being asked and the final product was better because of it.
Really easy to work with. He gets context fast, doesn't block you with questions, and always delivers what he says he will. Good teammate.
SERVICES
Blank page to production. Flows, wireframes, the interface, then the code that ships it. One person across both halves, so nothing gets lost in the handoff.
OPEN TO FULL-TIME ROLES AND FREELANCE PROJECTS
BOOK A CALLGET IN TOUCH
whether you need a developer, a design partner, or someone to ship your next project, I'm open to the right collaboration.