diff --git a/app/globals.css b/app/globals.css index 0a9e164..c1db918 100644 --- a/app/globals.css +++ b/app/globals.css @@ -750,6 +750,15 @@ body { linear-gradient(180deg, rgba(0, 0, 0, 0.69), transparent 24%, transparent 58%, rgba(0, 0, 0, 0.78)); } + .service-hero-compact { + min-height: clamp(18rem, 36svh, 28rem); + } + + .service-hero-compact::before { + inset: 22% 10% 12%; + } + + .about-shell { position: relative; isolation: isolate; diff --git a/app/when-to-call-devsh/page.tsx b/app/when-to-call-devsh/page.tsx index 38b7799..635a232 100644 --- a/app/when-to-call-devsh/page.tsx +++ b/app/when-to-call-devsh/page.tsx @@ -4,99 +4,102 @@ import NablaShaderBackdrop from "../nabla/NablaShaderBackdrop"; import ResponsiveImage from "../components/ResponsiveImage"; export const metadata: Metadata = { - title: "When to Call DevSH | Graphics and GPU Engineering Consultancy", - description: - "When to call DevSH for business-critical graphics, rendering, Vulkan, SPIR-V, shader tooling, and GPU performance decisions.", + title: "When to Call DevSH", }; -const introductionEmailBody = [ - "Hi DevSH,", - "", - "I would like to introduce a team facing a graphics engineering decision where DevSH may be a strong fit.", - "", - "Context:", - "- Who I am introducing:", - "- What they are working on:", - "- Why I think DevSH could help:", - "- Current graphics / GPU stack, if useful:", - "- Is this exploratory, active, or urgent?", - "", -].join("\n"); - -const contactHref = `mailto:newclients@devsh.eu?subject=${encodeURIComponent("DevSH introduction")}&body=${encodeURIComponent(introductionEmailBody)}`; - -const callSignals = [ +const pitchText = `Hey [Name], + +I’ve been looking into external help and found a highly specialized team in graphics and GPGPU programming called DevSH (devsh.eu). + +They aren't general contractors; they integrate directly with internal teams to architect custom renderers, path tracers, and simulations, as well as modernize graphics stacks and optimize both graphics and compute pipelines. They're known mostly for optimizing a CAD renderer by a factor of 100x after porting it to Vulkan, but you might also recognize them from their talks at Vulkanised and the Shading Languages Symposium, or their activity in the Graphics Programming Discord. + +They capture top-tier talent (PhDs, ex-IHV driver developers, AAA rendering architects) that is typically very hard to hire. + +You can see their past projects here: devsh.eu +They also publish their rates openly here: https://www.devsh.eu/pricing.pdf + +I think it's worth booking a technical discovery call with them to see if they can help us out. Thoughts?`; + +// --- DATA --- +const customSolutionsAndTechDebt = [ { - title: "Rendering architecture will shape what ships", - text: "Platform support, performance envelope, visual quality, or data scale now affects product scope, delivery confidence, or customer value.", + title: "You are trapped by expensive middleware.", + description: "You are paying massive licensing fees for closed-source, aging renderers like HOOPS Visualize, lack source code access, and are left to fix critical issues yourself." }, { - title: "Performance is visible beyond engineering", - text: "Frame time, latency, memory pressure, shader cost, or GPU throughput is tied to demos, deployments, contracts, or roadmap confidence.", + title: "Your legacy codebase is a liability.", + description: "You are stuck on outdated graphics or compute APIs and need to port to modern standards like Vulkan to stay relevant. You need a team that can modernize the engine while maintaining full backward compatibility so business continues as usual." }, { - title: "The issue sits below application-level debugging", - text: "Vulkan synchronization, shaders, compiler behavior, cross-vendor behavior, or graphics tooling needs specialist ownership.", + title: "Your MVP is buckling under real-world usage.", + description: "The prototype code that got you funded or through the early startup phase cannot handle production scale. You need to transition from a duct-taped proof-of-concept to an enterprise-grade foundation." }, { - title: "Hiring signals a deeper graphics constraint", - text: "An open graphics role can mean the company knows the problem is durable but needs senior direction before expanding the team.", + title: "Graphics or GPU programming is distracting from your core business.", + description: "You need a high-performance engine to power your startup's actual product, but trying to build and manage a specialized in-house gpu team is burning cash and focus." + } +]; + +const performanceStabilityWalls = [ + { + title: "Your software chokes on large datasets.", + description: "You’ve optimized everything you can, but your application still halts to a crawl when clients try to load complex, real-world scenes. This performance plateau is now blocking sales or user adoption." }, { - title: "A graphics-heavy product needs senior external review", - text: "Rendering quality, large data, geometry, simulation, or GPU compute is close enough to the product promise that a second senior view matters.", + title: "Stability issues are damaging your reputation.", + description: "Your software is constantly crashing under load or triggering GPU timeouts (TDRs) for your users. You are exhausted from applying hotfixes that don't address the root cause of the instability." }, { - title: "Shader tooling is slowing senior engineers down", - text: "SPIR-V, HLSL, DXC, Slang, validation, build systems, and toolchain behavior need ownership instead of recurring escalations.", + title: "Your architecture assumes infinite compute power.", + description: "You built around traditional Object-Oriented patterns and now need to pivot to Data-Oriented design to unchoke the CPU." }, + { + title: "You need to hit strict framerates.", + description: "Your application or game is dropping frames, and you need deep hardware-level optimization to maintain a seamless experience." + } ]; -const goodFit = [ - "Product companies where graphics, visualization, simulation, or GPU compute is close to customer value.", - "Product or engineering leaders accountable for architecture, performance, tooling, delivery, or customer outcomes.", - "Internal engineering teams that want senior external judgment alongside their own product knowledge.", - "Problems where correctness, cross-platform behavior, low-level API detail, and performance all matter at once.", -]; - -const notFit = [ - "General application work where graphics, rendering, GPU systems, or low-level tooling are not material to the product.", - "Requests where the main need is broad implementation support rather than specialist graphics judgment.", - "Procurement processes built only around individual roles rather than specialist consultancy.", - "Small isolated tasks with no clear owner, business context, or meaningful product relevance.", -]; - -const connectorRoles = [ - "Senior engineers who hear that another team is blocked by rendering, GPU performance, or shader tooling.", - "Standards, conference, open-source, and vendor contacts who see graphics-heavy product teams up close.", - "Founders, advisors, operators, and investors who see a company struggling with visualization, performance, or GPU delivery.", - "Past clients and partners who recognize a problem similar to one DevSH has already helped solve.", +const competitiveGapAndTeamStrategy = [ + { + title: "Your core technology isn't scaling with modern hardware.", + description: "Your core algorithms, based on decades-old research, aren't scaling on modern GPUs, or your workloads desperately need to be parallelized. When standard methods hit a wall, we invent and engineer novel, hardware-aware solutions tailored exactly to solve your unique bottlenecks." + }, + { + title: "You have cutting-edge research, but no product.", + description: "You’ve developed cutting-edge research, algorithms, or geometry processing techniques, but you lack the engineering roadmap to turn that academic success into a robust, shippable software product." + }, + { + title: "Your team needs a permanent skill upgrade.", + description: "You don't just want a temporary fix; your internal team needs direct, hands-on training in GPU programming and CPU optimization to maintain your competitive edge." + }, + { + title: "Competitors are out-rendering you.", + description: "Your clients are migrating to rival tools because they offer faster rendering times, superior visual quality, and better interactivity." + }, ]; -const decisionRoles = [ - "CTO or VP Engineering", - "Founder or technical co-founder", - "Head of Graphics or Rendering", - "Technical Director", - "Product engineering leader responsible for a graphics-heavy roadmap", +const notFitPoints = [ + "You need general application or basic web development where GPU or rendering systems are not material.", + "You have isolated, small tasks with no clear business context or product relevance.", + "You are unwilling to refactor legacy code or address core architectural debt.", ]; const engagementModels = [ { - name: "Technical fit call", - detail: "A focused call with the decision-maker and technical lead to understand product context, current constraints, and fit.", + name: "Technical Fit Call", + detail: "A simple conversation to understand your needs.", }, { - name: "Diagnostic engagement", - detail: "A bounded review of architecture, performance, shaders, API usage, or toolchain constraints with evidence-backed next steps.", + name: "Deep-Dive Diagnostic", + detail: "We audit your codebase, profile the performance bottlenecks, and map the technical debt.", }, { - name: "Specialist engineering sprint", - detail: "Senior engineers work inside the codebase to remove a blocking graphics constraint or deliver a high-leverage subsystem.", + name: "The Architecture Plan", + detail: "We deliver a concrete roadmap and assign our specialized subject matter experts to tackle specific layers of your stack.", }, { - name: "Long-term R&D partnership", - detail: "Ongoing work for products where rendering, GPU systems, or low-level graphics infrastructure are part of the competitive advantage.", + name: "Execution & Knowledge Transfer", + detail: "We don't just patch the code; we implement the solution, hit the performance targets, and upskill your internal team.", }, ]; @@ -121,8 +124,7 @@ const proofPoints = [ }, ]; -const introText = - "I think you should talk to DevSH. They are a specialist graphics and GPU engineering consultancy for product companies. They are a strong fit when rendering architecture, Vulkan/SPIR-V, shader tooling, GPU performance, or low-level graphics delivery is shaping product decisions. The best first conversation is with whoever owns the product or engineering outcome."; +// --- ICONS --- function ArrowIcon() { return ( @@ -133,51 +135,63 @@ function ArrowIcon() { ); } -function SignalCard({ title, text }: { title: string; text: string }) { +function CheckIcon() { return ( -
-
- -

{text}

-
+ ); } -function FitList({ title, items, tone }: { title: string; items: string[]; tone: "good" | "bad" }) { +function XIcon() { return ( -
-
+ ); } -function ReferralList({ title, kicker, items }: { title: string; kicker: string; items: string[] }) { +function CopyIcon() { + return ( + + ); +} + +const MailIcon = () => ( + + + +); + +// --- COMPONENTS --- + +function CategoryCard({ title, items }: { title: string; items: { title: string; description: string }[] }) { return ( -
-
+ ); } @@ -205,112 +219,126 @@ function ProofCard({ point }: { point: (typeof proofPoints)[number] }) { export default function Page() { return (
-
-