{
  "generatedAt": "2026-06-02T09:32:55.644Z",
  "profile": {
    "name": "Kushagra Bharti",
    "headline": "Student | Software Engineer | ML Enthusiast",
    "personalSummary": "I am a student and software builder who enjoys learning and expanding my skillset.",
    "primaryEmail": "kushagrabharti@gmail.com",
    "socialLinks": [
      {
        "label": "Email",
        "href": "mailto:kushagrabharti@gmail.com"
      },
      {
        "label": "LinkedIn",
        "href": "https://www.linkedin.com/in/kushagra-bharti/"
      },
      {
        "label": "GitHub",
        "href": "https://github.com/kushagrabharti"
      },
      {
        "label": "Medium",
        "href": "https://medium.com/@kushagrabharti"
      },
      {
        "label": "X",
        "href": "https://x.com/IamKushagraB"
      }
    ],
    "externalLinks": [
      {
        "label": "Film Portfolio",
        "href": "https://drive.google.com/file/d/1m3aFLAK4TE29ybbdOzObLS8zrrX3oJwM/view?usp=sharing"
      }
    ]
  },
  "about": {
    "introHeading": "Hey there! I'm Kushagra Bharti",
    "introBody": "I am a student and software builder who enjoys learning and expanding my skillset.",
    "currentProjects": [
      "Monopoly Bench - A platform where various LLMs can play Monopoly against each other; I plan to publish a paper connected to this work.",
      "A light-weight web crawler in Go - A project I am using to learn Go, concurrency, networking performance, and resource management.",
      "An open-source T3.chat app - A project I am using to sharpen my web development skills, try creative chat UX ideas, and eventually integrate my web crawler as a tool."
    ],
    "currentLearning": [
      "Go, especially concurrency.",
      "WebSockets and real-time applications.",
      "Machine learning fundamentals.",
      "LLMs, including tool-calling and context management.",
      "Networking performance.",
      "Resource management.",
      "Data management."
    ],
    "interestsOutsideTechnology": [
      "I love cooking and have been cooking since I was five years old.",
      "I love filmmaking, have directed 2 short films, and have contributed to other productions as a videographer and editor.",
      "I love sports, especially soccer, volleyball, tennis, and table tennis, and I also follow soccer, Formula 1, and the UFC.",
      "I am interested in psychology, reading, and the arts."
    ]
  },
  "intro": {
    "personalPhoto": "/portfolio/profile/headshot.png",
    "latestUpdate": "Currently applying for Summer 2026 internships",
    "funFact": "A film I made was screened at AMC Theatres in Times Square!",
    "featuredRead": {
      "title": "The Trillion Dollar AI Software Development Stack",
      "link": "https://a16z.com/the-trillion-dollar-ai-software-development-stack/"
    },
    "aiProjects": [
      "Pseudo-Lawyer",
      "CircuitSeer",
      "DataDrive"
    ],
    "travelPlans": "Visiting Home for summer break!"
  },
  "education": [
    {
      "slug": "ut-dallas-bs-computer-science",
      "order": 1,
      "dateRange": "2023 - Present",
      "position": "Student at University of Texas at Dallas",
      "focus": "BS in Computer Science with focus on Data and Machine Learning.",
      "description": "Learning about data structures, algorithms, and machine learning models to develop software applications and systems. Participating in hackathons and coding competitions to enhance problem-solving skills and gain practical experience in software development.",
      "schoolLink": "https://cs.utdallas.edu/education/undergraduate-studies/"
    },
    {
      "slug": "st-stephens-episcopal-school",
      "order": 2,
      "dateRange": "2019 - 2023",
      "position": "Student at St. Stephen's Episcopal School",
      "focus": "High School Diploma with focus on Computer Science and Mathematics.",
      "description": "Learnt computer science and math",
      "schoolLink": "https://www.sstx.org/boarding/boarding-student-support"
    }
  ],
  "experiences": [
    {
      "slug": "utsw-tsai-lab-machine-learning-engineering-intern",
      "order": 1,
      "dateRange": "Feb 2026 - Present",
      "category": "Research",
      "timelineTone": "active",
      "position": "Machine Learning Engineer Intern at UT Southwestern Medical Center, Tsai Lab",
      "summary": "Fine-tuning DeepLabCut/SuperAnimal for lab-specific 3-chamber mouse-behavior video and building an end-to-end computer vision pipeline for pose extraction, behavioral scoring, QC, and researcher-facing scorecards.",
      "description": [
        "Context: Working in the Tsai Lab at UT Southwestern on computer vision tooling for behavioral neuroscience, specifically 3-chamber mouse-behavior videos used to study social interaction and experimental phenotypes.",
        "Problem: Off-the-shelf pose estimation and manual script-based analysis were not enough for reliable lab review; the workflow needed lab-specific model adaptation, consistent post-processing, interpretable QC, and researcher-friendly outputs.",
        "Model architecture: Adapted the DeepLabCut/SuperAnimal pose-estimation stack to domain-specific 3-chamber mouse footage by hand-annotating lab frames and fine-tuning the base model against the visual conditions and behavioral setup used in the lab.",
        "Core implementation: Built the end-to-end ML analysis pipeline from raw video to pose extraction, likelihood-aware filtering, dropped-keypoint interpolation, behavioral metric generation, QC reports, and CSV/XLSX scorecards.",
        "Evaluation and benchmarks: Improved pose-track stability by 56.9% using fine-tuning, likelihood filtering, interpolation, and hardened post-processing across benchmark lab video clips.",
        "Impact and outcome: Turned a fragile, script-heavy analysis workflow into a reproducible computer vision pipeline that produces interpretable pose tracks, behavioral summaries, and lab-review-ready scorecards instead of raw model outputs.",
        "Technical depth: Corrected behavioral scoring logic around discrimination index, ambiguous cup contact, interpolation boundaries, chamber occupancy, occlusion/body-length flags, and low-confidence pose summaries so downstream metrics better match experimental definitions.",
        "What made it hard: The project sits at the intersection of model adaptation, noisy animal video, experimental behavioral definitions, and researcher usability; the system needed to expose uncertainty instead of hiding unreliable trials behind clean-looking outputs."
      ],
      "tags": [
        "Machine Learning",
        "Computer Vision",
        "DeepLabCut",
        "SuperAnimal",
        "Markerless Pose Estimation",
        "Model Fine-Tuning",
        "Domain Adaptation",
        "Behavioral Neuroscience",
        "Behavioral Phenotyping",
        "Mouse Behavior Analysis",
        "Video Analysis",
        "Pose Tracking",
        "Likelihood Filtering",
        "Keypoint Interpolation",
        "QC Tooling",
        "Research Software",
        "Python",
        "OpenCV",
        "pandas",
        "NumPy",
        "HDF5",
        "CSV/XLSX"
      ],
      "companyLink": "https://labs.utsouthwestern.edu/tsai-lab"
    },
    {
      "slug": "ut-dallas-undergraduate-researcher-monopolybench",
      "order": 2,
      "dateRange": "Apr 2025 - Present",
      "category": "Research",
      "timelineTone": "active",
      "position": "Undergraduate Researcher at UT Dallas, CAIR Lab",
      "summary": "Built MonopolyBench, a deterministic multi-agent LLM benchmark for evaluating tool-calling agents on long-horizon planning, negotiation, deception, bias, memory, and schema-constrained decision-making.",
      "description": [
        "Context: Working with the UT Dallas CAIR Lab on agentic AI evaluation, focusing on long-running multi-agent environments where models must plan, negotiate, remember state, and take schema-valid actions over many turns.",
        "Problem: Many LLM-agent evaluations are short, single-agent, or hard to reproduce; MonopolyBench creates a deterministic, replayable environment where agent behavior can be inspected at the level of prompts, tool calls, state transitions, and strategic decisions.",
        "System architecture: Built MonopolyBench as an authoritative rules engine plus multi-agent arena where tool-calling LLM agents play complete Monopoly games through schema-bound actions rather than unconstrained free text.",
        "Core implementation: Implemented deterministic game mechanics including seeded dice/cards, turn order, legal action menus, property ownership, rent, auctions, jail, trades, liquidation, bankruptcy, strict validation, corrective retries, and deterministic fallbacks.",
        "Evaluation design: Designed each decision around game state, recent history, memory, legal action schemas, model responses, parsed actions, tool-call traces, applied events, snapshots, summaries, and replayable artifacts.",
        "Impact and outcome: Built the benchmark infrastructure for a forthcoming agentic AI research paper studying planning, negotiation, deception, and bias in long-horizon, multi-agent game environments.",
        "Technical depth: Added full run telemetry so experiments are debuggable instead of black-box: prompts, raw responses, parsed actions, retries, fallbacks, validation failures, legal menus, state snapshots, and final summaries are all logged for analysis.",
        "What made it hard: The system has to keep LLMs constrained without making the game trivial; every tool-call path needs strict validation, reproducibility, and fallback behavior while preserving meaningful strategic freedom."
      ],
      "tags": [
        "LLM Evaluation",
        "Agentic AI",
        "AI Agents",
        "Multi-Agent Systems",
        "Tool Calling",
        "Function Calling",
        "Agent Benchmarking",
        "Deterministic Simulation",
        "Long-Horizon Planning",
        "Negotiation",
        "Deception",
        "Bias Evaluation",
        "Schema-Bound Actions",
        "JSON Schema",
        "Event Sourcing",
        "Replayable Artifacts",
        "Telemetry",
        "Python",
        "FastAPI",
        "WebSockets",
        "React",
        "TypeScript",
        "Vite",
        "Zod",
        "Pytest"
      ],
      "companyLink": "https://cairatutd.github.io/"
    },
    {
      "slug": "glydr-software-engineer",
      "order": 3,
      "dateRange": "Jan 2026 - May 2026",
      "category": "Industry",
      "timelineTone": "past",
      "position": "Software Engineer at Glydr.gg",
      "summary": "Led engineering for Glydr.gg's Railway-deployed, microservice-based configuration platform serving 1,000+ users, spanning public discovery, Steam authentication, admin tooling, Control Panel imports, CI/CD, and distributed config delivery.",
      "description": [
        "Context: Glydr.gg needed a customer-facing configuration hub for discovering, publishing, importing, and managing game-server / controller configuration payloads across public users, admins, and Control Panel workflows.",
        "Problem: The product needed more than static config files; it required authenticated user flows, official/admin publishing, stable versioned imports, repeatable deployments, and safe handoffs into the Control Panel without exposing large or private payloads in URLs.",
        "System architecture: Led engineering for a Railway-deployed, microservice-based platform serving 1,000+ users, with separate frontend, backend API, worker, and database services built around React/Vite, Fastify, PostgreSQL, Drizzle ORM, and GitHub Actions CI/CD.",
        "Core implementation: Built public discovery, Steam authentication, admin tooling, Control Panel imports, config detail pages, official config publishing, private uploads, import success states, and backend-owned session flows.",
        "Data model: Modeled the platform with relational tables for users, Steam identities, sessions, games, categories, configs, immutable config versions, imports, handoff tokens, background jobs, and audit logs.",
        "Security and correctness: Engineered config delivery with checksum-versioned payloads, tokenized imports, throttling, validation guards, HTTP-only cookies, CSRF checks, admin allowlists, stable checksum parsing, and invalid-payload rejection.",
        "Impact and outcome: Turned config sharing/importing into a repeatable product workflow for real users instead of an ad hoc file handoff, while giving the team deployment automation and backend validation for safer iteration.",
        "What made it hard: The platform had to bridge product UX and backend correctness: users needed simple one-click imports, while the system needed stable versioning, safe auth boundaries, replayable imports, and repeatable deploys."
      ],
      "tags": [
        "Software Engineering",
        "Technical Leadership",
        "Product Engineering",
        "Full-Stack Development",
        "Platform Engineering",
        "Microservices",
        "TypeScript",
        "React",
        "Vite",
        "Fastify",
        "PostgreSQL",
        "Drizzle ORM",
        "Railway",
        "GitHub Actions",
        "CI/CD",
        "Steam OpenID",
        "Authentication",
        "CSRF",
        "HTTP-Only Cookies",
        "Rate Limiting",
        "Checksum Validation",
        "Config Versioning",
        "Admin Tooling",
        "API Design"
      ],
      "companyLink": "https://glydr.gg/"
    },
    {
      "slug": "ut-dallas-undergraduate-researcher-optimization",
      "order": 4,
      "dateRange": "Apr 2025 - Nov 2025",
      "category": "Research",
      "timelineTone": "past",
      "position": "Independent Researcher (Optimization + ML) at UT Dallas",
      "summary": "Built paper-faithful optimization solvers and a solver-labeled dataset pipeline for 1D drone coverage planning, with benchmarks and QC gates to support supervised, GNN, and RL experiments on optimal tour planning.",
      "description": [
        "Implemented 4 paper-faithful solvers for 1D drone coverage planning (greedy + DP), including exact plan reconstruction so solver outputs can become usable training labels.",
        "Built an end-to-end data pipeline from instance generation → gold labels → featurization hooks → QC, enabling ML training on optimal solutions instead of heuristic approximations.",
        "Measured labeling throughput on a verified run: 370 labeled instances in 2.71s (~136 samples/s), writing ~280KB of JSONL data with automated validation of feasibility and coverage constraints.",
        "Configured defaults for a 67,000-sample labeled dataset across train/test/shifted/extrap/stress splits, supporting generalization and distribution-shift evaluation.",
        "Benchmarked exact solver scaling: dp_full stays under 1s up to n=1024 segments and reaches n=4096 in 8.41s, giving practical ceilings for exact-label generation.",
        "Maintained correctness gates with 162 collected tests, including plan round-trip tests and oracle cross-checks for solver behavior and reconstruction validity.",
        "Exposed ML-ready surfaces including gold labelers, legality masks, featurization hooks, and candidate metadata for future supervised learning, GNN, and RL experiments."
      ],
      "tags": [
        "Optimization",
        "Algorithms",
        "Dynamic Programming",
        "Greedy Algorithms",
        "Computational Geometry",
        "Coverage Planning",
        "Drone Routing",
        "Exact Algorithms",
        "Plan Reconstruction",
        "Dataset Generation",
        "Programmatic Labeling",
        "Featurization",
        "Data QC",
        "Benchmarking",
        "Reproducible Research",
        "Python",
        "NumPy",
        "PyTorch",
        "Pytest",
        "JSONL",
        "GNN",
        "Reinforcement Learning"
      ],
      "companyLink": "https://personal.utdallas.edu/~daescu/"
    },
    {
      "slug": "abilitie-software-engineering-intern",
      "order": 5,
      "dateRange": "May 2024 - Aug 2024",
      "category": "Industry",
      "timelineTone": "past",
      "position": "Software Engineering Intern at Abilitie",
      "summary": "Owned Llama 3.1 fine-tuning, structured-output engineering, cost optimization, telemetry, and latency work for Abilitie AI Cases, reducing LLM cost per conversation 70% across 27 role-play configurations and reaching 1.0s p95 TTFT.",
      "description": [
        "Context: Worked on Abilitie AI Cases, an enterprise LLM role-play training product for scenario-based leadership, communication, and decision-making practice.",
        "Problem: The product needed more reliable role-play behavior, lower LLM cost, structured model outputs, better latency visibility, and smoother perceived responsiveness across many scenario configurations.",
        "Model architecture: Owned end-to-end Llama 3.1 fine-tuning on proprietary role-play conversations, scenario data, and structured-output targets to improve domain coaching and JSON/tool-calling behavior.",
        "Core implementation: Built React/TypeScript chat flows, scenario configuration pages, end-state UI fixes, streaming/loading states, and Azure/AWS-backed provider request plumbing around production role-play flows.",
        "Structured output system: Replaced brittle free-text responses with schema-constrained JSON outputs so model responses could be validated, rendered as deterministic product state, and retried when they failed format expectations.",
        "Evaluation and optimization: Reduced LLM cost per conversation 70% across 27 role-play configurations through model migration, prompt compression of roughly 20%, schema-constrained outputs, and retry reduction of roughly 8%.",
        "Telemetry architecture: Built DynamoDB telemetry for TTFT, TTLT, token throughput, token counts, retries, errors, provider/model metadata, and per-request traces, making latency and reliability problems diagnosable instead of anecdotal.",
        "Latency impact: Optimized 3-second idle prefetching and stale-response invalidation to reach 1.0s p95 TTFT in the monitored role-play flow.",
        "Safety and robustness: Ran prompt-injection testing and hardening iterations to reduce out-of-format, unsafe, or scenario-breaking model behavior in customer-facing role-play interactions.",
        "What made it hard: The work required balancing cost, latency, model quality, schema validity, role-play realism, and user experience; optimizing one metric in isolation would have been easy, but the product needed all of them to hold together."
      ],
      "tags": [
        "Software Engineering",
        "LLM Product Engineering",
        "LLMs",
        "Llama 3.1",
        "Fine-Tuning",
        "Structured Outputs",
        "JSON Schema",
        "Tool Calling",
        "Prompt Engineering",
        "Prompt Injection Testing",
        "Model Evaluation",
        "Cost Optimization",
        "Latency Optimization",
        "Telemetry",
        "Observability",
        "DynamoDB",
        "AWS",
        "Azure",
        "React",
        "TypeScript",
        "Material UI",
        "Streaming UX",
        "Product Engineering"
      ],
      "companyLink": "https://www.abilitie.com/case-challenges"
    },
    {
      "slug": "st-stephens-dorm-proctor",
      "order": 6,
      "dateRange": "Aug 2021 - May 2022",
      "category": "Leadership",
      "timelineTone": "past",
      "position": "Dorm Proctor at St. Stephen's Episcopal School",
      "summary": "Supported younger boarding students through peer mentorship, safety training, and community-building in a residential school environment.",
      "description": [
        "Supported new students as they transitioned into boarding school life, helping them adjust to routines, expectations, and the social environment.",
        "Served as a peer mentor for academic, personal, and social challenges, using training from counselors and dorm staff to respond with discretion and care.",
        "Worked with dorm parents, administrators, and counselors to help maintain a safe, welcoming, and inclusive dorm environment.",
        "Completed safety and emergency training, including fire protocols and campus response procedures.",
        "Balanced proctor responsibilities with academics and extracurriculars, learning how to be dependable in a community-facing leadership role.",
        "Tried to be the person younger students could come to when something felt confusing, stressful, or just awkward about living away from home."
      ],
      "tags": [
        "Leadership",
        "Mentorship",
        "Peer Support",
        "Student Life",
        "Counseling",
        "Community Building",
        "Safety Training",
        "Communication"
      ],
      "companyLink": "https://www.sstx.org/boarding/boarding-student-support"
    }
  ],
  "projects": [
    {
      "slug": "monopolybench",
      "order": 1,
      "title": "MonopolyBench",
      "summary": "A deterministic long-horizon LLM-agent benchmark for evaluating planning, negotiation, deception, memory, bias, and asset-management behavior.",
      "description": [
        "Context: Built MonopolyBench as a long-horizon agent-evaluation environment in the same research direction as Vending-Bench and Beer Game-style AI-agent studies: structured simulations where LLM agents must make repeated economic decisions under constraints instead of answering isolated prompts.",
        "Problem: Most LLM benchmarks are short, single-agent, or difficult to replay. MonopolyBench tests whether tool-calling agents can sustain coherent planning across a full game involving cash, assets, rent, debt, trades, auctions, liquidity pressure, bankruptcy, and adversarial incentives.",
        "Research direction: The current benchmark is Monopoly-specific, but the roadmap is to generalize it into a real-estate and asset-management agent benchmark where models manage property portfolios, negotiate deals, handle liquidity constraints, price assets, and respond to strategic counterparties.",
        "System architecture: Built an authoritative Monopoly rules engine plus multi-agent arena where models act through schema-bound tool calls rather than free-form text, keeping every decision constrained, validatable, inspectable, and replayable.",
        "Core implementation: Implemented deterministic dice/cards, turn order, legal action menus, property ownership, rent, auctions, jail, trades, liquidation, bankruptcy, strict action validation, corrective retries, and deterministic fallbacks.",
        "Agent interface: Designed each decision around full game state, recent history, memory, legal action schemas, private/public messages, persona configuration, and tool-call responses so model behavior can be evaluated at the decision level.",
        "Telemetry and replay: Logged prompts, tool schemas, raw responses, parsed actions, retries, fallbacks, legal menus, state snapshots, applied events, and summaries so runs are debuggable instead of black-box.",
        "Evaluation design: Built the benchmark to support model-vs-model comparisons, win-rate rankings, TrueSkill-style ratings, micro-decision suites, negotiation/bluffing analysis, replay auditing, and controlled bias experiments through player descriptors.",
        "Impact and outcome: MonopolyBench turns a familiar economic board game into a deterministic agent-evaluation lab for studying long-horizon planning, strategic bargaining, memory, rule-following, and failure recovery.",
        "What made it hard: The benchmark has to preserve strategic freedom while preventing invalid actions, hallucinated game state, illegal trades, broken turn order, and untraceable model behavior; every run needs to be both game-correct and research-analyzable."
      ],
      "tags": [
        "LLM Evaluation",
        "Agent Harness",
        "AI Agents",
        "Multi-Agent Systems",
        "Tool Calling",
        "Function Calling",
        "Agent Benchmarking",
        "Long-Horizon Planning",
        "Economic Simulation",
        "Game Theory",
        "Real Estate Benchmarking",
        "Asset Management",
        "Negotiation",
        "Deception",
        "Bias Evaluation",
        "Schema-Bound Actions",
        "Deterministic Simulation",
        "Event Sourcing",
        "Replayable Artifacts",
        "Telemetry",
        "Python",
        "FastAPI",
        "WebSockets",
        "React",
        "TypeScript",
        "Vite",
        "Zod",
        "JSON Schema",
        "Pytest"
      ],
      "githubLink": "https://github.com/KushagraBharti/MonopolyBench",
      "thumbnail": "/portfolio/projects/monopoly-llm-benchmark.svg"
    },
    {
      "slug": "f1-reinforcement-learning",
      "order": 2,
      "title": "F1 Optimization Project",
      "summary": "A custom Gymnasium Monza RL environment and PPO training stack with F1-style physics, ray-cast perception, telemetry calibration, and replay.",
      "description": [
        "Context: Built a reinforcement-learning racing system around a custom Monza environment where agents learn to drive through simulated F1-style physics instead of controlling a toy gridworld.",
        "Problem: A credible racing RL project needs more than calling PPO on a demo environment; the environment must define a meaningful state space, action space, reward function, termination logic, physics model, baselines, telemetry, and replay loop.",
        "Environment architecture: Built a Gymnasium-compatible Monza RL environment with 18-feature observations, 9 discrete controls, 7 ray-cast sensors, checkpoint reward shaping, collision/off-track termination, and structured episode telemetry.",
        "Physics architecture: Implemented F1-style vehicle dynamics with a 60 Hz bicycle-model physics loop, speed/turning behavior, collision geometry, checkpoint progression, and control constraints designed for policy learning.",
        "Telemetry calibration: Calibrated simulator scale, speed profiles, turning behavior, and ghost-lap baselines against real Fast-F1 timing/telemetry so the simulator is anchored to real Monza behavior instead of arbitrary toy physics.",
        "ML implementation: Engineered the Stable-Baselines3 PPO training/evaluation stack with PyTorch, CUDA-backed checkpointing, rollout telemetry, policy evaluation, scripted baselines, Fast-F1 ghost baselines, and replay tooling.",
        "Evaluation and benchmarks: The system exposes the pieces needed to compare policies over reward, progress, crash/off-track rate, lap behavior, rollout traces, and replayable driving trajectories.",
        "Impact and outcome: The project demonstrates full-stack ML systems work: custom environment design, physics simulation, reward engineering, RL training, GPU-backed evaluation, telemetry, and qualitative replay.",
        "What made it hard: The hard part was not simply training PPO; it was making the simulator learnable, measurable, and debuggable while keeping physics, observations, rewards, baselines, and replays coherent enough to evaluate agent progress."
      ],
      "tags": [
        "Reinforcement Learning",
        "Physics Simulation",
        "Gymnasium",
        "PyTorch",
        "Stable-Baselines3",
        "PPO",
        "CUDA",
        "Control",
        "Reward Shaping",
        "Custom RL Environment",
        "Vehicle Dynamics",
        "Bicycle Model",
        "Ray-Cast Sensors",
        "Telemetry",
        "Policy Evaluation",
        "Rollout Replay",
        "Simulation",
        "Python",
        "NumPy",
        "Pygame",
        "OpenCV",
        "Fast-F1"
      ],
      "githubLink": "https://github.com/KushagraBharti/F1-ReinforcementLearning",
      "thumbnail": "/portfolio/projects/f1-optimization.png"
    },
    {
      "slug": "imc-prosperity-4",
      "order": 3,
      "title": "IMC Prosperity 4 Quant Trading Competition",
      "summary": "A top-6%-worldwide IMC Prosperity 4 trading system spanning fair-value market making, options pricing, residual signals, DP oracles, and replay diagnostics.",
      "description": [
        "Context: Competed in IMC Prosperity 4, a multi-round global algorithmic trading competition with both algorithmic and manual trading components, finishing top 6% worldwide with 203,249 XIREC.",
        "Leaderboard result: Finished #1088 overall, #1404 algorithmic, #893 manual, and #295 country, using a combination of algorithmic strategies, manual puzzle optimization, and round-by-round research iteration.",
        "Problem: Each round introduced new products, market mechanics, position limits, state constraints, and feedback windows; the challenge was to build strategies that could capture edge without overfitting local or portal-window artifacts.",
        "Research architecture: Engineered the repo as a reproducible quant research system with round-scoped strategies, final submissions, official feedback archives, replay logs, candidate scorecards, diagnostic scripts, process notes, and strategy-lineage records.",
        "Round 1 / 2 strategy: Built fair-value market-making engines for ASH_COATED_OSMIUM and INTARIAN_PEPPER_ROOT, combining stationary fair value, top-book imbalance, inventory-skewed quoting, drift/carry accumulation, visible fills, and position-limit enforcement.",
        "Round 2 mechanism design: Modeled the Market Access Fee and manual allocation challenge as expected-value optimization problems, separating algorithmic trading edge from manual puzzle PnL and fee mechanics.",
        "Round 3 strategy: Built multi-asset options/fair-value logic for HYDROGEL_PACK, VELVETFRUIT_EXTRACT, and VEV vouchers using dynamic fair-value estimation, underlying-implied voucher anchors, Black-Scholes-style pricing, strike-specific volatility assumptions, expiry decay, inventory skew, and selective take/quote thresholds.",
        "Round 4 strategy: Added volatility-smile diagnostics, implied-volatility reasoning, VFE/voucher role audits, participant-flow signals, Mark-driven mechanics, stale-inventory analysis, and anti-overfit labels for distinguishing robust improvements from portal-window-only gains.",
        "Round 5 strategy: Scaled to a 50-product universe with residual/stat-arb strategies across Galaxy Sounds, Sleep Pods, Microchips, Pebbles, Robots, UV Visors, Translators, Panels, Oxygen Shakes, and Snack Packs.",
        "Round 5 alpha families: Built PEBBLES synthetic fair value, TRANSLATOR/PEBBLES anchors, MICROCHIP/PANEL/UV/SLEEP/OXYGEN relative value, ROBOT/GALAXY momentum, product-specific reversal, category-relative residuals, and selective passive/taker execution.",
        "Dynamic programming research: Built DP hindsight oracles over discrete inventory states to compute optimal trade schedules, upper-bound execution paths, and missed-edge attribution under inventory and fill constraints.",
        "Signal distillation: Used DP oracle outputs to study causal z-score, anti-trend, imbalance, residual-spread, and category-relative signals without pretending the hindsight oracle itself was a valid live strategy.",
        "Backtesting and validation: Ran hundreds of candidate/probe backtests using Kevin/Xeeshan/Rust-style replay tooling, official-window extraction, product/category/block PnL attribution, fill-sequence comparison, inventory-path inspection, drawdown diagnostics, and state-size checks.",
        "State constraint engineering: Diagnosed official/local replay mismatch from oversized traderData; later candidates used aliases, delta-encoded integer histories, half-tick scaling, residual scaling, cache trimming, and state-cap checks to survive the 50,000-character official traderData ceiling.",
        "Overfit control: Explicitly rejected strategies that looked strong in portal windows but failed full-history replay, including candidates where aggressive local PnL collapsed under broader replay or transfer-risk checks.",
        "Metrics and outcomes: Tracked archived algorithmic results across final/best official artifacts including 89,306.8125 Round 1 algo PnL, 80,708 displayed Round 2 algo PnL after fees, 76,114.025390625 Round 3 algo PnL, 50,966.40673828125 Round 4 algo PnL, and 118,855.008789062 best stored Round 5 official algo PnL.",
        "Manual optimization: Optimized manual decisions separately from algorithmic strategy, including a Round 1 manual portfolio worth 87,995.10 PnL and a 1st-place manual rank, plus a Round 2 allocation worth 164,664 manual PnL.",
        "Impact and outcome: Built a serious quant research workflow rather than a one-file trading bot: strategy design, oracle research, signal generation, candidate promotion, replay diagnostics, drawdown analysis, and official constraint handling were all part of the system.",
        "What made it hard: The challenge was not just finding profitable signals; it was separating robust alpha from overfit, simulator quirks, state-size failures, fill-model mismatch, regime transfer, and feedback-window traps."
      ],
      "tags": [
        "Quantitative Trading",
        "Backtesting",
        "Algorithmic Trading",
        "IMC Prosperity",
        "Top 6% Worldwide",
        "Global Competition",
        "Dynamic Programming",
        "DP Hindsight Oracle",
        "Market Making",
        "Inventory-Skewed Quoting",
        "Fair Value Modeling",
        "Black-Scholes",
        "Options Pricing",
        "Volatility Smile",
        "Statistical Arbitrage",
        "Residual Signals",
        "Drift / Carry",
        "PnL Attribution",
        "Drawdown Analysis",
        "Inventory Management",
        "Execution Strategy",
        "Market Microstructure",
        "Signal Research",
        "State Serialization",
        "Python",
        "Data Analysis",
        "Research Infrastructure"
      ],
      "githubLink": "https://github.com/KushagraBharti/IMC-Prosperity-4",
      "thumbnail": "/portfolio/projects/imc-prosperity.png"
    },
    {
      "slug": "pact",
      "order": 4,
      "title": "Pact",
      "summary": "A hackathon winner mobile accountability app where users turn goals into escrow-backed commitments, submit proof, and rely on trusted validators.",
      "description": [
        "Context: Built Pact as a consumer accountability product where users turn personal goals into financially backed commitments instead of vague intentions.",
        "Problem: Most accountability apps rely on reminders or social pressure; Pact makes accountability concrete by combining financial stakes, proof submission, trusted validators, and explicit outcome resolution.",
        "Product architecture: Designed the full pact lifecycle from creation to stake lock, proof upload, validator voting, stake release/forfeit, cancellation, and resolved-state lockout.",
        "On-chain architecture: Implemented Solana escrow flows on devnet/mainnet so commitment stakes could be connected to actual on-chain escrow behavior rather than only mocked UI state.",
        "Backend architecture: Built Fastify APIs with Supabase Auth, PostgreSQL, and Supabase Storage for authenticated users, pact state, validator membership, proof image uploads, and lifecycle enforcement.",
        "Core implementation: Implemented pact creation, stake flow integration, proof-image submission, validator voting, majority-based resolution, creator self-vote prevention, membership checks, and resolved/cancelled pact lockout rules.",
        "Security and correctness: Enforced critical state transitions server-side so protected actions never trust client-supplied user identity, creator IDs, validator IDs, pact state, proof ownership, or resolution authority.",
        "UX design: Built a React Native/Expo mobile interface around commitment status, financial stakes, proof review, validator transparency, pending actions, and clear next-step prompts.",
        "Impact and outcome: Shipped Pact as a complete mobile hackathon product and won 1st place in the HackSMU Solana Track.",
        "What made it hard: The project had to coordinate mobile UX, backend state, validator logic, proof artifacts, and on-chain escrow semantics while preventing users from bypassing lifecycle rules from the client."
      ],
      "tags": [
        "React Native",
        "Full-Stack Mobile",
        "TypeScript",
        "Expo",
        "Expo Router",
        "Fastify",
        "Supabase",
        "PostgreSQL",
        "Supabase Auth",
        "Supabase Storage",
        "Solana",
        "On-Chain Escrow",
        "Web3",
        "SPL Token",
        "Mobile Development",
        "Full-Stack Development",
        "FinTech",
        "Consumer Social",
        "Product Engineering",
        "State Machines",
        "Server-Side Validation",
        "System Design",
        "Hackathon Winner",
        "1st Place"
      ],
      "githubLink": "https://github.com/KushagraBharti/Pact",
      "thumbnail": "/portfolio/projects/pact.png"
    },
    {
      "slug": "arachne-web-crawler",
      "order": 5,
      "title": "Go Web Crawler",
      "summary": "A high-concurrency Go web crawler with worker pools, host-aware frontier scheduling, PostgreSQL persistence, and 100,000-page public-web crawl runs.",
      "description": [
        "Context: Built a systems-heavy web crawler to crawl large web graphs, extract page content, preserve discovery structure, and make crawl runs inspectable instead of treating crawling as a black-box HTTP loop.",
        "Problem: A naive crawler can overload one domain, duplicate URLs, lose frontier state, hide failures, or produce unreadable output; Arachne needed bounded concurrency, host-aware scheduling, canonical deduplication, structured persistence, and reproducible benchmarks.",
        "Crawler architecture: Built the crawler core in Go around goroutine worker pools, channel-based scheduling, global/per-host concurrency controls, and a host-partitioned breadth-first frontier to avoid single-domain starvation while expanding large web graphs.",
        "Traversal model: Modeled crawl expansion as BFS-style frontier traversal: fetched pages emit outgoing links, links are canonicalized and deduplicated, new tasks are assigned to host queues, and workers pull tasks through bounded scheduling controls.",
        "Core implementation: Implemented HTTP fetching, HTML link extraction, canonical URL normalization, duplicate suppression, frontier scheduling, page/content capture, discovery-edge construction, crawl error recording, and run-level metadata.",
        "Persistence architecture: Persisted frontier state, fetched pages, extracted content, graph edges, crawl errors, and run metadata in PostgreSQL so crawl datasets can be queried, resumed, and analyzed instead of existing only as transient memory.",
        "Evaluation and benchmarks: Benchmarked public-web crawling at 10,003 pages in 15.39s, roughly 649.8 pages/sec, and separately completed 100,000 successful HTML pages.",
        "Impact and outcome: Turned the project from a standard crawler demo into a crawl dataset system with explicit graph structure, persistence, throughput metrics, and observable failure surfaces.",
        "Technical depth: The high-signal engineering is in the scheduler: goroutines, channels, breadth-first frontier semantics, host partitioning, canonical dedupe, bounded worker pools, and persistent graph/data state.",
        "What made it hard: Large public-web crawling breaks simple assumptions quickly; the crawler has to handle duplicate pressure, frontier growth, host imbalance, fetch failures, HTML variance, persistence overhead, and benchmark reproducibility."
      ],
      "tags": [
        "Go Concurrency",
        "Goroutines",
        "Go",
        "Channels",
        "Concurrency",
        "HTTP",
        "BFS Frontier",
        "Frontier Scheduling",
        "Worker Pools",
        "Host-Partitioned Scheduling",
        "URL Canonicalization",
        "Deduplication",
        "HTML Parsing",
        "PostgreSQL",
        "Graph Data",
        "Large-Scale Web Data",
        "Benchmarking",
        "Systems Engineering",
        "Backend Engineering",
        "Performance Engineering",
        "TypeScript",
        "Next.js",
        "React",
        "Server-Sent Events"
      ],
      "githubLink": "https://github.com/KushagraBharti/Web-Crawler-Go",
      "thumbnail": "/portfolio/projects/arachne.png"
    },
    {
      "slug": "novelbench",
      "order": 6,
      "title": "NovelBench",
      "summary": "A live multi-stage LLM benchmark where frontier models generate, critique, revise, and vote on creative prompts under pressure.",
      "description": [
        "Context: Built NovelBench to evaluate whether LLMs can produce, critique, revise, and judge creative ideas through a structured workflow rather than a single one-shot answer.",
        "Problem: Many creative AI comparisons are anecdotal or one-turn; NovelBench creates a repeatable arena where models face the same prompts, critique each other anonymously, revise under feedback, and vote on outputs.",
        "Benchmark architecture: Designed a multi-stage pipeline where 2–8 models generate ideas, anonymously critique peer outputs, revise with aggregated feedback, and vote on final submissions.",
        "Evaluation design: The workflow tests several capabilities at once: original idea generation, critique quality, feedback integration, self-revision, comparative judgment, and resistance to model-identity bias.",
        "Production architecture: Built durable run orchestration around append-only events, persisted artifacts, leaderboard snapshots, archive pages, detailed run pages, replayable traces, and stage-level failure tolerance.",
        "Model execution: Integrated OpenRouter-backed model calls with structured output normalization, model selection, workflow retries, scoring logic, failure handling, and leaderboard updates.",
        "Public deployment: Launched NovelBench as a live public benchmark site, currently tracking 42 benchmark runs, 219 generated ideas, 1,033 critiques written, and 17 total models.",
        "Product surface: Built the public Next.js interface with landing pages, live arena flows, searchable archive, leaderboard views, and detailed run pages so benchmark results can be inspected rather than hidden behind logs.",
        "Impact and outcome: NovelBench turns model creativity into a traceable multi-stage evaluation process, making it possible to compare models on generation, critique, revision, and judging behavior instead of vibe-based screenshots.",
        "What made it hard: The benchmark has to coordinate multiple models, preserve anonymity, normalize structured outputs, survive partial model failures, keep event history durable, and produce rankings that remain understandable to users."
      ],
      "tags": [
        "LLM Evaluation",
        "Evaluation Infrastructure",
        "TypeScript",
        "Next.js",
        "React",
        "Convex",
        "OpenRouter",
        "LLMs",
        "AI Benchmarking",
        "Creative Evaluation",
        "Multi-Model Evaluation",
        "Workflow Orchestration",
        "Realtime Systems",
        "Structured Outputs",
        "Anonymous Critique",
        "Model Voting",
        "Leaderboard Systems",
        "Prompt Engineering",
        "Product Engineering",
        "Research Infrastructure",
        "Solo Project"
      ],
      "githubLink": "https://github.com/KushagraBharti/NovelBench",
      "thumbnail": "/portfolio/projects/novel-bench.png"
    },
    {
      "slug": "autohdr-ml-lens-correction",
      "order": 7,
      "title": "AutoHDR ML Lens Correction",
      "summary": "A geometry-first computer vision system for automatic lens correction, combining a staged ResNet34 hybrid CNN with Brown-Conrady camera geometry.",
      "description": [
        "Context: Built AutoHDR as a competition-grade computer vision system for automatic lens correction on paired distorted/corrected image data.",
        "Problem: Pure image-to-image models can learn visually plausible corrections without respecting camera geometry; AutoHDR combined analytic lens distortion modeling with learned residual correction to keep the system grounded in optical structure.",
        "Model architecture: Trained a staged ResNet34 hybrid CNN with two prediction paths: a Brown-Conrady parameter head for global camera distortion coefficients and a 2-channel residual-flow decoder for local learned displacement.",
        "Geometry architecture: Fused analytic Brown-Conrady camera geometry and learned residual flow into a differentiable grid_sample warp, making lens correction a structured geometric transformation rather than unconstrained pixel generation.",
        "Training pipeline: Trained on 23,118 paired images using cloud H200 compute, moving through param-only calibration, hybrid training, and final fine-tuning stages.",
        "Inference pipeline: Ran deterministic full-batch inference over 1,000 test images with safety/fallback checks, submission packaging, and reproducible output generation.",
        "Evaluation and benchmarks: Scored 89.42 on the leaderboard, placing roughly top 25 to top 30 out of about 200 participants, and earned CTO review for the model architecture and training approach.",
        "Quality and validation: Measured stage progression during cloud training, including validation-loss reduction and training-warning cleanup, and validated the codebase with 108/108 passing tests across geometry contracts, inference fallback behavior, training hooks, QA tooling, and submission flows.",
        "Impact and outcome: Built a serious geometry-guided ML system that treated training, inference, scoring, QA, and packaging as one product pipeline rather than a visual demo.",
        "What made it hard: The technical challenge was balancing analytic camera geometry with learned correction capacity while keeping the warp differentiable, stable, reproducible, and strong enough to perform on hidden test images."
      ],
      "tags": [
        "Computer Vision",
        "ResNet34 CNN",
        "Deep Learning",
        "PyTorch",
        "CNNs",
        "ResNet34",
        "Image Geometry",
        "Lens Distortion Correction",
        "Brown-Conrady Model",
        "Optical Flow",
        "Residual Flow",
        "Warping",
        "grid_sample",
        "Model Training",
        "Staged Training",
        "Benchmarking",
        "H200",
        "Reproducible Systems",
        "Testing",
        "QA Tooling",
        "Competition Engineering"
      ],
      "githubLink": "https://github.com/KushagraBharti/AutoHDR-LensCorrection",
      "thumbnail": "/portfolio/projects/autohdr-ml-lens-correction.png"
    },
    {
      "slug": "beyond-chat",
      "order": 8,
      "title": "Beyond Chat",
      "summary": "An artifact-first AI workspace with specialized studios, tool-calling runs, durable context, model comparison, and storage-backed outputs.",
      "description": [
        "Context: Built Beyond Chat as an artifact-first AI workspace, not a single chat box, with dedicated workflows for chat, writing, research, image, data, finance, artifacts, settings, and model comparison.",
        "Problem: Traditional chat apps discard most value after the conversation ends; Beyond Chat turns useful model outputs into durable, searchable, reusable artifacts that can be attached to later workflows.",
        "Product architecture: Designed the product around specialized studios, saved artifacts, reusable context, provider-aware runs, tool traces, storage-backed files, and cross-studio handoffs.",
        "Agentic architecture: Implemented explicit run records, step timelines, provider metadata, tool-call metadata, failure states, artifact provenance, and saved outputs so workflows are traceable instead of opaque.",
        "Context system: Built Context Builder as the connective layer across studios, letting users attach saved artifacts to Chat, Compare, Research, Writing, Image, Data, and Finance workflows.",
        "Model orchestration: Engineered OpenRouter-backed chat and compare flows with model selection, parallel model comparison, streaming responses, retry handling, selected-result handoffs, and one-click artifact saves.",
        "Research workflow: Built Research Studio around Exa search, producing source-backed research reports with visible workflow steps and explicit provider-missing behavior when search is unavailable.",
        "Data workflow: Built Data Studio with Supabase Storage uploads, workspace-scoped file paths, CSV/XLS/XLSX parsing, preview/profile generation, analysis, chart/table rendering, and separate artifact saves.",
        "Writing workflow: Built Writing Studio with launch templates, targeted edit mode, bounded context, document generation, assistant suggestions, Compare integration, and provenance-linked saves.",
        "Infrastructure: Implemented Supabase-authenticated runtime infrastructure across FastAPI and React, including JWT-backed request context, workspace bootstrap, ownership checks, private storage, signed URLs, and RLS hardening.",
        "Deployment: Fully deployed the product through Vercel, Railway, and Supabase, with working demos for the core studios, provider integrations, artifact flows, and authenticated storage-backed workflows.",
        "Operational features: Added provider status reporting, disconnected-safe UI states, Stripe billing endpoints, export-to-Markdown/PDF, multi-artifact bundle export, and failure-aware UI behavior.",
        "Impact and outcome: Beyond Chat demonstrates a complete AI product architecture around durable artifacts, tool-calling runs, provider orchestration, reusable context, and multi-studio workflows rather than throwaway chat messages.",
        "What made it hard: The hard part was coordinating auth, storage, model providers, file parsing, context reuse, streaming UX, artifact provenance, workflow state, and provider failures into one coherent AI workspace."
      ],
      "tags": [
        "RAG",
        "Artifact Systems",
        "TypeScript",
        "React",
        "Vite",
        "Tailwind CSS",
        "Python",
        "FastAPI",
        "Supabase",
        "PostgreSQL",
        "Supabase Auth",
        "Supabase Storage",
        "Vercel",
        "Railway",
        "OpenRouter",
        "Exa",
        "Stripe",
        "LLMs",
        "Agentic AI",
        "AI Agents",
        "Tool Calling",
        "Workflow Orchestration",
        "Context Engineering",
        "Model Comparison",
        "Data Analysis",
        "Full-Stack Development",
        "System Design",
        "Product Engineering"
      ],
      "githubLink": "https://github.com/KushagraBharti/Beyond-Chat",
      "thumbnail": "/portfolio/projects/beyond-chat.png"
    },
    {
      "slug": "kaggle-titanic-ml",
      "order": 9,
      "title": "Kaggle Titanic ML",
      "summary": "A complete Titanic ML pipeline covering data cleaning, feature engineering, model comparison, EDA, and a documented learning report.",
      "description": [
        "Context: Built this as a foundational machine-learning project while learning the complete supervised ML workflow from scratch in Jupyter Lab.",
        "Problem: The goal was not to hide behind a final score; it was to understand and document the full path from messy tabular data to cleaned features, trained models, comparisons, mistakes, and lessons.",
        "Data workflow: Loaded the Titanic dataset, inspected missingness, cleaned values, encoded categorical features, extracted passenger titles, and engineered features such as FamilySize and IsAlone.",
        "Exploratory analysis: Studied survival patterns across passenger class, sex, age, family structure, fare, embarkation, and title-derived social signals using notebook-driven EDA.",
        "Modeling workflow: Trained and compared Logistic Regression, SVM, KNN, Decision Tree, Random Forest, Naive Bayes, Perceptron, and SGD models using scikit-learn.",
        "Evaluation and benchmarks: Reached roughly 86.76% training accuracy with Decision Tree / Random Forest baselines while using comparisons to understand bias, variance, overfitting, and model behavior.",
        "Documentation: Wrote the project as a full learning notebook with notes, reasoning, experiments, mistakes, and observations rather than only publishing final cleaned code.",
        "Impact and outcome: This project became the foundation for later ML work by forcing the full mental model: data cleaning, feature engineering, EDA, model selection, evaluation, and communication.",
        "What made it valuable: The project is intentionally fundamental; it shows the building blocks behind later ML systems and preserves the learning process instead of pretending the first ML project was advanced research."
      ],
      "tags": [
        "Machine Learning",
        "Feature Engineering",
        "Foundational ML",
        "Kaggle",
        "Titanic",
        "Jupyter",
        "Python",
        "pandas",
        "scikit-learn",
        "Data Cleaning",
        "EDA",
        "Model Comparison",
        "Random Forest",
        "Decision Tree",
        "Logistic Regression",
        "SVM",
        "KNN",
        "Naive Bayes",
        "Matplotlib",
        "Seaborn",
        "Learning Notes"
      ],
      "githubLink": "https://github.com/KushagraBharti/Kaggle-Titanic-Solution",
      "thumbnail": "/portfolio/projects/kaggle-titanic-ml.png"
    },
    {
      "slug": "pseudo-lawyer",
      "order": 10,
      "title": "PseudoLawyer",
      "summary": "An AI-powered contract negotiation platform with real-time multi-party chat, an AI mediator, and contract drafting from negotiation history.",
      "description": [
        "Built a Next.js 15 + Supabase platform where two parties can negotiate in a shared real-time chat and produce a final contract draft from the conversation.",
        "Implemented Supabase Auth, Postgres persistence, and Realtime subscriptions for multi-party negotiation sessions.",
        "Built Sudo, an AI mediator powered through OpenRouter / Claude 3.5 Sonnet, to respond to negotiation context and help parties move toward agreement.",
        "Implemented a trigger-based Ask Sudo flow so the mediator can be invoked when the conversation needs help instead of constantly interrupting the chat.",
        "Built a contract generation route that loads the template, participants, and recent negotiation messages before drafting the final agreement.",
        "Modeled the domain with profiles, templates, negotiations, participants, messages, and contracts in a 6-table Postgres schema.",
        "Measured OpenRouter chat-completion latency at p50/p95 = 897ms/981ms over 5 runs for the AI layer.",
        "Built a polished dark UI with role-based flows, dashboard pages, negotiation detail views, contract detail views, typing/loading states, and simple download support."
      ],
      "tags": [
        "Next.js 15",
        "TypeScript",
        "Supabase",
        "Supabase Auth",
        "Supabase Realtime",
        "PostgreSQL",
        "OpenRouter",
        "Claude 3.5 Sonnet",
        "LLMs",
        "AI Mediator",
        "Contract Generation",
        "Legal Tech",
        "Tailwind CSS",
        "Framer Motion",
        "Full-Stack Development"
      ],
      "githubLink": "https://github.com/KushagraBharti/PseudoLawyer",
      "thumbnail": "/portfolio/projects/pseudo-lawyer.png"
    },
    {
      "slug": "personal-site",
      "order": 11,
      "title": "Personal Portfolio Website",
      "summary": "A full-stack portfolio and personal tracker with a public showcase, private authenticated surfaces, live widgets, and machine-readable content for humans and AI systems.",
      "description": [
        "Built a public portfolio with a hero section, about content, education, experiences, featured projects, other projects, and dedicated project/experience data models.",
        "Added a private tracker surface alongside the public site so personal workflows can live behind authentication without leaking into the portfolio experience.",
        "Centralized content in TypeScript modules so public cards, detailed pages, and AI-facing snapshots stay aligned from the same source of truth.",
        "Generated an `llms.txt` / structured AI-facing view so the site can be read cleanly by humans and models.",
        "Integrated live GitHub and weather widgets with backend caching and graceful fallbacks so the homepage remains dynamic without depending on fragile client-side calls.",
        "Built the app as a responsive React/Vite/Tailwind interface with Express APIs, motion, reusable components, and verification for build, lint, unit, integration, and live flows."
      ],
      "tags": [
        "TypeScript",
        "Node.js",
        "Express",
        "React",
        "Vite",
        "Tailwind CSS",
        "Framer Motion",
        "Bun",
        "Vitest",
        "REST API",
        "Full-Stack Development",
        "API Integration",
        "Live Widgets",
        "System Design",
        "Testing"
      ],
      "githubLink": "https://github.com/KushagraBharti/Personal-Site",
      "thumbnail": "/portfolio/projects/personal-site.png"
    },
    {
      "slug": "quant-test-environment",
      "order": 12,
      "title": "Algorithmic Trading Quantitative Test Environment",
      "summary": "A modular quant testbench for strategy development, backtesting, risk metrics, visualization, and Alpaca paper-trading execution.",
      "description": [
        "Built a modular quant pipeline covering market data ingestion, feature engineering, strategy signals, transaction-cost-aware backtesting, risk metrics, trade logs, and visualization.",
        "Integrated Alpaca market data and paper-trading APIs to connect research code with simulated execution workflows.",
        "Implemented a moving-average crossover strategy and feature layer with returns, moving averages, signals, trades, strategy returns, and cumulative returns.",
        "Modeled transaction costs in the backtester and computed Sharpe ratio, max drawdown, and final return for consistent strategy evaluation.",
        "Generated CSV trade logs and Matplotlib equity/signal plots for auditability and faster strategy debugging.",
        "Benchmarked the full evaluation loop at ~1.54M bars/sec on a 199,951-bar seeded synthetic dataset, showing the research loop is fast enough for iteration.",
        "Current limitations: slippage modeling, parameter sweeps, position sizing, and walk-forward validation are not fully implemented yet."
      ],
      "tags": [
        "Python",
        "Alpaca API",
        "Pandas",
        "NumPy",
        "Matplotlib",
        "Algorithmic Trading",
        "Backtesting",
        "Paper Trading",
        "Risk Metrics",
        "Sharpe Ratio",
        "Max Drawdown",
        "Quant Research"
      ],
      "githubLink": "https://github.com/KushagraBharti/Quant-Test-Environment",
      "thumbnail": "/portfolio/projects/quant-test-environment.png"
    },
    {
      "slug": "northstar-agentic-financial-memory",
      "order": 13,
      "title": "Northstar Agentic Financial Memory Platform",
      "summary": "A memory-first AI wealth-management prototype where a local agent loads durable financial context, portfolio snapshots, and tool traces to produce explainable scenario analysis.",
      "description": [
        "Built Northstar around durable user context rather than a static portfolio dashboard: onboarding answers compile into readable memory, structured context packets, and a graph of financial preferences.",
        "Designed the runtime around one visible local agent, North, that preloads memory, context packets, and portfolio snapshots before responding.",
        "Implemented specialist tools for market/news research, financial data, filings, portfolio context, deterministic scenario checks, and trust receipts.",
        "Built a chat-first React/Vite interface with quick actions, markdown-rendered answers, a memory transparency modal, and a JSONL-style trace panel.",
        "Engineered onboarding as a high-signal financial memory compiler using a 44-question questionnaire to structure goals, values, risk comfort, communication style, tax context, and approval boundaries.",
        "Created a graph-first dashboard that visualizes durable user context as memory nodes instead of generic financial charts.",
        "Added deterministic demo reliability with seeded holdings/transactions/tax lots, simulated Plaid-style import, market-check fallbacks, and capped external calls.",
        "Built the Express + TypeScript backend with Supabase/Postgres-ready persistence, OpenRouter/OpenAI-compatible model execution, memory/status APIs, agent streaming routes, and local JSON/JSONL mirrors.",
        "Focused the architecture on agentic workflows, contextual memory, tool use, observability, audit trails, human-in-the-loop guardrails, and grounded retrieval/context packets."
      ],
      "tags": [
        "TypeScript",
        "React",
        "Vite",
        "Express",
        "Supabase",
        "PostgreSQL",
        "OpenRouter",
        "LLMs",
        "Agentic AI",
        "AI Agents",
        "Tool Calling",
        "Contextual Memory",
        "RAG",
        "JSONL Tracing",
        "Observability",
        "Guardrails",
        "FinTech",
        "Portfolio Analytics",
        "Scenario Analysis",
        "Full-Stack Development",
        "System Design"
      ],
      "githubLink": "https://github.com/YuvrajKashyap/northstar",
      "thumbnail": "/portfolio/projects/northstar.png"
    },
    {
      "slug": "age-gender-recognition",
      "order": 14,
      "title": "Age & Gender Recognition",
      "summary": "A real-time OpenCV demo that detects faces from video and predicts age/gender using pre-trained Caffe DNN models.",
      "description": [
        "Built a real-time face detection pipeline using OpenCV’s DNN module.",
        "Used pre-trained Caffe models for age and gender prediction, with approximate reported accuracy of 71% for gender and 62% for age in the project context.",
        "Tuned confidence thresholds and padding around detected face regions to improve prediction stability.",
        "Rendered bounding boxes and prediction labels directly on the video stream for immediate visual feedback."
      ],
      "tags": [
        "Python",
        "OpenCV",
        "DNN",
        "Caffe",
        "Face Detection",
        "Real-Time Processing",
        "Computer Vision"
      ],
      "githubLink": "https://github.com/KushagraBharti/Gender-Age-Detection",
      "thumbnail": "/portfolio/projects/age-gender-recognition.png"
    },
    {
      "slug": "pcb-design-project",
      "order": 15,
      "title": "PCB Design Project",
      "summary": "A hardware project where I designed, ordered, assembled, and tested custom PCBs as part of a senior independent project.",
      "description": [
        "Designed multiple PCBs in EasyEDA, moving from schematic capture to board layout and manufacturing files.",
        "Ordered boards and components through JLCPCB/LCSC, learning the practical constraints around cost, availability, package type, and manufacturability.",
        "Worked through design challenges involving ATmega328 variants, SMD/THT parts, capacitive-touch buttons, power routing, and component placement.",
        "Assembled and tested the boards after delivery, gaining hands-on soldering, debugging, and hardware bring-up experience."
      ],
      "tags": [
        "PCB Design",
        "Circuit Design",
        "EasyEDA",
        "JLCPCB",
        "LCSC",
        "Electronics",
        "Hardware",
        "Soldering",
        "Embedded Systems"
      ],
      "githubLink": "https://drive.google.com/drive/folders/1Zpps2I5CSq7O7xIUTwsn9uJrs2zYMwTK?usp=sharing",
      "thumbnail": "/portfolio/projects/pcb-design-project.png"
    },
    {
      "slug": "self-driving-car-project",
      "order": 16,
      "title": "Self-Driving Car Project",
      "summary": "An Arduino-based RC car rebuild with ultrasonic sensors and a custom obstacle-avoidance control loop.",
      "description": [
        "Repurposed an RC car by rebuilding its internals with an Arduino Uno, motor shield, ultrasonic sensors, and custom wiring.",
        "Wrote C++ control logic to read ultrasonic distance data and perform obstacle detection/avoidance.",
        "Learned the hardware/software debugging loop: wiring, sensor noise, motor control, soldering, and physical-world failure cases."
      ],
      "tags": [
        "Arduino",
        "C++",
        "Self-Driving",
        "Autonomous Vehicle",
        "RC Car",
        "Electronics",
        "Ultrasonic Sensors",
        "Hardware"
      ],
      "githubLink": "https://drive.google.com/drive/folders/1Ma02iYvhobL4ckcy6yOPA300WvIpOeDD?usp=sharing",
      "thumbnail": "/portfolio/projects/self-driving-car-project.png"
    },
    {
      "slug": "circuit-seer",
      "order": 17,
      "title": "CircuitSeer (Circuit Solver)",
      "summary": "A computer vision circuit-analysis tool that detects components, traces wiring, and helps solve simple circuit diagrams.",
      "description": [
        "Built CircuitSeer through the AI Mentorship Program at UT Dallas as a team project combining object detection and classical computer vision.",
        "Focused on component recognition using a fine-tuned YOLOv5 model to detect resistors, capacitors, diodes, inductors, and power sources.",
        "Integrated line-detection work using Canny Edge Detection and Hough Transform to help trace wiring between detected components.",
        "Connected the detection outputs to downstream logic for simple series/parallel resistance and capacitance analysis.",
        "Built the project with Python and Flask so users could upload circuit diagrams and receive structured analysis through a web interface."
      ],
      "tags": [
        "Python",
        "YOLOv5",
        "Flask",
        "OpenCV",
        "Computer Vision",
        "Object Detection",
        "Canny Edge Detection",
        "Hough Transform",
        "Circuit Analysis"
      ],
      "githubLink": "https://github.com/Hteam121/circuit-seer",
      "thumbnail": "/portfolio/projects/circuit-seer.png"
    },
    {
      "slug": "data-drive",
      "order": 18,
      "title": "DataDrive: Unified Insights for Data & Fuel Optimization",
      "summary": "A full-stack ML analytics dashboard for exploring Toyota vehicle data, fuel-efficiency predictions, clustering, and interactive visualizations.",
      "description": [
        "Built a Flask + React analytics dashboard over Toyota vehicle data, combining model-backed predictions with interactive exploration.",
        "Implemented regression and K-Means clustering pipelines for fuel-efficiency and vehicle-segmentation analysis.",
        "Built backend API endpoints for prediction, car detail retrieval, and clustering results.",
        "Added data cleaning, feature engineering, and model evaluation workflows to keep the ML layer reproducible.",
        "Built interactive React/D3 visualizations and a 3D car viewer to make the model outputs easier to explore.",
        "Integrated GPT-powered explanation generation and Pinata storage as experimental transparency/auditability features."
      ],
      "tags": [
        "Flask",
        "Python",
        "Machine Learning",
        "Linear Regression",
        "KMeans",
        "React",
        "D3.js",
        "Three.js",
        "Data Analytics",
        "APScheduler",
        "SHAP",
        "OpenAI",
        "Pinata"
      ],
      "githubLink": "https://github.com/KushagraBharti/HACKUTD-Data-Drive",
      "thumbnail": "/portfolio/projects/data-drive.png"
    },
    {
      "slug": "maze-traversal",
      "order": 19,
      "title": "Maze Traversal",
      "summary": "A small recursive DFS maze solver in Python that traces a path from start to exit through a grid-based maze.",
      "description": [
        "Implemented a recursive depth-first search solver for mazes represented as nested lists.",
        "Marked the solution path with directional arrows to visually trace movement from start to exit.",
        "Added file loading, start-position detection, intermediate maze printing, and execution-time measurement.",
        "Used the project to practice recursion, backtracking, grid traversal, and simple algorithm visualization."
      ],
      "tags": [
        "Python",
        "Depth-First Search",
        "Recursion",
        "Maze Solving",
        "Backtracking",
        "Algorithms"
      ],
      "thumbnail": "/portfolio/projects/maze-traversal.png"
    },
    {
      "slug": "point-cloud-down-sampler",
      "order": 20,
      "title": "Point Cloud Down Sampler",
      "summary": "A point-cloud processing project comparing a from-scratch voxel downsampler with Open3D’s built-in voxel grid method.",
      "description": [
        "Implemented a custom voxelization algorithm that groups 3D points into discrete grid cells using mathematical flooring.",
        "Reduced dense point clouds while preserving overall shape structure for downstream visualization and analysis.",
        "Compared the custom implementation against Open3D’s high-performance `voxel_down_sample` method.",
        "Built a small pipeline to load CSV point clouds, convert them into PCD format, downsample, and export processed outputs.",
        "Used the project to understand the tradeoff between writing geometry code from scratch and relying on optimized library primitives."
      ],
      "tags": [
        "Python",
        "Pandas",
        "Open3D",
        "Voxelization",
        "Point Cloud",
        "Downsampling",
        "3D Data",
        "Geometry"
      ],
      "thumbnail": "/portfolio/projects/point-cloud-down-sampler.png"
    }
  ],
  "writings": [
    {
      "slug": "epistemic-velocity",
      "order": 1,
      "category": "value",
      "title": "epistemic velocity",
      "summary": "Lifelong learning as epistemic hygiene: curiosity, discipline, and pressure against stale competence.",
      "markdown": "# Epistemic Velocity\n\nI treat learning as upkeep, not ambition.\n\nThe half-life of useful knowledge keeps shrinking. Competence calcifies. You stop noticing the terrain moved because the patch you're standing on still feels solid.\n\nWhat I'm watching in myself:\n\n- how fast I can re-derive something I forgot\n- whether I update without making it identity-shaped\n- whether the breadth compounds or just collects\n- whether I'm getting enough adversarial input to expose bad priors\n\n> Curiosity is cheap. Discipline is what stops it becoming drift.\n\nYou don't usually get out-thought. You get out-iterated."
    },
    {
      "slug": "adaptive-agency",
      "order": 2,
      "category": "belief",
      "title": "adaptive agency",
      "summary": "High-agency adaptation under ambiguity: fast revision, clear authorship, tools kept subordinate.",
      "markdown": "# Adaptive Agency\n\nI care more about reaction time than position.\n\nMost plans rot on contact. The skill is re-deriving fast, without making a thing of it. You drop the version of yourself that was right yesterday because that version is now a liability.\n\nHow I try to operate:\n\n- think from primitives, not analogies to last quarter\n- move before certainty turns into procrastination\n- change direction without performing the change\n- treat AI as exoskeleton, not identity\n\nWhen intelligence becomes common infrastructure, the floor on answers drops. The premium relocates: context, taste, conviction, execution.\n\n> A tool that absorbs your agency is just a tool that's using you."
    },
    {
      "slug": "aesthetic-judgment",
      "order": 3,
      "category": "thought",
      "title": "aesthetic judgment",
      "summary": "Taste as compressed perception: rhythm, restraint, framing, and selection when generation is cheap.",
      "markdown": "# Aesthetic Judgment\n\nFilm taught me taste before software did.\n\nA cut changes causality. A frame changes what matters. Silence outranks explanation more often than not. Two shots adjacent to each other can carry a thought neither shot owns alone.\n\nProduct is the same instrument:\n\n- what gets foregrounded\n- what disappears\n- where the rhythm slips\n- what's technically correct and still wrong\n\nTaste is compressed perception. The work is choosing what to leave out.\n\n> When generation gets cheap, judgment gets expensive.\n\nI want work that feels authored, not assembled."
    },
    {
      "slug": "ambient-agency",
      "order": 4,
      "category": "prediction",
      "title": "ambient agency",
      "summary": "Software as ambient infrastructure: fewer destinations, stronger memory, cleaner preservation of intent.",
      "markdown": "# Ambient Agency\n\nThe software I want stops asking me to be its integration layer.\n\nMost tools force you to rebuild the same scaffolding every time. Reopen the thread. Locate the file. Reconstruct yesterday's mental state. Translate your goal into the tool's grammar before the tool can help. The friction is the product.\n\nA better substrate would:\n\n- carry memory across sessions\n- carry context across surfaces\n- delegate with verification, not abdication\n- automate without erasing legibility\n- surface itself only when judgment is required\n\nThat's why AI tools, agents, planning systems, and artifact workflows interest me. The demo is bait. The substrate is the point.\n\n> You shouldn't have to be the connective tissue between your own apps.\n\nFewer destinations. More continuity."
    }
  ],
  "media": [
    {
      "slug": "st-stephens-dining-hall-documentary",
      "order": 1,
      "title": "St. Stephen's Dining Hall Documentary",
      "shortTitle": "Dining Hall Documentary",
      "subtitle": "2022",
      "year": "2022",
      "genre": "Documentary",
      "duration": "10 min",
      "summary": "A documentary on the dining hall staff and the people behind the daily experience.",
      "description": "A documentary following the St. Stephen's dining hall staff from the start of their day to the end, combining observational footage, intimate interviews, and a close look at the full dining hall experience.",
      "watchUrl": "https://youtu.be/WM6RvRfDCX4",
      "embedUrl": "https://www.youtube-nocookie.com/embed/WM6RvRfDCX4",
      "platform": "youtube",
      "type": "video",
      "roles": [
        "Director",
        "Cinematographer",
        "Editor"
      ],
      "notes": [
        "Nominated for The All-American High School Film Festival 2023.",
        "Screened at AMC Theatres in New York City."
      ],
      "actions": [
        {
          "label": "Watch",
          "url": "https://youtu.be/WM6RvRfDCX4",
          "variant": "primary"
        },
        {
          "label": "Festival Selection",
          "url": "https://www.hsfilmfest.com/2023-official-selections",
          "variant": "secondary"
        }
      ]
    },
    {
      "slug": "the-pbj-documentary",
      "order": 2,
      "title": "The PB&J Documentary",
      "shortTitle": "The PB&J Documentary",
      "subtitle": "2023",
      "year": "2023",
      "genre": "Documentary",
      "duration": "19 min",
      "summary": "A comedic documentary about obsession, mentorship, and the perfect PB&J sandwich.",
      "description": "A comedic documentary following Liam and Edison as they chase the perfect PB&J through restaurants, roadside discoveries, and a boutique in San Antonio before the whole mentor-protege dynamic starts to unravel.",
      "watchUrl": "https://youtu.be/FS8l8G2p7PM",
      "embedUrl": "https://www.youtube-nocookie.com/embed/FS8l8G2p7PM",
      "platform": "youtube",
      "type": "video",
      "roles": [
        "Director",
        "Cinematographer",
        "Editor"
      ],
      "actions": [
        {
          "label": "Watch",
          "url": "https://youtu.be/FS8l8G2p7PM",
          "variant": "primary"
        }
      ]
    },
    {
      "slug": "rtms-recap",
      "order": 3,
      "title": "RTMS Semesterly Recap",
      "shortTitle": "RTMS Semesterly Recap",
      "subtitle": "2018",
      "year": "2018",
      "genre": "Recap",
      "duration": "3 min",
      "summary": "A semester photo montage focused on rhythm, pacing, and raw editing craft.",
      "description": "A semesterly recap film from Ras Tanura Middle School built as a photo montage. It has no traditional narrative, but it highlights editing instincts, visual sequencing, and the ability to build momentum through rhythm alone.",
      "watchUrl": "https://drive.google.com/file/d/1az0x6mwBzTXJEPBC7zhBQk9_DGO_8GwN/view?usp=sharing",
      "embedUrl": "https://drive.google.com/file/d/1az0x6mwBzTXJEPBC7zhBQk9_DGO_8GwN/preview",
      "platform": "drive",
      "type": "video",
      "roles": [
        "Editor",
        "Photographer",
        "Story Builder"
      ],
      "actions": [
        {
          "label": "Watch",
          "url": "https://drive.google.com/file/d/1az0x6mwBzTXJEPBC7zhBQk9_DGO_8GwN/view?usp=sharing",
          "variant": "primary"
        }
      ]
    }
  ],
  "ai": {
    "providers": [
      {
        "slug": "chatgpt",
        "order": 1,
        "label": "ChatGPT",
        "icon": "openai",
        "hoverColorClass": "hover:text-[#10a37f]",
        "promptTemplate": "Search for and browse Kushagra Bharti's portfolio at https://www.kushagrabharti.com. Read these two pages:\n\n1) https://www.kushagrabharti.com/llms.txt — a plain-text profile designed for AI consumption\n2) https://www.kushagrabharti.com/ai — his full portfolio page\n\nIf direct fetch fails, search \"site:www.kushagrabharti.com\" to find the content.\n\nThese are live, public pages. Use your browsing and search tools to access them. Read and understand Kushagra Bharti extremely well. You may also read his linkedin, github, twitter, and other pages as needed to create a thorough picture of him. Ensure you do not mix in information from other people or external sources. Think carefully and thoroughly about everything you read before writing.\n\nWrite a professional summary that gives a complete picture of who he is.\n\nStart with his professional experience: any internships, employments, research positions, and what he actually shipped or contributed in each.\n\nThen cover his strongest projects: focus on the ones with real technical depth, deployed systems, or measurable outcomes.\n\nRead between the lines: what kind of problems does he gravitate toward, how does he approach engineering, and where does his trajectory point.\n\nWrap up with the non-technical side: creative work, interests, and anything that rounds out the picture beyond code.\n\nUse specifics from what you read. Let the work speak for itself.",
        "action": {
          "type": "link",
          "hrefTemplate": "https://chat.openai.com/?q={{query}}"
        }
      },
      {
        "slug": "claude",
        "order": 2,
        "label": "Claude",
        "icon": "claude",
        "hoverColorClass": "hover:text-[#da7756]",
        "promptTemplate": "Search for and browse Kushagra Bharti's portfolio at https://www.kushagrabharti.com. Read these two pages:\n\n1) https://www.kushagrabharti.com/llms.txt — a plain-text profile designed for AI consumption\n2) https://www.kushagrabharti.com/ai — his full portfolio page\n\nIf direct fetch fails, search \"site:www.kushagrabharti.com\" to find the content.\n\nThese are live, public pages. Use your browsing and search tools to access them. Read and understand Kushagra Bharti extremely well. You may also read his linkedin, github, twitter, and other pages as needed to create a thorough picture of him. Ensure you do not mix in information from other people or external sources. Think carefully and thoroughly about everything you read before writing.\n\nWrite a professional summary that gives a complete picture of who he is.\n\nStart with his professional experience: any internships, employments, research positions, and what he actually shipped or contributed in each.\n\nThen cover his strongest projects: focus on the ones with real technical depth, deployed systems, or measurable outcomes.\n\nRead between the lines: what kind of problems does he gravitate toward, how does he approach engineering, and where does his trajectory point.\n\nWrap up with the non-technical side: creative work, interests, and anything that rounds out the picture beyond code.\n\nUse specifics from what you read. Let the work speak for itself.",
        "action": {
          "type": "link",
          "hrefTemplate": "https://claude.ai/new?q={{query}}"
        }
      },
      {
        "slug": "gemini",
        "order": 3,
        "label": "Gemini",
        "icon": "gemini",
        "hoverColorClass": "hover:text-[#4285f4]",
        "promptTemplate": "Search for and browse Kushagra Bharti's portfolio at https://www.kushagrabharti.com. Read these two pages:\n\n1) https://www.kushagrabharti.com/llms.txt — a plain-text profile designed for AI consumption\n2) https://www.kushagrabharti.com/ai — his full portfolio page\n\nIf direct fetch fails, search \"site:www.kushagrabharti.com\" to find the content.\n\nThese are live, public pages. Use your browsing and search tools to access them. Read and understand Kushagra Bharti extremely well. You may also read his linkedin, github, twitter, and other pages as needed to create a thorough picture of him. Ensure you do not mix in information from other people or external sources. Think carefully and thoroughly about everything you read before writing.\n\nWrite a professional summary that gives a complete picture of who he is.\n\nStart with his professional experience: any internships, employments, research positions, and what he actually shipped or contributed in each.\n\nThen cover his strongest projects: focus on the ones with real technical depth, deployed systems, or measurable outcomes.\n\nRead between the lines: what kind of problems does he gravitate toward, how does he approach engineering, and where does his trajectory point.\n\nWrap up with the non-technical side: creative work, interests, and anything that rounds out the picture beyond code.\n\nUse specifics from what you read. Let the work speak for itself.\n\nBE EXTREMEMELY THOROUGH AND DETAILED. WRITE A LOT. MUCH MORE.\n\nWrite a thorough, structured profile with these sections:\n\n1) One-sentence positioning\n2) Professional experience and research\n3) Strongest technical projects\n4) Engineering style and recurring themes\n5) Creative work and non-technical interests\n6) Overall trajectory\n\nUse concrete names, roles, projects, tools, metrics, and outcomes from the pages you read. If you cannot access one of the pages, say exactly which one failed, then use the other accessible portfolio sources and links to produce the best possible summary anyway.",
        "action": {
          "type": "clipboard",
          "message": "Gemini does not support pre-filled prompt links reliably, so the prompt has been copied to your clipboard."
        }
      },
      {
        "slug": "grok",
        "order": 4,
        "label": "Grok",
        "icon": "x",
        "hoverColorClass": "hover:text-[#111111]",
        "promptTemplate": "Search for and browse Kushagra Bharti's portfolio at https://www.kushagrabharti.com. Read these two pages:\n\n1) https://www.kushagrabharti.com/llms.txt — a plain-text profile designed for AI consumption\n2) https://www.kushagrabharti.com/ai — his full portfolio page\n\nIf direct fetch fails, search \"site:www.kushagrabharti.com\" to find the content.\n\nThese are live, public pages. Use your browsing and search tools to access them. Read and understand Kushagra Bharti extremely well. You may also read his linkedin, github, twitter, and other pages as needed to create a thorough picture of him. Ensure you do not mix in information from other people or external sources. Think carefully and thoroughly about everything you read before writing.\n\nWrite a professional summary that gives a complete picture of who he is.\n\nStart with his professional experience: any internships, employments, research positions, and what he actually shipped or contributed in each.\n\nThen cover his strongest projects: focus on the ones with real technical depth, deployed systems, or measurable outcomes.\n\nRead between the lines: what kind of problems does he gravitate toward, how does he approach engineering, and where does his trajectory point.\n\nWrap up with the non-technical side: creative work, interests, and anything that rounds out the picture beyond code.\n\nUse specifics from what you read. Let the work speak for itself.",
        "action": {
          "type": "link",
          "hrefTemplate": "https://grok.com/?q={{query}}"
        }
      }
    ]
  }
}
