Contact

Software Engineer • Full Stack • Systems

DesignDevelopDeploy

I build backend systems, cloud infrastructure, and full-stack products that scale in production.

Get in Touch

Dashboard

Contribution Graph

 
Latest Log

Understanding React Compiler

2026-01-25
Location

Bengaluru

Open to Work

Obsidian Graph

shivamjain.dev@gmail.com

Click to Copy

Experience

GoQuant

Software Development Engineer

Jun 2025 - Present

  • Built cross-platform build pipeline for core OEMS C++ engine using Conan & OSXCross, eliminating developer VMs and saving $10K+ annually in infrastructure costs.
  • Own multiple end to end CI/CD pipeline for builds and testing across multiple micro services, improving development velocity without friction.
  • Designed stress testing pipeline for trading services under high-frequency simulations, ensuring system reliability under peak load.
  • Owned Risk Management System supporting margin leverage, trade reconciliation, and multi-exchange ratio trading.

GoQuant

Software Engineer Intern

Calix

Software Engineer Intern (Cloud & Automation)

Spencers (Freelance)

Infrastructure & Cloud Optimization

DMP (MeitY)

Open Source Contributor

Devlog

dev-0032026-01-25

Understanding React Compiler

The new React Compiler is a game changer. It uses an intermediate representation to analyze data flow and automatically inserts memoization.

This means useMemo and useCallback are largely obsolete. I tested it on a heavy visualization component and saw a 30% reduction in re-renders without manual optimization.

Key Changes

  • Automatic Memoization: No more dependency array hell.
  • Granular Updates: Only the changed parts of the DOM update.
// Before
const heavy = useMemo(() => compute(data), [data]);

// After (Compiler)
const heavy = compute(data); // Auto-memoized
dev-0022026-01-22

WebGL Shader Performance

Learned about optimizing fragment shaders for 60fps on low-end devices. Fragment shaders run for every pixel, so they are the bottleneck.

Optimization Strategy

The key optimization was moving vector calculations from the fragment shader to the vertex shader. This interpolation happens in hardware and is much faster.

// Fragment Shader (Bad)
void main() {
  vec3 light = normalize(uLightPos - vPos);
  // ...
}

// Vertex Shader (Good)
vLightDir = normalize(uLightPos - pos);

Projects

AI / RAG

PaperLM

RAG-based PDF Chatbot built with LangChain and Pinecone.

Cloud / DevTools

Intui

Secure online code execution platform with Docker sandboxing.