1<!DOCTYPE html> 2<html lang="en" class="bg-black"><head> 3 <meta charset="UTF-8"> 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 <meta name="format-detection" content="telephone=no"> 6 7 <!-- Primary Meta Tags --> 8 <title>Suneet Malhotra | AI-Driven Quality Engineering Leader</title> 9 <meta name="title" content="Suneet Malhotra | AI-Driven Quality Engineering Leader"> 10 <meta name="description" content="AI-Driven Quality Engineering Leader with 20+ years of experience scaling distributed systems and developer platforms."> 11 <meta name="keywords" content="Engineering Manager, Quality Engineering, AI Automation, QA Leadership, Test Automation, Engineering Leadership, Motorola Solutions, Tinder, Amazon, Software Engineering"> 12 <meta name="author" content="Suneet Malhotra"> 13 <meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"> 14 <link rel="canonical" href="https://suneetmalhotra.com/"> 15 <meta name="googlebot" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"> 16 <meta name="bingbot" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"> 17 18 <!-- Security Meta Tags (Critical for Safari HTTPS validation) --> 19 <!-- Note: GitHub Pages doesn't support HTTP headers, so we use meta tags --> 20 <meta http-equiv="Content-Security-Policy" content="default-src 'self' https:; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdn.tailwindcss.com https://esm.sh https://cdn.jsdelivr.net https://www.youtube.com https://s.ytimg.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com data:; img-src 'self' data: https: blob: https://i.ytimg.com https://images.unsplash.com; connect-src 'self' https: wss:; frame-src 'self' https://www.youtube.com https://youtube.com; object-src 'none'; base-uri 'self'; form-action 'self'; upgrade-insecure-requests; block-all-mixed-content;"> 21 <meta http-equiv="Strict-Transport-Security" content="max-age=31536000; includeSubDomains; preload"> 22 <meta http-equiv="X-Content-Type-Options" content="nosniff"> 23 <meta http-equiv="X-Frame-Options" content="SAMEORIGIN"> 24 <meta http-equiv="X-XSS-Protection" content="1; mode=block"> 25 <meta http-equiv="Referrer-Policy" content="strict-origin-when-cross-origin"> 26 <meta http-equiv="Permissions-Policy" content="geolocation=(), microphone=(), camera=(), payment=(), usb=(), magnetometer=(), gyroscope=(), accelerometer=()"> 27 28 <!-- Open Graph / Facebook / LinkedIn --> 29 <meta property="og:type" content="website"> 30 <meta property="og:url" content="https://suneetmalhotra.com/"> 31 <meta property="og:title" content="Suneet Malhotra | AI-Driven Quality Engineering Leader"> 32 <meta property="og:description" content="AI-Driven Quality Engineering Leader with 20+ years of experience scaling distributed systems and developer platforms."> 33 <meta property="og:image" content="https://suneetmalhotra.com/og-home.jpg"> 34 <meta property="og:image:width" content="1200"> 35 <meta property="og:image:height" content="630"> 36 <meta property="og:site_name" content="Suneet Malhotra Portfolio"> 37 <meta property="og:locale" content="en_US"> 38 39 <!-- Twitter --> 40 <meta name="twitter:card" content="summary_large_image"> 41 <meta name="twitter:url" content="https://suneetmalhotra.com/"> 42 <meta name="twitter:title" content="Suneet Malhotra | AI-Driven Quality Engineering Leader"> 43 <meta name="twitter:description" content="AI-Driven Quality Engineering Leader with 20+ years of experience scaling distributed systems and developer platforms."> 44 <meta name="twitter:image" content="https://suneetmalhotra.com/og-home.jpg"> 45 <meta name="twitter:creator" content="@SuneetMalhotra"> 46 47 <!-- LinkedIn --> 48 <meta property="linkedin:owner" content="suneet-m"> 49 50 <!-- GitHub --> 51 <meta name="github:creator" content="SuneetMalhotra"> 52 <link rel="me" href="https://github.com/SuneetMalhotra"> 53 54 <!-- Favicon - Custom "S" Logo --> 55 <link rel="icon" type="image/png" href="/favicon-s.png"> 56 <link rel="icon" type="image/png" sizes="32x32" href="/favicon-s.png"> 57 <link rel="icon" type="image/png" sizes="16x16" href="/favicon-s.png"> 58 <link rel="apple-touch-icon" sizes="180x180" href="/favicon-s.png"> 59 <link rel="manifest" href="/site.webmanifest"> 60 61 <!-- RSS Feed --> 62 <link rel="alternate" type="application/rss+xml" title="Suneet Malhotra â AI, QA, and Quant" href="/feed.xml"> 63 64 <!-- Preconnect to external domains for performance -->
65 <link rel="preconnect" href="https://fonts.googleapis.com" crossorigin=""> 66 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin=""> 67 <link rel="dns-prefetch" href="https://cdn.tailwindcss.com"> 68 <link rel="dns-prefetch" href="https://esm.sh"> 69 <link rel="dns-prefetch" href="https://www.youtube.com"> 70 71 <!-- Styling & Fonts --> 72
72<script src="https://cdn.tailwindcss.com"></script>
72 73
73<script> 74 tailwind.config = { 75 plugins: { 76 typography: {}, 77 } 78 } 79 </script>
79 80 <link rel="preconnect" href="https://fonts.googleapis.com"> 81 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin=""> 82 <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet"> 83 84 <style> 85 body { 86 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; 87 scroll-behavior: smooth; 88 background-color: #000; 89 color: #fff; 90 } 91 ::selection { background: #fff; color: #000; } 92 /* Custom scrollbar for modern feel */ 93 ::-webkit-scrollbar { width: 8px; } 94 ::-webkit-scrollbar-track { background: #000; } 95 ::-webkit-scrollbar-thumb { background: #333; } 96 ::-webkit-scrollbar-thumb:hover { background: #555; } 97 98 /* Highlight.js dark theme for code blocks */ 99 .hljs { 100 display: block; 101 overflow-x: auto; 102 padding: 1em; 103 background: #0d1117; 104 color: #c9d1d9; 105 } 106 .hljs-comment, .hljs-quote { color: #8b949e; font-style: italic; } 107 .hljs-keyword, .hljs-selector-tag, .hljs-subst { color: #ff7b72; } 108 .hljs-number, .hljs-literal, .hljs-variable, .hljs-template-variable, .hljs-tag .hljs-attr { color: #79c0ff; } 109 .hljs-string, .hljs-doctag { color: #a5d6ff; } 110 .hljs-title, .hljs-section, .hljs-selector-id { color: #7ee787; font-weight: bold; } 111 .hljs-type, .hljs-class .hljs-title { color: #ffa657; } 112 .hljs-tag, .hljs-name, .hljs-attribute { color: #7ee787; font-weight: normal; } 113 .hljs-regexp, .hljs-link { color: #a5d6ff; } 114 .hljs-symbol, .hljs-bullet { color: #f85149; } 115 .hljs-built_in, .hljs-builtin-name { color: #ffa657; } 116 .hljs-meta { color: #8b949e; } 117 .hljs-deletion { background: #f85149; } 118 .hljs-addition { background: #7ee787; } 119 .hljs-emphasis { font-style: italic; } 120 .hljs-strong { font-weight: bold; } 121 122 /* Line clamp utility for text truncation */ 123 .line-clamp-3 { 124 display: -webkit-box; 125 -webkit-line-clamp: 3; 126 -webkit-box-orient: vertical; 127 overflow: hidden; 128 } 129 130 /* Force minimum line-height for blog content readability */ 131 .prose p { 132 line-height: 1.8 !important; 133 min-height: 1.8em; 134 } 135 136 /* Mermaid diagram styling */ 137 .mermaid { 138 background: transparent; 139 text-align: center; 140 } 141 142 .mermaid svg { 143 max-width: 100%; 144 height: auto; 145 } 146 147 /* Gradient text animation */ 148 @keyframes gradient { 149 0%, 100% { 150 background-position: 0% 50%; 151 } 152 50% { 153 background-position: 100% 50%; 154 } 155 } 156 157 .animate-gradient { 158 background-size: 200% 200%; 159 animation: gradient 3s ease infinite; 160 } 161 </style> 162
162<script type="module" crossorigin="" src="/assets/index-DV8te9Xl.js"></script>
162 163 <link rel="stylesheet" crossorigin="" href="/assets/index-BEHUn5zE.css"> 164<style>*, ::before, ::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/* ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com */*,::after,::before{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}::after,::before{--tw-content:''}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-feature-settings:normal;font-variation-settings:normal;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}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
164[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0px}.bottom-0{bottom:0px}.bottom-1\/4{bottom:25%}.left-0{left:0px}.left-1\/4{left:25%}.right-0{right:0px}.right-1\/4{right:25%}.top-0{top:0px}.top-1\/4{top:25%}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.z-\[60\]{z-index:60}.mx-auto{margin-left:auto;margin-right:auto}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-10{margin-top:2.5rem}.mt-4{margin-top:1rem}.ml-1{margin-left:0.25rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-video{aspect-ratio:16 / 9}.h-0\.5{height:0.125rem}.h-2\.5{height:0.625rem}.h-24{height:6rem}.h-3{height:0.75rem}.h-3\.5{height:0.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-\[400px\]{height:400px}.h-\[500px\]{height:500px}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-2\.5{width:0.625rem}.w-24{width:6rem}.w-3{width:0.75rem}.w-3\.5{width:0.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-\[400px\]{width:400px}.w-\[500px\]{width:500px}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-5xl{max-width:64rem}.max-w-7xl{max-width:80rem}.max-w-xl{max-width:36rem}.flex-grow{flex-grow:1}.translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-8{--tw-translate-y:2rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%, 100%{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0, 0, 0.2, 1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.select-none{-webkit-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:0.375rem}.gap-12{gap:3rem}.gap-2{gap:0.5rem}.gap-3{gap:0.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-3 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.75rem * var(--tw-space-y-reverse))}.space-y-4 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:0.25rem}.rounded-full{border-radius:9999px}
164.rounded-lg{border-radius:0.5rem}.rounded-md{border-radius:0.375rem}.rounded-xl{border-radius:0.75rem}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.object-cover{object-fit:cover}.p-2{padding:0.5rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pt-20{padding-top:5rem}.pt-24{padding-top:6rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:0.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[1\.05\]{line-height:1.05}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.12em\]{letter-spacing:0.12em}.tracking-\[0\.15em\]{letter-spacing:0.15em}.tracking-\[0\.1em\]{letter-spacing:0.1em}.text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-75{opacity:0.75}.opacity-\[0\.025\]{opacity:0.025}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);
164--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-colors{transition-property:color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.duration-200{transition-duration:200ms}.duration-300{transition-duration:300ms}.duration-500{transition-duration:500ms}.duration-700{transition-duration:700ms}.hover\:text-cyan-400:hover{--tw-text-opacity:1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:opacity-90:hover{opacity:0.9}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.group:hover .group-hover\:w-full{width:100%}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-cyan-300{--tw-text-opacity:1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:flex-row{flex-direction:row}}@media (min-width: 768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.md\:gap-16{gap:4rem}.md\:p-12{padding:3rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}.lg\:text-8xl{font-size:6rem;line-height:1}}</style><link rel="alternate" hreflang="x-default" href="https://suneetmalhotra.com/"><meta name="theme-color" content="#09090f"><meta property="og:image:alt" content="Suneet Malhotra | AI-Driven Quality Engineering Leader"><meta property="og:image:type" content="image/jpeg"><meta property="article:author" content="Suneet Malhotra"><meta name="twitter:image:alt" content="Suneet Malhotra | AI-Driven Quality Engineering Leader"><meta name="twitter:site" content="@SuneetMalhotra"><meta name="msapplication-TileColor" content="#09090f">
164<script type="application/ld+json">{ 165 "@context": "https://schema.org", 166 "@type": "Person", 167 "name": "Suneet Malhotra", 168 "jobTitle": "Sr. Manager, Test Engineering", 169 "worksFor": { 170 "@type": "Organization", 171 "name": "Motorola Solutions", 172 "url": "https://motorolasolutions.com" 173 }, 174 "alumniOf": [ 175 { 176 "@type": "Organization", 177 "name": "Tinder", 178 "url": "https://tinder.com" 179 }, 180 { 181 "@type": "Organization", 182 "name": "Amazon", 183 "department": "Ring", 184 "url": "https://ring.com" 185 }, 186 { 187 "@type": "Organization", 188 "name": "Spokeo", 189 "url": "https://spokeo.com" 190 }, 191 { 192 "@type": "Organization", 193 "name": "Live Nation", 194 "url": "https://livenation.com" 195 } 196 ], 197 "description": "AI-Driven Quality Engineering Leader with 20+ years of experience scaling distributed systems and developer platforms. Pioneering AI-driven QA and high-velocity infrastructure.", 198 "url": "https://suneetmalhotra.com", 199 "image": "https://suneetmalhotra.com/og-home.jpg", 200 "sameAs": [ 201 "https://www.linkedin.com/in/suneet-m", 202 "https://github.com/SuneetMalhotra", 203 "https://twitter.com/SuneetMalhotra", 204 "https://x.com/SuneetMalhotra" 205 ], 206 "memberOf": [ 207 { 208 "@type": "Organization", 209 "name": "IEEE", 210 "url": "https://www.ieee.org", 211 "description": "Senior Member" 212 } 213 ], 214 "knowsAbout": [ 215 "Quality Engineering", 216 "AI Automation", 217 "Test Automation", 218 "AI-Assisted Software Testing", 219 "LLM-Integrated Testing", 220 "Engineering Leadership", 221 "Distributed Systems", 222 "Developer Platforms", 223 "Playwright", 224 "Selenium", 225 "CI/CD", 226 "DevOps" 227 ] 228}</script>
228<script type="application/ld+json" data-schema="ProfessionalService">{ 229 "@context": "https://schema.org", 230 "@type": "ProfessionalService", 231 "name": "Suneet Malhotra - AI-Driven Quality Engineering", 232 "description": "Engineering leadership and AI-driven QA automation consulting. Specialized in test automation, quality engineering strategy, and scaling engineering teams.", 233 "provider": { 234 "@type": "Person", 235 "name": "Suneet Malhotra", 236 "jobTitle": "Sr. Manager, Test Engineering", 237 "worksFor": { 238 "@type": "Organization", 239 "name": "Motorola Solutions" 240 }, 241 "sameAs": [ 242 "https://www.linkedin.com/in/suneet-m", 243 "https://github.com/SuneetMalhotra", 244 "https://twitter.com/SuneetMalhotra" 245 ] 246 }, 247 "areaServed": "Worldwide", 248 "serviceType": [ 249 "Quality Engineering Consulting", 250 "AI-Driven Test Automation", 251 "Engineering Leadership", 252 "Test Strategy & Planning", 253 "CI/CD Pipeline Optimization" 254 ], 255 "url": "https://suneetmalhotra.com/", 256 "image": "https://suneetmalhotra.com/og-home.jpg" 257}</script>
257<script type="application/ld+json" data-schema="WebSite">{ 258 "@context": "https://schema.org", 259 "@type": "WebSite", 260 "name": "Suneet Malhotra Portfolio", 261 "url": "https://suneetmalhotra.com", 262 "description": "AI-Driven Quality Engineering Leader with 20+ years of experience scaling distributed systems and developer platforms.", 263 "author": { 264 "@type": "Person", 265 "name": "Suneet Malhotra" 266 }, 267 "potentialAction": { 268 "@type": "SearchAction", 269 "target": { 270 "@type": "EntryPoint", 271 "urlTemplate": "https://suneetmalhotra.com/blog?search={search_term_string}" 272 }, 273 "query-input": "required name=search_term_string" 274 } 275}</script>
275</head> 276<body class="bg-black text-white antialiased"> 277 278 <!-- Root for React app --> 279 <div id="root"><div class="min-h-screen flex flex-col relative" style="background-color: rgb(9, 9, 15);"><div class="pointer-events-none fixed inset-0 z-30 transition-opacity duration-300" style="background: radial-gradient(600px at 0px 0px, rgba(85, 221, 255, 0.04), transparent 40%);"></div><div class="pointer-events-none fixed inset-0 z-[60] opacity-[0.025]" style="background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");"></div><header class="fixed top-0 left-0 right-0 z-50 transition-transform duration-300 translate-y-0"><div class="max-w-5xl mx-auto mt-4 px-4"><nav class="backdrop-blur-md border-b rounded-full px-6 py-3 shadow-2xl" style="background-color: rgba(9, 9, 15, 0.75); border-color: rgba(255, 255, 255, 0.08);"><div class="flex justify-between items-center"><a class="text-lg font-bold text-white hover:text-cyan-400 transition-colors relative group" href="/" data-discover="true" style="font-family: "DM Sans", sans-serif;"><span class="relative z-10">Suneet Malhotra</span><span class="absolute bottom-0 left-0 w-0 h-0.5 bg-cyan-400 group-hover:w-full transition-all duration-300"></span></a><div class="hidden md:flex items-center gap-6"><a aria-current="page" class="text-sm font-medium transition-colors relative group text-cyan-400" href="/" data-discover="true" style="font-family: "DM Sans", sans-serif;"><span class="relative z-10">Home</span><span class="absolute bottom-0 left-0 h-0.5 transition-all duration-300 w-full bg-cyan-400"></span></a><a class="text-sm font-medium transition-colors relative group text-gray-300 hover:text-white" href="/about" data-discover="true" style="font-family: "DM Sans", sans-serif;"><span class="relative z-10">About</span><span class="absolute bottom-0 left-0 h-0.5 transition-all duration-300 w-0 bg-white group-hover:w-full"></span></a><a class="text-sm font-medium transition-colors relative group text-gray-300 hover:text-white" href="/tools" data-discover="true" style="font-family: "DM Sans", sans-serif;"><span class="relative z-10">Projects</span><span class="absolute bottom-0 left-0 h-0.5 transition-all duration-300 w-0 bg-white group-hover:w-full"></span></a><a class="text-sm font-medium transition-colors relative group text-gray-300 hover:text-white" href="/blog" data-discover="true" style="font-family: "DM Sans", sans-serif;"><span class="relative z-10">Blog</span><span class="absolute bottom-0 left-0 h-0.5 transition-all duration-300 w-0 bg-white group-hover:w-full"></span></a><button class="hidden lg:flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs transition-colors duration-200" style="background-color: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;"><svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg><kbd class="font-mono text-[10px]">âK</kbd></button><a class="px-5 py-2 text-sm font-medium rounded-full transition-all duration-300 hover:text-white" href="/contact" data-discover="true" style="background-color: transparent; color: rgb(122, 122, 154); border: 1px solid rgba(255, 255, 255, 0.12); font-family: "DM Sans", sans-serif;">Contact</a><a class="px-5 py-2 text-sm font-semibold rounded-full transition-all duration-300" href="/tools/qa-field-manual" data-discover="true" style="background-color: rgb(85, 221, 255); color: rgb(9, 9, 15); font-family: "DM Sans", sans-serif;">Free Book</a></div><button class="md:hidden text-white p-2 hover:text-cyan-400 transition-colors" aria-label="Toggle menu"><svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16"></path></svg></button></div></nav></div></header><main class="flex-grow pt-24" role="main"><style> 280 @import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap'); 281 282 @keyframes homeFadeUp { 283 from { opacity: 0; transform: translateY(24px); } 284 to { opacity: 1; transform: translateY(0); } 285 } 286 @keyframes heroBlob1 { 287 0%, 100% { transform: translate(0, 0) scale(1); } 288 33% { transform: translate(4%, -3%) scale(1.05); } 289 66% { transform: translate(-3%, 4%) scale(0.97); } 290 } 291 @keyframes heroBlob2 { 292 0%, 100% { transform: translate(0, 0) scale(1); } 293 33% { transform: translate(-4%, 2%) scale(1.06); } 294 66% { transform: translate(3%, -2%) scale(0.98); } 295 } 296 .home-fade-up { 297 animation: homeFadeUp 0.65s ease-out forwards; 298 opacity: 0; 299 } 300 </style><main class="min-h-screen" style="background-color: rgb(9, 9, 15);"><header class="min-h-screen flex items-center justify-center pt-20 pb-20 px-6 relative overflow-hidden"><div class="absolute top-1/4 left-1/4 w-[500px] h-[500px] rounded-full pointer-events-none" style="background: radial-gradient(circle, rgba(85, 221, 255, 0.082) 0%, transparent 70%); animation: 14s ease-in-out 0s infinite normal none running heroBlob1; filter: blur(80px);"></div><div class="absolute bottom-1/4 right-1/4 w-[400px] h-[400px] rounded-full pointer-events-none" style="background: radial-gradient(circle, rgba(123, 108, 255, 0.07) 0%, transparent 70%); animation: 16s ease-in-out 0s infinite normal none running heroBlob2; filter: blur(80px);"></div><div class="max-w-5xl mx-auto w-full text-center relative z-10"><p class="text-xs font-semibold uppercase tracking-[0.15em] mb-6 home-fade-up" style="color: rgb(85, 221, 255); font-family: "DM Sans", sans-serif;">AI-Driven Quality Engineering Leader</p><h1 class="text-6xl md:text-7xl lg:text-8xl mb-8 leading-[1.05] home-fade-up" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240); animation-delay: 100ms;">Engineering Leader.<br><span style="color: rgb(123, 108, 255);">Scale Expert.</span></h1><p class="text-lg md:text-xl max-w-3xl mx-auto leading-relaxed mb-12 home-fade-up" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif; animation-delay: 200ms;">20+ years scaling distributed systems. Currently <strong style="color: rgb(232, 232, 240);">Sr. Manager, Test Engineering at Motorola Solutions</strong>. Formerly at <strong style="color: rgb(232, 232, 240);">Tinder</strong>, <strong style="color: rgb(232, 232, 240);">Amazon (Ring)</strong>, <strong style="color: rgb(232, 232, 240);">Spokeo</strong>, and <strong style="color: rgb(232, 232, 240);">Live Nation</strong>.</p><div class="flex flex-col sm:flex-row gap-4 justify-center home-fade-up" style="animation-delay: 300ms;"><a class="px-8 py-4 rounded-lg text-base font-medium transition-all duration-300 hover:opacity-90" href="/about" data-discover="true" style="background-color: rgb(85, 221, 255); color: rgb(9, 9, 15); font-family: "DM Sans", sans-serif;">View Resume</a><a class="px-8 py-4 rounded-lg text-base font-medium transition-all duration-300" href="/contact" data-discover="true" style="border: 1px solid rgba(85, 221, 255, 0.267); color: rgb(85, 221, 255); font-family: "DM Sans", sans-serif;">Get in Touch</a></div></div></header><section class="py-10 border-y overflow-hidden" style="border-color: rgba(255, 255, 255, 0.07); background-color: rgb(15, 15, 26);"><style> 301 @keyframes marqueeScroll { 302 0% { transform: translateX(0); } 303 100% { transform: translateX(-50%); } 304 } 305 </style><p class="text-xs text-center mb-6 uppercase tracking-[0.15em]" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Companies I've led at</p><div class="relative"><div class="flex items-center gap-12 md:gap-16 whitespace-nowrap" style="animation: 25s linear 0s infinite normal none running marqueeScroll; width: max-content;"><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Motorola Solutions</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Tinder</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Amazon</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Ring</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Spokeo</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Live Nation</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Motorola Solutions</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Tinder</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Amazon</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Ring</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Spokeo</span><span class="text-xl md:text-2xl font-bold select-none" style="color: rgba(232, 232, 240, 0.19); font-family: "DM Sans", sans-serif;">Live Nation</span></div></div></section><section class="py-20 px-6" style="background-color: rgb(9, 9, 15);"><div class="max-w-7xl mx-auto"><div class="text-center mb-14"><p class="text-xs font-semibold uppercase tracking-[0.15em] mb-4" style="color: rgb(85, 221, 255); font-family: "DM Sans", sans-serif;">Projects</p><h2 class="text-4xl md:text-5xl mb-4" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">What I Build</h2><p class="text-base max-w-xl mx-auto" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Systems that solve real problems â from algorithmic trading to health analytics.</p></div><div class="grid grid-cols-1 md:grid-cols-3 gap-6 transition-all duration-700 opacity-0 translate-y-8"><div class="rounded-xl overflow-hidden transition-all duration-400 group" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07);"><div class="aspect-[16/9] overflow-hidden" style="background-color: rgb(15, 15, 26);"><img alt="Automated Trading System" class="w-full h-full object-cover transition-transform duration-500 group-hover:scale-105" loading="lazy" src="https://images.unsplash.com/photo-1611974789855-9c2a0a7236
305a3?auto=format&fit=crop&q=80&w=2000"></div><div class="p-6"><h3 class="text-lg mb-2" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">Automated Trading System</h3><p class="text-sm leading-relaxed mb-4" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Multi-engine trading platform with real-time risk management and regime-based strategy selection.</p><div class="flex flex-wrap gap-1.5"><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Python</span><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Real-time Systems</span><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Risk Management</span></div></div></div><div class="rounded-xl overflow-hidden transition-all duration-400 group" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07);"><div class="aspect-[16/9] overflow-hidden" style="background-color: rgb(15, 15, 26);"><img alt="Personal Health Analytics" class="w-full h-full object-cover transition-transform duration-500 group-hover:scale-105" loading="lazy" src="https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&q=80&w=2000"></div><div class="p-6"><h3 class="text-lg mb-2" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">Personal Health Analytics</h3><p class="text-sm leading-relaxed mb-4" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Multi-modal health data platform integrating wearables, lab results, and lifestyle tracking.</p><div class="flex flex-wrap gap-1.5"><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Python</span><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Data Integration</span><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Wearable APIs</span></div></div></div><div class="rounded-xl overflow-hidden transition-all duration-400 group" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07);"><div class="aspect-[16/9] overflow-hidden" style="background-color: rgb(15, 15, 26);"><img alt="AI Content Engine" class="w-full h-full object-cover transition-transform duration-500 group-hover:scale-105" loading="lazy" src="https://images.unsplash.com/photo-1432888498266-38ffec3eaf0a?auto=format&fit=crop&q=80&w=2000"></div><div class="p-6"><h3 class="text-lg mb-2" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">AI Content Engine</h3><p class="text-sm leading-relaxed mb-4" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Automated content pipeline with multi-platform distribution and engagement optimization.</p><div class="flex flex-wrap gap-1.5"><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Python</span><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">LLMs</span><span class="px-2 py-1 rounded text-xs" style="background-color: rgb(15, 15, 26); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Content Generation</span></div></div></div></div><div class="text-center mt-10"><a class="inline-flex items-center gap-2 text-sm font-medium transition-colors duration-300" href="/tools" data-discover="true" style="color: rgb(85, 221, 255); font-family: "DM Sans", sans-serif;">View all projects<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
305<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg></a></div></div></section><section class="py-20 px-6" style="background-color: rgb(15, 15, 26);"><div class="max-w-7xl mx-auto grid grid-cols-1 lg:grid-cols-2 gap-8"><div class="rounded-xl p-8 transition-all duration-700 opacity-0 translate-y-8" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07);"><p class="text-xs font-semibold uppercase tracking-[0.15em] mb-6" style="color: rgb(123, 108, 255); font-family: "DM Sans", sans-serif;">Leadership</p><div class="text-6xl font-bold mb-2" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(123, 108, 255);">20+</div><p class="text-lg mb-8" style="color: rgb(232, 232, 240); font-family: "DM Sans", sans-serif;">Years of Experience</p><div class="flex flex-wrap gap-2"><span class="px-4 py-2 rounded-lg text-sm font-medium" style="background-color: rgb(15, 15, 26); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(232, 232, 240); font-family: "DM Sans", sans-serif;">Motorola Solutions</span><span class="px-4 py-2 rounded-lg text-sm font-medium" style="background-color: rgb(15, 15, 26); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(232, 232, 240); font-family: "DM Sans", sans-serif;">Tinder</span><span class="px-4 py-2 rounded-lg text-sm font-medium" style="background-color: rgb(15, 15, 26); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(232, 232, 240); font-family: "DM Sans", sans-serif;">Amazon</span><span class="px-4 py-2 rounded-lg text-sm font-medium" style="background-color: rgb(15, 15, 26); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(232, 232, 240); font-family: "DM Sans", sans-serif;">Ring</span><span class="px-4 py-2 rounded-lg text-sm font-medium" style="background-color: rgb(15, 15, 26); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(232, 232, 240); font-family: "DM Sans", sans-serif;">Spokeo</span></div></div><div class="rounded-xl overflow-hidden transition-all duration-700 opacity-0 translate-y-8" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07);"><a class="block group" href="/blog/the-cheapest-test-is-the-one-you-run-before-you-build" data-discover="true"><div class="aspect-video overflow-hidden" style="background-color: rgb(15, 15, 26);"><img alt="The Cheapest Test Is the One You Run Before You Build" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" loading="lazy" src="https://images.unsplash.com/photo-1553877522-43269d4ea984?auto=format&fit=crop&q=80&w=1200"></div><div class="p-6"><div class="flex items-center gap-3 mb-3"><span class="text-xs font-semibold uppercase tracking-[0.1em]" style="color: rgb(85, 221, 255); font-family: "DM Sans", sans-serif;">Career & Best Practices</span><span class="text-xs" style="color: rgb(122, 122, 154);">Sep 04, 2026</span></div><h3 class="text-xl mb-2 leading-tight transition-colors duration-300 group-hover:text-cyan-300" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">The Cheapest Test Is the One You Run Before You Build</h3><p class="text-sm line-clamp-2" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">The most expensive engineering mistakes in my systems were not hard bugs. They were reasonable implementations of questions nobody had defined.</p><span class="inline-flex items-center gap-2 text-xs font-medium mt-4 transition-colors" style="color: rgb(85, 221, 255);">Read article<svg class="w-3.5 h-3.5 transition-transform duration-300 group-hover:translate-x-1" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg></span></div></a></div></div></section><section class="py-20 px-6" style="background-color: rgb(9, 9, 15);"><div class="max-w-5xl mx-auto"><div class="text-center mb-12"><p class="text-xs font-semibold uppercase tracking-[0.15em] mb-4" style="color: rgb(85, 221, 255); font-family: "DM Sans", sans-serif;">Tech Stack</p><h2 class="text-3xl md:text-4xl" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">Core Technologies</h2></div><div class="flex flex-wrap justify-center gap-3 transition-all duration-700 opacity-0 translate-y-8"><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Python</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">TypeScript</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">React</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Next.js</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Node.js</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Flask</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Playwright</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Appium</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Selenium</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">SwiftUI</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">
305Claude Code</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Ollama</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">LLMs</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">MCP</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">AWS</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Cloudflare</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Docker</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Kubernetes</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">CI/CD</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">GitHub Actions</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">PostgreSQL</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">SQLite</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Supabase</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Redis</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Pandas</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">yfinance</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">APScheduler</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Tailwind CSS</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Vite</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Telegram Bot API</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Notion API</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Interactive Brokers API</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Plaid</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Withings API</span><span class="px-4 py-2.5 rounded-lg text-sm font-medium transition-all duration-300 cursor-default" style="background-color: rgb(20, 20, 31); border: 1px solid rgba(255, 255, 255, 0.07); color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Peloton API</span></div></div></section><section class="py-20 border-t" style="border-color: rgba(255, 255, 255, 0.07); background-color: rgb(15, 15, 26);"><div class="max-w-3xl mx-auto px-6 text-center"><h2 class="text-4xl md:text-5xl mb-6" style="font-family: "DM Serif Display", Georgia, serif; color: rgb(232, 232, 240);">Let's Connect</h2><p class="text-base mb-8" style="color: rgb(122, 122, 154); font-family: "DM Sans", sans-serif;">Open to professional networking, industry discussions, and technical collaboration.</p><a class="inline-block px-8 py-4 rounded-lg text-base font-medium transition-all duration-300 hover:opacity-90" href="/contact" data-discover="true" style="background-color: rgb(85, 221, 255); color: rgb(9, 9, 15); font-family: "DM Sans", sans-serif;">Get in touch</a></div></section><section class="py-20 px-6 border-t" style="border-color: rgba(255, 255, 255, 0.07); background-color: rgb(9, 9, 15);"><div class="max-w-2xl mx-auto"><div class=""><div class="relative overflow-hidden rounded-lg p-8 md:p-12" style="background-color: rgb(20, 19, 18); border: 2px solid rgb(212, 168, 83);"><div class="mb-8"><h3 class="text-3xl md:text-4xl mb-3" style="font-family: "Instrument Serif", Georgia, serif; color: rgb(245, 240, 230);">Stay in the Loop</h3><p class="text-base md:text-lg" style="font-family: "DM Sans", sans-serif; color: rgb(168, 162, 153);">Get weekly insights on AI-driven QA, engineering leadership, and automation strategies.</p></div><form class="space-y-4"><div class="space-y-4"><div class=""><input placeholder="[email protected]" class="w-full px-4 py-3 rounded-lg transition-all duration-200 focus:outline-none" type="email" value="" style="background-color: rgb(13, 12, 11); border: 2px solid rgb(107, 102, 96); color: rgb(245, 240, 230); font-family: "DM Sans", sans-serif;"></div><input tabindex="-1" autocomplete="off" aria-hidden="true" type="text" value="" name="website" style="position: absolute; left: -9999px; opacity: 0; height: 0px; width: 0px;"><button type="submit" class="w-full px-8 py-3 rounded-lg font-semibold transition-all duration-200 relative overflow-hidden group" style="background-color: rgb(212, 168, 83); color: rgb(13, 12, 11); font-family: "DM Sans", sans-serif; border: 2px solid rgb(212, 168, 83);">Subscribe</button></div></form><p class="mt-4 text-xs" style="color: rgb(107, 102, 96); font-family: "DM Sans", sans-serif;">No spam, ever. Unsubscribe anytime.</p><div class="absolute top-0 right-0 w-24 h-24 pointer-events-none" style="background: linear-gradient(135deg, rgba(212, 168, 83, 0.063) 0%, transparent 50%);"></div><div class="absolute bottom-0 left-0 w-32 h-32 pointer-events-none" style="background: radial-gradient(circle at left bottom, rgba(212, 168, 83, 0.03) 0%, transparent 70%);"></div></div><style> 306 @keyframes shake { 307 0%, 100% { transform: translateX(0); } 308 25% { transform: translateX(-5px); } 309 75% { transform: translateX(5px); } 310 } 311 .animate-shake { 312 animation: shake 0.3s ease-in-out; 313 } 314 </style></div></div></section></main></main><footer class="border-t py-16 px-6" style="background-color: rgb(15, 15, 26); border-color: rgba(255, 255, 255, 0.07);"><div class="max-w-7xl mx-auto"><div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8 mb-12"><div><div class="text-xl font-bold text-white mb-4" style="font-family: "DM Sans", sans-serif;">Suneet Malhotra</div><p class="text-sm leading-relaxed" style="color: rgb(122, 122, 154);">AI-Driven Quality Engineering Leader with 20+ years scaling distributed systems and pioneering automation-first cultures.</p></div><div><h3 class="text-xs font-semibold text-white mb-4 uppercase tracking-[0.12em]">Projects</h3><ul class="space-y-3"><li><a href="https://github.com/SuneetMalhotra" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">Automated Trading System</a></li><li><a href="https://github.com/SuneetMalhotra" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">Personal Health Analytics</a></li><li><a href="https://github.com/SuneetMalhotra" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">AI Content Engine</a></li><li><a href="https://github.com/SuneetMalhotra" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">Food Intelligence</a></li><li><a href="https://flowstatedemo.netlify.app/" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">Flowstate</a></li><li><a class="text-sm transition-colors hover:text-cyan-400" href="/tools" data-discover="true" style="color: rgb(122, 122, 154);">View All</a></li></ul></div><div><h3 class="text-xs font-semibold text-white mb-4 uppercase tracking-[0.12em]">Connect</h3><ul class="space-y-3"><li><a href="https://www.linkedin.com/in/suneet-m/" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">LinkedIn</a></li><li><a href="https://github.com/SuneetMalhotra" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">GitHub</a></li><li><a href="https://x.com/SuneetMalhotra" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">X (Twitter)</a></li><li><a href="/cdn-cgi/l/email-protection#1e6d6b707b7b6a737f7276716a6c7f2c2e2e2c5e79737f7772307d7173" target="_blank" rel="noopener noreferrer" class="text-sm transition-colors hover:text-cyan-400" style="color: rgb(122, 122, 154);">Email</a></li></ul></div><div><h3 class="text-xs font-semibold text-white mb-4 uppercase tracking-[0.12em]">Status</h3><div class="flex items-center gap-3 mb-4"><div class="relative"><div class="w-2.5 h-2.5 bg-green-500 rounded-full animate-pulse"></div><div class="absolute inset-0 w-2.5 h-2.5 bg-green-500 rounded-full animate-ping opacity-75"></div></div><span class="text-sm font-medium" style="color: rgb(232, 232, 240);">Open to Networking</span></div><p class="text-xs leading-relaxed" style="color: rgb(122, 122, 154);">Available for industry discussions and technical collaboration.</p></div></div><div class="border-t pt-8 space-y-4" style="border-color: rgba(255, 255, 255, 0.07);"><div class="text-xs text-center max-w-3xl mx-auto leading-relaxed" style="color: rgb(122, 122, 154);"><strong style="color: rgb(154, 154, 176);">Disclaimer:</strong> This website and its tools are personal portfolio projects for educational and research purposes only.</div><div class="flex flex-col sm:flex-row justify-between items-center gap-4"><div class="text-sm" style="color: rgb(122, 122, 154);">© 2026 Suneet Malhotra</div><div class="flex items-center gap-4"><div class="inline-flex items-center gap-2 text-xs"><svg class="w-4 h-4 text-cyan-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
314<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"></path></svg><span class="text-sm font-medium text-gray-300"><span class="text-cyan-400 font-bold">1</span><span class="text-gray-400 ml-1">total views</span></span></div><div class="flex items-center gap-2 px-3 py-1.5 rounded-full" style="background-color: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08);"><span class="text-xs" style="color: rgb(122, 122, 154);">Built with</span><span class="text-xs font-semibold" style="color: rgb(85, 221, 255);">Claude Code</span><span class="text-xs" style="color: rgb(122, 122, 154);">+</span><span class="text-xs font-semibold" style="color: rgb(123, 108, 255);">Cloudflare</span></div></div></div></div></div></footer></div></div> 315 316 <!-- View tracking is now handled by Supabase via Netlify Functions --> 317 <!-- GoatCounter script removed - using custom Supabase implementation --> 318 319 <!-- Scripts: prefer local Vite entry in dev/build, importmap allows standalone preview --> 320 <!-- Force HTTPS redirect (Critical for Safari security) -->
vendor: 113 bytes, lines 320-321
320 321 <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
321<script> 322 // Force HTTPS redirect if on HTTP (except localhost for development) 323 if (window.location.protocol === 'http:' && window.location.hostname !== 'localhost' && window.location.hostname !== '127.0.0.1') { 324 window.location.replace('https:' + window.location.href.substring(5)); 325 } 326 </script>
326 327 <!-- Handle GitHub Pages redirect BEFORE React loads --> 328
328<script> 329 // This MUST run before React/React Router initializes 330 (function() { 331 var path = window.location.pathname; 332 var search = window.location.search; 333 334 // Handle /?/path format from 404.html redirect 335 if (path.includes('/?/')) { 336 var cleanPath = '/' + path.split('/?/')[1].replace(/~and~/g, '&'); 337 window.history.replaceState(null, '', cleanPath); 338 } 339 // Handle ?/path in search params 340 else if (search && search.startsWith('?/')) { 341 var cleanPath = '/' + search.substring(2).split('&')[0].replace(/~and~/g, '&'); 342 window.history.replaceState(null, '', cleanPath); 343 } 344 })(); 345 </script>
345 346 <noscript>You need to enable JavaScript to run this app.</noscript> 347 348 349 350</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.