Heroku
tcp/443 tcp/80
Open service 75.2.43.161:443 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 04:05:05 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=gwdvISMPwZm4PSkkhZ1WywNBGHJuXFCdPjyMbIPBdyI%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190705"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=gwdvISMPwZm4PSkkhZ1WywNBGHJuXFCdPjyMbIPBdyI%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190705"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 99.83.217.1:80 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 04:06:05 GMT
Location: https://gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=JWRj9%2BmS3%2F1Bxg1Zek19HzPjsAHpKbqCjtiYPY6TKwg%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190765"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=JWRj9%2BmS3%2F1Bxg1Zek19HzPjsAHpKbqCjtiYPY6TKwg%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190765"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 23
Content-Type: text/plain; charset=utf-8
Connection: close
https://gavin-kemp.com/
Open service 76.223.11.49:80 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 04:06:06 GMT
Location: https://gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=GQBQTp%2FQ%2FyVsKW1bG6Y4v8cyXzCBfvpei1MPLgl1PvY%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190766"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=GQBQTp%2FQ%2FyVsKW1bG6Y4v8cyXzCBfvpei1MPLgl1PvY%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190766"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 23
Content-Type: text/plain; charset=utf-8
Connection: close
https://gavin-kemp.com/
Open service 15.197.129.158:80 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 04:06:06 GMT
Location: https://gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=GQBQTp%2FQ%2FyVsKW1bG6Y4v8cyXzCBfvpei1MPLgl1PvY%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190766"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=GQBQTp%2FQ%2FyVsKW1bG6Y4v8cyXzCBfvpei1MPLgl1PvY%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190766"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 23
Content-Type: text/plain; charset=utf-8
Connection: close
https://gavin-kemp.com/
Open service 15.197.129.158:443 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 04:05:04 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=jkQnOvANWL3oV7Zkb1i%2Bi7cxcz8jCuYW8slRVaJZLzA%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190704"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=jkQnOvANWL3oV7Zkb1i%2Bi7cxcz8jCuYW8slRVaJZLzA%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190704"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 99.83.217.1:443 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 04:05:04 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=jkQnOvANWL3oV7Zkb1i%2Bi7cxcz8jCuYW8slRVaJZLzA%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190704"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=jkQnOvANWL3oV7Zkb1i%2Bi7cxcz8jCuYW8slRVaJZLzA%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190704"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 75.2.43.161:80 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 04:06:06 GMT
Location: https://gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=GQBQTp%2FQ%2FyVsKW1bG6Y4v8cyXzCBfvpei1MPLgl1PvY%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190766"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=GQBQTp%2FQ%2FyVsKW1bG6Y4v8cyXzCBfvpei1MPLgl1PvY%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190766"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 23
Content-Type: text/plain; charset=utf-8
Connection: close
https://gavin-kemp.com/
Open service 76.223.11.49:443 · gavin-kemp.com
2026-01-12 04:05
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 04:05:04 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=jkQnOvANWL3oV7Zkb1i%2Bi7cxcz8jCuYW8slRVaJZLzA%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768190704"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=jkQnOvANWL3oV7Zkb1i%2Bi7cxcz8jCuYW8slRVaJZLzA%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768190704"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 99.83.217.1:443 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 03:24:45 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=NYWiZSrbLnDawxbcriXlWlQ0UC1fdUwp9ClUaF6Yrew%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188285"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=NYWiZSrbLnDawxbcriXlWlQ0UC1fdUwp9ClUaF6Yrew%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188285"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 75.2.43.161:443 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 03:24:45 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=NYWiZSrbLnDawxbcriXlWlQ0UC1fdUwp9ClUaF6Yrew%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188285"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=NYWiZSrbLnDawxbcriXlWlQ0UC1fdUwp9ClUaF6Yrew%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188285"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 15.197.129.158:443 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 03:24:45 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=NYWiZSrbLnDawxbcriXlWlQ0UC1fdUwp9ClUaF6Yrew%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188285"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=NYWiZSrbLnDawxbcriXlWlQ0UC1fdUwp9ClUaF6Yrew%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188285"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,
Open service 99.83.217.1:80 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 03:25:46 GMT
Location: https://www.gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=ciEaA9%2FltqX%2BnaUiBY%2FDXG%2FqyRJ51GwATSMgIXnjuWU%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188346"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=ciEaA9%2FltqX%2BnaUiBY%2FDXG%2FqyRJ51GwATSMgIXnjuWU%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188346"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 27
Content-Type: text/plain; charset=utf-8
Connection: close
https://www.gavin-kemp.com/
Open service 75.2.43.161:80 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 03:25:46 GMT
Location: https://www.gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=ciEaA9%2FltqX%2BnaUiBY%2FDXG%2FqyRJ51GwATSMgIXnjuWU%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188346"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=ciEaA9%2FltqX%2BnaUiBY%2FDXG%2FqyRJ51GwATSMgIXnjuWU%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188346"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 27
Content-Type: text/plain; charset=utf-8
Connection: close
https://www.gavin-kemp.com/
Open service 15.197.129.158:80 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 03:25:45 GMT
Location: https://www.gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=VNND3r%2BctW6mDahabWxjCZ5UIl4qRPzuj2pda7T%2BSh4%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188345"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=VNND3r%2BctW6mDahabWxjCZ5UIl4qRPzuj2pda7T%2BSh4%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188345"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 27
Content-Type: text/plain; charset=utf-8
Connection: close
https://www.gavin-kemp.com/
Open service 76.223.11.49:80 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 307 Temporary Redirect
Date: Mon, 12 Jan 2026 03:25:46 GMT
Location: https://www.gavin-kemp.com/
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=ciEaA9%2FltqX%2BnaUiBY%2FDXG%2FqyRJ51GwATSMgIXnjuWU%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188346"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=ciEaA9%2FltqX%2BnaUiBY%2FDXG%2FqyRJ51GwATSMgIXnjuWU%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188346"
Server: Heroku
Via: 1.1 heroku-router
Content-Length: 27
Content-Type: text/plain; charset=utf-8
Connection: close
https://www.gavin-kemp.com/
Open service 76.223.11.49:443 · www.gavin-kemp.com
2026-01-12 03:24
HTTP/1.1 200 OK
Accept-Ranges: none
Content-Length: 24917
Content-Type: text/html; charset=utf-8
Date: Mon, 12 Jan 2026 03:24:44 GMT
Etag: "6155-innDNPr621LtzyDwbODlLdVANME"
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=cUmlx%2BXvK%2BE0WX%2FTbnH2xeZ6%2BCPjwU2Rp%2B6M37r7HBI%3D\u0026sid=c4c9725f-1ab0-44d8-820f-430df2718e11\u0026ts=1768188284"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=cUmlx%2BXvK%2BE0WX%2FTbnH2xeZ6%2BCPjwU2Rp%2B6M37r7HBI%3D&sid=c4c9725f-1ab0-44d8-820f-430df2718e11&ts=1768188284"
Server: Heroku
Vary: Accept-Encoding
Via: 1.1 heroku-router
Connection: close
Page title: Frontend Developer & Engineer | London, UK | Gavin Kemp
<!doctype html>
<html data-n-head-ssr lang="en" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22en%22%7D%7D">
<head >
<meta data-n-head="ssr" charset="utf-8"><meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1"><meta data-n-head="ssr" data-hid="description" name="description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:site_name" property="og:site_name" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="og:url" property="og:url" content="https://gavin-kemp-staging.herokuapp.com"><meta data-n-head="ssr" data-hid="og:title" property="og:title" content="Gavin Kemp | Frontend Developer & Engineer | London, UK"><meta data-n-head="ssr" data-hid="og:description" property="og:description" content="Gavin Kemp is a Frontend Developer living and working in central London. With experience building performant web applications at all sizes, Gavin has built a solid foundation in delivering quality work independently and via working within product teams at some of the fastest growth tech companies in Europe."><meta data-n-head="ssr" data-hid="og:image" property="og:image" content="https://gavin-kemp-staging.herokuapp.com/images/default_alternative.png"><meta data-n-head="ssr" data-hid="og:image:width" property="og:image:width" content="1200"><meta data-n-head="ssr" data-hid="og:image:height" property="og:image:height" content="630"><meta data-n-head="ssr" data-hid="charset" charset="utf-8"><meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="ssr" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Gavin Kemp"><meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#3aed9e"><meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"><title>Frontend Developer & Engineer | London, UK | Gavin Kemp</title><link data-n-head="ssr" rel="preconnect" href="https://fonts.gstatic.com"><link data-n-head="ssr" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;0,900;1,900&family=Montserrat:wght@500;600;800&display=swap"><link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="/_nuxt/icons/icon_64x64.a649f5.png"><link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/_nuxt/icons/icon_512x512.a649f5.png" sizes="512x512"><link data-n-head="ssr" rel="manifest" href="/_nuxt/manifest.48c09d0c.json" data-hid="manifest"><script data-n-head="ssr" src="https://www.googletagmanager.com/gtag/js?id=G-J2RJJXV5N0" async></script><link rel="preload" href="/_nuxt/95d2f60.js" as="script"><link rel="preload" href="/_nuxt/0252269.js" as="script"><link rel="preload" href="/_nuxt/3493666.js" as="script"><link rel="preload" href="/_nuxt/0a5ec0f.js" as="script"><link rel="preload" href="/_nuxt/bd58661.js" as="script"><style data-vue-ssr-id="254bafc8:0 1b23c600:0 1b1e60a7:0 646aac2c:0 fc310286:0 9f59a6f6:0 1694d4aa:0 cb37b156:0 515ced57:0 4c620d0b:0 2990c784:0">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,