Platform Engineering and AI Infrastructure
A platform team's job is to make the right way the easy way. Developers should get a repository, a wiki space, a project and the access to go with them without raising a ticket, ship through pipelines that already have the tests and checks in them, and see how long all of it takes. Our engineers have built exactly that for a 20,000-person engineering community, on Kubernetes they also built and ran. The same discipline now covers the AI layer: models served on GPUs inside your own account, and the data infrastructure underneath them.
Where We Have Done It
-
Developer Platform for a 20,000-Person Engineering Community
A self-service portal where engineers created their own Git repositories, Confluence spaces, Jira projects and Nexus repositories, with the access to each granted in the same request instead of through a ticket queue. Behind it, Jira, Confluence, GitLab, Nexus and SonarQube ran as tenants on one highly available EKS platform with single sign-on, and CI/CD/CT pipelines ran on CloudBees Jenkins and Broadcom Continuous Delivery Director. Build, deployment and test-execution times were captured from the pipelines and reported to each team and to line-of-business leadership.
-
Self-Hosted Model Inference on GPUs, Scaled to Zero
An open-weight language model served from a GPU instance inside the client's own AWS account, with no third-party endpoint anywhere in the serving path, feeding a research and report pipeline. A small control plane starts the instance on demand, stops it when idle, reports its health, and rotates across availability zones when GPU capacity is scarce, so the client pays for GPU hours it uses and the data never leaves the VPC.
-
Data Platform With Vector Search, a Graph Store and Orchestrated Pipelines
A platform we build and run ourselves: configuration-driven ingestion from more than two hundred public data sources, orchestrated pipelines with cancellation and retry, an object-storage bronze layer, entity resolution, a graph database for relationships and vector search for names and documents, behind a production search API with rate limiting. The same shape of infrastructure an agent or a retrieval system needs underneath it.
-
On-Premises Kubernetes Platform with Automated Upgrades
A 57-node cluster running hundreds of microservices on the client's own hardware for residency and cost reasons, with an idempotent upgrade pipeline that moves a version in an afternoon with no downtime, run by a team of six.
First, Whether You Need a Platform Team
A platform is worth building when the same request reaches the operations team for the tenth time in a month: a new repository, a new environment, access to a tool, a pipeline copied from the last project and changed by hand. Below that, a few good templates and a written runbook do the job for a fraction of the cost.
The same goes for Kubernetes underneath it. For a handful of services on AWS, the managed container and serverless services are cheaper to run and have far less to operate. A cluster earns its place with many services and several teams, a platform that has to run on-premises or in more than one cloud, or tooling that assumes it.
The first week of an engagement answers both questions in writing. If the answer is no, you get a design for the simpler thing.
What We Build
The platform is a product with internal customers. It has a backlog, it gets measured, and it gets used because it is the fastest way to get work done, not because a policy says so. We work with the tools you already run; the design does not depend on any one of them.
Self-Service
A portal or a set of templates where an engineer creates a repository, a wiki space, a project or an artifact repository, with access granted in the same step. Golden-path templates so a new service starts with its pipeline, tests and monitoring already wired in.
CI/CD/CT Pipelines
Build, test and deploy as a paved road on the CI server and delivery tooling you already have, or a GitOps model where the repository is the source of truth and a rollback is a revert. Tests run in the pipeline, not after it.
Delivery Metrics
Build time, deployment frequency, lead time, test-execution time and change failure rate, captured from the pipelines instead of a spreadsheet, and reported per team and per line of business. The platform team gets measured on the same numbers.
The Kubernetes Platform
Managed Kubernetes across three availability zones, or a cluster on your own hardware. Multi-tenancy with namespaces, quotas and network policies, metrics, logs and traces from the first day, and upgrades as an idempotent pipeline that drains one node at a time.
Guardrails on the Paved Road
Single sign-on and role-based access across every tool, image scanning and signing in the pipeline, secrets kept in a secrets manager, and policy as code so the path that is easy is also the path that passes the audit.
Handover
Architecture diagrams, runbooks for every alert, a decisions log and knowledge-transfer sessions before go-live. Your platform team can explain the platform and extend it, and thirty days of support after go-live is inside the price.
AI Infrastructure
Agents and retrieval systems are only as good as what they run on. We build the layer under them: models served where your data already lives, GPU spend tied to use, and the stores and pipelines that give an agent something true to answer from.
Self-Hosted Inference
Open-weight models served from GPUs inside your own cloud account or data centre, with no third-party endpoint in the path. Suits regulated data, predictable cost, and workloads where a hosted API's terms or latency do not fit. We run this today for a client's research pipeline.
GPU Capacity and Cost
A control plane that starts GPU instances on demand, stops them when idle, and rotates across zones and regions when capacity is short, because it often is. Baked images and launch templates so a replacement comes up in minutes. The bill follows the work, not the calendar.
Retrieval and Grounding
Vector search for documents and names, a graph store for relationships, entity resolution for the records that describe the same thing twice, and the ingestion pipelines that keep all of it current. This is the layer Agentforce and any retrieval system answer from.
Evaluation and Observability
Latency, token throughput, cost per request and quality checks captured per model and per consumer, so a model change or a prompt change is measured before it reaches a user. The same discipline we apply to Agentforce agents on the Salesforce side.
Private Networking
Inference endpoints reachable only from the application's private network, across regions where the GPUs and the application are not in the same place, with a stable address the application can depend on while instances come and go behind it.
Where It Meets Salesforce
Agentforce agents are built in Salesforce; the data they are grounded on and the custom actions they call often run outside it. Data 360 reaches into the warehouse through Zero Copy, actions call APIs on AWS or Kubernetes, and both halves need the same observability. Agentforce and Data 360 covers the Salesforce side.
Platform Engineering for Salesforce
Salesforce teams have the same problems as any other engineering organisation and usually fewer of the tools. Sandboxes are refreshed by hand, metadata is deployed from someone's laptop, tests are a manual regression pass, and nobody can say how long a change takes to reach production.
We bring the same paved road to the org. Scratch orgs and sandboxes provisioned from a request. Metadata and second-generation packages built and deployed through a pipeline on Salesforce DevOps Center or the tooling you already have. UI and API test suites running in parallel on every change. A release process your admins run themselves. And the integration services and data pipelines around the org, on AWS or Kubernetes, on the same road with the same metrics.
Most platform-engineering firms do not touch Salesforce, and most Salesforce partners do not do platform engineering. We ship our own AppExchange packages through this kind of pipeline, so the client version is the one we already use. Our broader AWS practice is on the AWS Cloud Engineering page.
Platform Engineering and AI Infrastructure: Questions We Are Asked
What is platform engineering?
Building the internal platform that lets developers do the everyday work themselves: create a repository, a wiki space or a project, get access, start a new service from a template, and ship through a pipeline that already has the tests and checks in it. The platform is run like a product, with internal users, a backlog and measured outcomes, instead of as a ticket queue in front of the operations team.
When does an organisation need a platform team?
When the same requests keep reaching the operations team: new repositories, new environments, tool access, pipelines copied from the last project and changed by hand. At that point the time spent waiting costs more than building the self-service. Below it, good templates and a written runbook are cheaper, and we say so in the first week of an engagement.
How do you measure whether a platform is working?
From the pipelines, not from a survey. Build time, deployment frequency, lead time for changes, test-execution time and change failure rate, captured automatically and reported per team and per line of business. Our engineers built exactly this reporting for a 20,000-person engineering community. Adoption is the other number: if teams route around the paved road, the road needs work.
Do we need a developer portal product?
Not necessarily. A portal is only the front door; the value is in the automation behind it that creates the repository, the space or the project and grants the access. A full portal product suits organisations with many teams and the people to maintain it. A smaller self-service app, or templates and pipeline triggers, often does the job with far less upkeep. We pick based on how many teams will use it and who will own it.
What does platform engineering look like for a Salesforce team?
The same paved road applied to the org. Scratch orgs and sandboxes provisioned on request, metadata and second-generation packages deployed through a pipeline on DevOps Center or your existing tooling, Playwright test suites running on every change, and a release process your admins run themselves. The integration services and data pipelines around the org sit on the same road, with the same delivery metrics.
Can you run open models on our own infrastructure?
Yes. We serve open-weight language models from GPU instances inside a client's own AWS account today, with no third-party endpoint in the serving path, so prompts and documents never leave their network. The model runs behind a private address the application calls, the instance is started on demand and stopped when idle, and the whole thing is defined as code so it can be rebuilt or moved.
How do you keep GPU costs down and GPU capacity available?
Cost: the instance only runs when there is work. A small control plane starts it on request, watches for idle time and stops it, so the bill follows usage rather than the calendar. Capacity: GPU instance types are often sold out in a given zone, so the same control plane keeps a baked image and launch template ready and rotates through zones, and regions if needed, until one comes up, with a stable address in front so the application never has to change.
Should we use a hosted model API or run our own GPUs?
Start with a hosted API if your data can go there and your volume is low; it is the fastest way to find out whether the use case works. Move to your own GPUs when the data is regulated, when the monthly API bill passes what a GPU instance would cost, when latency to the provider is a problem, or when you need a specific open model. We build both paths and we write down the crossover point for your workload so the decision is a number, not a preference.
Do we actually need Kubernetes?
Not always, and we say so when the answer is no. For a handful of services on AWS, the managed container and serverless services cost less to run and have far less to operate. Kubernetes earns its place with many services and several teams, a platform that has to run on-premises or in more than one cloud, tooling that assumes it, or a VM fleet that now costs more than a well-run cluster would. The first week of an engagement answers this in writing.
EKS or our own hardware?
EKS unless something stops you. AWS runs the control plane, upgrades are a managed operation and the surrounding services are already there. Your own hardware makes sense when data cannot leave the building, when a residency rule says so, or when you already own a fleet and the cost comparison comes out in its favour. We have built both, and the delivery, observability and upgrade tooling is the same on each.
How do you upgrade a cluster without downtime?
The upgrade is a pipeline, not a runbook someone follows by hand. It drains one node at a time, waits for the workloads to reschedule, checks that no service has dropped below its minimum replicas, and only then moves on. Every step is idempotent, so a failed run can be restarted from where it stopped. On the 57-node on-premises cluster a version moves in an afternoon.
Can several teams or products share one cluster safely?
Yes, with namespaces, resource quotas, network policies and role bindings set up so each tenant sees only its own workloads, and cost reported per namespace so each team sees its own bill. The EKS platform for a 20,000-person engineering organisation ran Jira, Confluence, GitLab, Nexus and SonarQube as tenants of one cluster with single sign-on across all of them.
Who runs the cluster after you leave?
Your team, and the platform is built on that assumption. Everything is in the repository, every alert has a runbook, upgrades and backups run as pipelines, and knowledge transfer sessions happen before go-live rather than after. Thirty days of support after go-live is inside the price, and if you want us to keep running it, that is a separate conversation, not a dependency we built in.
Included in Every Engagement, at No Extra Cost
The things most firms charge for, or quietly leave out. You get them as standard, and your team keeps all of it.
A Named Architect for the Whole Engagement
The person who designs your solution stays on it to the end and joins every review. No hand-off to a rotating bench.
A Decisions Log and Architecture Diagrams
Every choice written down with the reason, so six months later nobody has to guess why the org looks the way it does.
Working Demos Every Week
You see running software each week and steer while it is cheap to change. No status decks.
Everything in Version Control
Metadata, pipelines, packaging and tests from the first sprint. Your org can be rebuilt, audited and handed to anyone.
Documentation, Runbooks and Knowledge Transfer
Your admins can explain the design, not just operate it. We are not building a dependency on us.
Thirty Days of Post-Go-Live Support
After go-live the team stays available for a month to fix, tune and answer questions, inside the original price.
Ready to Talk to an Architect?
A 30-minute call with the architect who would own your work. You leave with a written view of the next step and a rough sizing, whether or not you go ahead with us.
Book an Architecture Discovery Callor email contact@crystallotus.co