From c8c3396b1649f2f28642152df5951e2f0523cdc6 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 2 Jul 2026 16:20:08 +0400 Subject: [PATCH 1/6] WIP: when to call us --- app/when-to-call-devsh/page.tsx | 365 ++++++++++++++++---------------- 1 file changed, 184 insertions(+), 181 deletions(-) diff --git a/app/when-to-call-devsh/page.tsx b/app/when-to-call-devsh/page.tsx index 38b7799..969db37 100644 --- a/app/when-to-call-devsh/page.tsx +++ b/app/when-to-call-devsh/page.tsx @@ -4,99 +4,86 @@ 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"); +// --- DATA --- -const contactHref = `mailto:newclients@devsh.eu?subject=${encodeURIComponent("DevSH introduction")}&body=${encodeURIComponent(introductionEmailBody)}`; - -const callSignals = [ +const performanceWalls = [ { - 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: "Your performance has flatlined.", + description: "You’ve optimized everything you can think of, but your renderer still halts to a crawl when processing larger, more detailed scenes or datasets." }, { - 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: "The hardware is crashing under load.", + description: "Your software is triggering GPU timeouts (TDRs) or crashes, and duct-tape fixes to stability aren't holding up anymore." }, { - 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 architecture assumes infinite compute.", + description: "You built around traditional Object-Oriented patterns and now need to pivot to Data-Oriented design to unchoke the CPU." }, { - 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: "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 modernizationDebt = [ + { + 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: "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: "You need to move off legacy APIs.", + description: "You need to port from aging APIs (like older DirectX or OpenGL) to Vulkan, but don't have the internal expertise to architect it correctly from day one." }, { - 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: "Rendering isn't your startup's USP.", + description: "You need a high-performance engine to power your actual product, but building and maintaining a specialized graphics team in-house is a distraction from your core business." }, + { + title: "The prototype won't scale.", + description: "Your \"vibe-coded\" software got you through the startup phase, but you need an enterprise-grade foundation to actually ship." + } ]; -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 competitiveGap = [ + { + 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." + }, + { + title: "You have cutting-edge research, but no product.", + description: "You have a brilliant computational geometry algorithm, but need to bridge the gap from academic research to a highly performant, shippable product." + } ]; -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 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.", }, ]; @@ -124,6 +111,8 @@ 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 (
- -

{text}

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