Frontend performance optimization for the Rituals careers platform.

Improve frontend performance and loading experience across the careers platform.
I ran a dedicated optimization pass on the Rituals careers platform, tackling performance bottlenecks across rendering, state management, and image loading. The goal was a noticeably faster, smoother experience without changing the visual design.

The original gradient backgrounds relied on CSS animations, which caused jank on lower-end devices. I replaced these with canvas-based animations using requestAnimationFrame, giving precise control over frame timing and dramatically reducing paint costs.

The existing image library preloaded images at 1px width, which gave no useful preview. I optimized it to preload low-quality image placeholders (LQIP) instead, so users see a blurred preview that sharpens into the full image. This makes the loading feel faster even when it takes the same amount of time.

Filter and navigation state was previously managed in React state, which meant losing context on refresh or when sharing links. I moved this state to query parameters, making URLs shareable and preserving state across page loads.

I refactored data fetching patterns throughout the app, replacing useEffect-based fetching with useMemo and proper memoization where possible. This reduced unnecessary re-renders and made the component tree more predictable.
