- Role
- Frontend Lead
- Discipline
- Growth & SEO
- Year
- 2023
- Focus
- Next.js, TypeScript

(Overview)
I lead frontend on PredictWind’s public marketing site - programmatic SEO, six-locale i18n, attribution, and production A/B testing for marine weather at acquisition scale.
PredictWind needed a marketing site that could rank location weather pages, localize for international buyers, and run experiments without breaking SEO or attribution.
I built the Next.js surface: SSR programmatic SEO templates with tiered CDN caching, six-locale UI + Sanity content, first-party blog comments, middleware A/B assignment with SEO-safe rewrites, and Segment + AppsFlyer attribution across the funnel.
Scaled to 1M+ programmatic SEO pages. The site now draws ~2B impressions and 1M+ monthly visitors.
- Next.js
- TypeScript
- TailwindCSS
- tRPC
- Sanity
- next-i18next
- Segment
- Framer Motion
- Jotai
- AppsFlyer
(By the numbers)
(Brief)
Product context
PredictWind sells marine weather forecasts and routing tools. The sales site is the public acquisition surface - rebuilt to rank location weather at indexable scale, localize product and content, and run production experiments without poisoning SEO URLs.
(Architecture)
System layers
SSR marketing and programmatic SEO share one Next.js surface - middleware, CMS, and attribution stay SEO-safe.
- Routes
- Programmatic weather/marinas/glossary plus features, pricing, and landers
- Middleware
- A/B cookies, geo, QR→OneLink, SEO-safe rewrites that keep public URLs clean
- Services
- tRPC weather + Sanity, Segment, AppsFlyer, consent-gated third parties
- CMS & discovery
- Sanity content/comments and dynamic sitemaps (~148k city URLs)
(Product surface)
What the site had to do
- 01
Programmatic SEO
Country → city weather, tides, storms, marinas, and glossary with per-URL metadata and CDN caching.
- 02
Content & comments
News hub, blog SSR, and a first-party approve-gated comment system.
- 03
Localization
Six locales across features, pricing, hardware, and landers.
- 04
Tracking & experiments
Segment events with experiment props, attribution bridge, and sticky middleware A/B.
(Product)
Sales site UI
Programmatic city weather and marina templates, hardware landers, and product marketing behind 1M+ indexable pages.



Mobile

(Hard problems)
Constraints that shaped the build
Million-scale location pages without melting SSR
SSR with tiered CDN caching and progressive weather so TTFB stays useful
A/B tests that don’t poison SEO
Middleware assigns variants before render; rewrites keep public URLs and canonicals clean
Attribution across Forecast and signup
UTMs and ad IDs into shared cookies, outbound link rewrites, AppsFlyer OneLink for installs
(Impact)
What I shipped
- 01
Scaled the site to 1M+ SEO pages with ~2B impressions and 1M+ monthly visitors.
- 02
Kept location pages fast and indexable with SSR, CDN tiers, and progressive weather hydration.
- 03
Shipped production A/B testing and full-funnel attribution without breaking SEO URLs.
