FIXED SCOPE
AI & System Readiness Audit

Architecture review, risk surface, prioritised action plan. No obligation.

PAID - 2 WEEKS
Sharp Sprint

Fixed scope, senior engineers, working software. Skip the long discovery.

Contact us
Home AI What is LLMOps? The Business Guide to Modern AI Operations

What is LLMOps? The Business Guide to Modern AI Operations

Posted:
Updated:
secure integration of llms with on-premise databases
TL;DR
  • LLMOps is the operations layer around a large language model already in production.
  • MLOps versions a model; LLMOps versions prompts, retrieval corpora, tool contracts and providers.
  • An evaluation suite is the only proof that a prompt or provider change is safe.
  • Retrieved context size, not model tier, usually dominates the token bill.
  • OWASP, NIST, SR 11-7 and the EU AI Act all reach LLM systems in production.

LLMOps, or Large Language Model Operations, is the engineering discipline for managing, evaluating, monitoring, and improving LLM applications in production. It becomes necessary when the question shifts from whether a model can produce a good answer to whether the entire system can continue producing reliable, traceable, and cost-efficient results as prompts, data, models, and user behavior change.

From what I see working with AI systems, this shift happens faster than many teams expect. Building a strong prototype is becoming relatively straightforward, and with the right model, context, and engineering, a team can demonstrate meaningful results within weeks. But I have seen enough successful demos to know that this is usually where the harder work starts, particularly in fintech, insurance, healthcare, and other regulated environments, where an AI-generated result may influence a real business decision, and someone will eventually need to explain how that result was produced.

What makes LLM systems different is that problems do not always look like failures. The infrastructure can remain healthy and the model can continue returning fluent answers while the quality of those answers changes. This is why I see LLMOps as an engineering requirement rather than another tooling category: teams need to know which prompt and model produced a result, what information was retrieved, whether a change improved or degraded quality, what the workflow costs, and whether a specific output can be reconstructed months later.

TopicKey insightWhy it mattersWhat to do this week
What LLMOps isThe engineering practice around a model that already has usersDemos rarely fail; production doesList which of your production prompts is under version control
LLMOps vs MLOpsMLOps versions a model; LLMOps versions prompts, corpora and providersYou own neither the weights nor the training dataPin your model version explicitly in config instead of using a floating alias
EvaluationAn eval suite is the only proof a change is safeProvider version changes arrive without your involvementWrite ten evals for your highest-traffic LLM feature
ComplianceOWASP LLM01, the NIST AI RMF, SR 11-7 and the EU AI Act all applyHigh-risk obligations under the EU AI Act applied from 2 August 2026Check whether your traces are retained long enough to reconstruct an answer
CostRetrieved context size usually beats model tier as the cost driverToken spend scales with chunks retrieved, not with requests servedCount the chunks your retriever returns on an average call

The prototype worked. Someone on the product team opened it in a demo, the room was pleased, and the feature shipped to a fraction of real traffic a few weeks later. Then the questions started arriving, and they were operational questions rather than model questions. What actually breaks when a working prototype meets real users? What is LLMOps versus MLOps, if the two look the same from a distance? Who owns a prompt once an edit to it changes behavior for every customer at once? What will an auditor ask for when the feature touches a regulated workflow? And should a team of this size be running any of this on its own?

Those five questions define LLMOps, and this guide answers each in a named section: failure modes in production, the difference from MLOps, prompt management, compliance, and the build-or-buy decision. Along the way it names the frameworks that apply, the artifacts each lifecycle stage should produce, and the point at which fine-tuning is the wrong answer. Every figure carries a source and a date. Ask what LLMOps is, and the useful answer is that list of controls rather than a dictionary definition.

Why LLMOps Matters for Modern Enterprises

An LLM feature that works in a demo fails in production for reasons a classical deployment pipeline never checks. The provider ships a new model version. A one-word prompt edit changes behavior for every user at once. Retrieved context drifts as the corpus grows. LLMOps catches those three failures before customers do, through evaluation suites, version control on prompts and traces on every call. Ask what LLMOps is in business terms and the answer starts there.

The demo hides every one of them, which is why the work gets skipped. The demo runs one prompt against one model version, using a corpus of 40 documents curated by hand. Production runs thousands of prompts against a model the provider updates on its own schedule, over a corpus that grows every day, for users who ask questions nobody anticipated.

The business consequence is specific rather than abstract. Without an eval suite, a provider version change is discovered by a customer. Without prompt versioning, an incident review cannot establish which prompt produced a given output. Without traces, a cost spike cannot be attributed to a feature. Each of those is a normal Tuesday for a team running LLMs at scale, and each is cheap to prevent and expensive to investigate after the fact.

dark infographic showing a'Demo vs Production' comparison: left panel titled THE DEMO with three items, right panel titled PRODUCTION with three items, and a bottom row labeled THE THREE CONTROLS THAT CATCH IT FIRST describing Eval suites, Prompt versioning, and Traces on every call.

Large Language Models: The Foundation of LLMOps

Large language models differ from classical machine learning models in two ways that decide how they get operated. They are non-deterministic, so the same input can produce different output on two consecutive calls. And the team running them rarely owns the training data, because the weights came from a provider such as OpenAI, Anthropic or Google, or from an open-weights release. Classical ML operations assume the opposite on both counts.

That is the whole reason a separate discipline exists. Stanford HAI defines LLMOps as the practice of managing the entire lifecycle of LLM-based applications in production, and the word doing the work in that sentence is application. You are not operating a model. You are operating a system in which somebody else’s model is one component, alongside a retriever, a prompt, a set of tool contracts and a fallback path.

Modern LLM systems are also rarely a single call. Retrieval-augmented generation puts a search step in front of the model, agentic patterns put a loop around it, and both multiply the number of places a system can go wrong without throwing an error.

LLMOps vs MLOps: Key Differences

MLOps trains a model against its training data. LLMOps versions prompts, retrieval corpora, tool contracts, and model providers against observed behavior, because the weights are usually somebody else’s and the training data is unavailable. The practical difference is what you control: an MLOps team retrains to fix a regression, while an LLMOps team changes a prompt, a retrieval rule or a provider, then proves the change with an eval suite.

That single sentence is worth more than a list of things LLMOps “adds”, because it tells you where to look when something breaks. If you cannot retrain, every fix is a configuration change, and every configuration change needs a test that catches behavior rather than accuracy.

DimensionMLOpsLLMOps
Primary artifactTrained weights and the dataset behind themPrompt version, corpus snapshot, provider and model version
Fixing a regressionRetrain on corrected or additional dataChange a prompt, a retrieval rule or a provider, then prove it with evals
Test signalAccuracy, precision and recall against a labelled holdoutEval pass rate, refusal rate and human review of open-ended output
Cost profileTraining dominates; inference is cheap and predictableInference dominates and scales with retrieved context
Data ownershipYou own the training dataWeights and training data belong to the provider
Drift detectionFeature and label distribution shiftBehavior change, often with no distribution signal at all
Tooling maturityMature. Registries, feature stores and CI patterns settled years agoUnsettled. Tooling churns and the standards are still forming

The last row is the honest one. MLOps wins it outright, and a team that already runs a mature MLOps practice will find LLMOps rougher than what they are used to. Anyone selling you an LLMOps stack as a settled category is describing a market that does not exist yet.

The LLMOps Lifecycle: From Development to Monitoring

The LLMOps lifecycle has five stages: corpus and data curation, prompt and retrieval development, evaluation, deployment, and production monitoring. Each stage produces a versioned artifact, and the artifacts are what make the practice auditable. A corpus snapshot, a prompt version, an eval report, a release record and a trace store. A team that cannot name the artifact for a stage is not running that stage.

five-stage lifecycle diagram: corpus & data curation; prompt & retrieval development; evaluation; deployment; production monitoring, with corresponding artifacts on the right.

The lifecycle is a loop rather than a line. Production traces feed the next round of evals, and eval failures send you back to the corpus.

  1. Curate the corpus. Decide what the model can see, how documents are chunked, and who is allowed to retrieve each one.
  2. Develop the prompt and the retrieval rules. Both are code, and both belong in the repository rather than in a config screen.
  3. Evaluate. Run a fixed set of cases against the candidate prompt, model and corpus, and record the result.
  4. Deploy. Ship with the prompt version, model version and corpus version pinned and recorded together.
  5. Monitor. Trace every call, alert on behavior and cost, and feed real failures back into the eval set.
StageOutput artifactWho owns itWhat the artifact proves
Corpus curationCorpus snapshot with a version and a refresh dateData engineeringWhat the model could see on a given day
Prompt developmentVersioned prompt with an author and a changelogProduct engineeringWho changed the behavior, and when
EvaluationEval report tied to a prompt and model versionThe team owning the featureThat the change was tested before release
DeploymentRelease record naming prompt, model and corpus versionsPlatformExactly what was live at a point in time
MonitoringTrace store with a stated retention policyPlatform and complianceHow any individual answer was produced

Data Management and Quality in LLMOps

In most LLM systems, the data problem is the retrieval corpus, not the training set. Chunking rules, embedding model version, refresh cadence and access control on each document decide answer quality more than model choice does. A corpus that grows without a refresh policy degrades quietly: retrieval still returns something, eval scores stay flat, and answers slowly get less useful to the people asking.

Three data controls carry most of the value here:

  • Version the corpus, not just the documents. A snapshot with a date lets you reproduce an answer six months later, which is what an auditor will ask you to do.
  • Pin the embedding model. Changing it silently re-ranks everything, and an eval suite built before the change will not necessarily catch it.
  • Enforce access control at retrieval time. A document the user cannot open should not reach the model’s context, and filtering the output afterward is not the same control.

We cover the retrieval side of this in more depth in our guide to retrieval quality in enterprise RAG, including the evaluation and cost mechanics that sit behind it.

Model Deployment and Integration Strategies

Three deployment shapes cover almost every LLM system: a hosted provider API, a self-hosted open-weights model on your own GPUs, and a hybrid where sensitive traffic stays inside your network while the rest goes to a provider. Each buys something and costs something. Hosted APIs give you the strongest models and the weakest control over data residency and version changes.

The choice is a business decision wearing an infrastructure costume. Data residency, procurement, and how much notice you get before a model changes are all consequences of this one call.

  • Hosted API. Fastest to ship, best models, no GPU capacity planning. You accept the provider’s data handling, region list and deprecation schedule.
  • Self-hosted open weights. Full control of residency, version and inference cost. You take on GPU capacity, an inference stack, and a much larger evaluation burden because the model is weaker on hard cases.
  • Hybrid. Sensitive workloads run inside your network and everything else goes to a provider. It works, and it doubles the number of eval suites you maintain.

Deployment decides where the model runs. Integration decides what it can reach, and in a regulated environment that is the part that goes wrong. The pattern that holds up is a controlled bridge rather than a direct connection:

  • Retrieval instead of database access. The model receives filtered, permission-checked passages rather than querying a database itself, which keeps raw records out of the context window.
  • A gateway in front of every provider. One middleware layer validates each request, picks the provider and model, and normalizes the response. Self-hosted gateways suit on-premise deployments, because the traffic never leaves your boundary.
  • Anonymization before egress. Where an external API is in play, personal and financial fields are masked before anything crosses the network edge.

Where an LLM has to work against a live database, a two-stage sandbox keeps it away from real records. Stage one runs in a sandbox on synthetic data, where the model learns the schema and drafts a query without seeing a real row. Stage two runs that query against the production database, anonymizes the result set before it returns to the model, and restores the original values only in the answer the user sees.

Provider choice matters more than the deployment shape for most teams. Our comparison of the major model providers walks through where each currently differs, and an AI gateway in front of the providers is what makes switching between them a config change rather than a project.The next three are slow delivery at 20%, distrust of the payment form at 19%, and forced account creation at 18%.

section header: deployment with three cards showing deployment options and their buys and costs: hosted api, self-hosted weights, and hybrid.

Prompt Engineering and Management in LLMOps

A production prompt is a versioned artifact under change control, the same as a database migration. It has an author, a version number, an eval result attached to it and a rollback path. Teams that keep prompts inline in application code lose the ability to say which prompt was live when a given output was produced, which is the first question every incident review asks.

Prompt management is where prompt engineering stops being a craft and starts being an operational discipline. The craft part is real, and it is also the part that scales worst: a prompt that one engineer tuned by hand is a single point of failure the moment that engineer changes teams.

Four controls make prompts operable:

  • A prompt registry, in the repository, with one file per prompt and a changelog.
  • An eval run attached to every prompt version, so no prompt reaches production untested.
  • A rollback path that does not require a deploy.
  • A record in the trace of which prompt version produced each output.

Fine-Tuning and Customization of LLMs

Most teams reaching for fine-tuning should fix retrieval and prompting first. Fine-tuning changes how a model writes, and it rarely fixes what a model knows, which is what the majority of production complaints turn out to be about. It earns its cost in three cases: a narrow output format the model keeps breaking, a domain vocabulary no prompt can carry, and a latency budget that only a smaller tuned model can hit.

That is an uncomfortable thing for an engineering partner to write down, because fine-tuning engagements are larger and more profitable than retrieval work. It is still the right advice, and it is the first thing worth checking before anyone budgets for a tuning run. Our guide to when fine-tuning is the right call covers how to tell the three cases apart.

Where fine-tuning is genuinely the answer, the operational requirements grow rather than shrink. A tuned model is a model you now own, which means you inherit versioning, storage, an evaluation baseline to compare against, and a rollback to the base model when a tuning run makes things worse.

Monitoring and Maintaining LLMs in Production

Production monitoring for an LLM system means tracing every call end to end: the input, the retrieved context, the prompt version, the model and its version, each tool call, the output, latency and token count. Alerts fire on eval pass rate, refusal rate, latency percentiles and cost per resolved request. Drift here has no training-data cause, so it gets detected in behavior rather than in feature distributions.

The trace is the unit of work. If you have one, you can answer why a specific customer got a specific answer; without one, you are reading application logs and guessing. That difference shows up on the day a regulator, a customer or your own security team asks about a single output.

Four things are worth alerting on from day one:

  • Cost per resolved request, which is the only cost metric a business leader can act on.
  • Eval pass rate, run continuously against production traffic samples rather than only in CI.
  • Refusal and fallback rate, which usually moves before quality complaints arrive.
  • Latency at p95 and p99, because agent loops and retrieval hops compound.

Ecommerce Website Development Costs in 2026

A templated platform launch costs $3,000 to $25,000. A mid-market build with custom design, integrations, and migration runs $40,000 to $100,000. Enterprise and composable builds start around $250,000. Annual maintenance adds 15% to 20% of the build cost, every year, and it is the line most often missing from a first budget.

Ecommerce website development cost is driven by integration scope rather than by page count, which is why two quotes for the same catalog can differ by a factor of five. Marketplace gig prices are a different market again, and comparing against them misleads. A $200 storefront setup and a $60,000 integration project are answers to different questions, and a business with an ERP is only ever asking the second one.

Build tierRangeWhat is includedWhat is not
Templated platform launch$3,000–$25,000Theme setup, hosted payments, basic catalogCustom integrations, order history migration
Mid-market build$40,000–$100,000Custom design, ERP and OMS integration, migration, accessibility workOngoing feature work, platform licence fees
Enterprise / composable$250,000+Decoupled front end, service layer, multi-channel supportThe same, at a larger scale
Annual maintenance15–20% of build costSecurity patching, platform upgrades, monitoringNew features

These ranges come from Teamvoy’s own project data, set out in full in what a website redesign actually costs.

The three-year number is the one that matters

Build cost is the number in the quote and the smaller half of the decision. Over three years a mid-market store typically pays the build once, maintenance three times at 15% to 20% each, platform or licence fees monthly, and a feature budget that nobody writes down but everybody spends. A $70,000 build with $12,000 of annual maintenance and $1,500 a month in platform fees is a $160,000 commitment before a single new feature ships.

Costing it that way changes which platform wins about as often as it confirms the choice, which is why it belongs in phase 2 rather than in the post-launch review.

What pushes the number up

Photography and copy. Rarely in the development quote and always in the launch date.

Integrations you did not scope. The most common overrun, and it originates in phase 1.

Dirty product data. Cleaning 40,000 SKUs is a project, and somebody owns it.

Order history migration. Optional more often than teams assume, and expensive when it is not.

Compliance remediation. Cheap in phase 3, expensive in phase 6.

infographic showing ecommerce integration costs: templated launch k–25k, mid-market k–100k, enterprise 0k+, plus a 0k total with ongoing maintenance later in the layout.

Compliance and Security Considerations

Four frameworks cover most LLM compliance work in the US and EU. OWASP ranks prompt injection as LLM01, the top entry on its 2026 list for LLM applications. NIST’s AI Risk Management Framework adds a Generative AI Profile, NIST-AI-600-1. The Federal Reserve’s SR 11-7 sets the model risk expectations that reach LLM validation in banking. And the EU AI Act’s high-risk obligations applied from 2 August 2026.

Naming them matters because generic governance language does not survive contact with an audit. An examiner asks for specific artifacts, and the artifacts are the ones the lifecycle already produces.

FrameworkWhat it requires that touches LLMOps directly
OWASP Top 10 for LLM ApplicationsPrompt injection is LLM01. Input from a document or a tool result is untrusted, and so is model output that reaches another system
NIST AI Risk Management FrameworkGovern, Map, Measure and Manage, plus the Generative AI Profile NIST-AI-600-1, published 2024-07-26
Federal Reserve SR 11-7Model risk validation means conceptual soundness, ongoing monitoring and outcomes analysis, performed independently of whoever built the thing
EU AI ActGPAI obligations applied from 2025-08-02; most high-risk obligations from 2026-08-02; models placed on the market before 2025-08-02 have until 2027-08-02

SR 11-7’s independence requirement is the one that catches teams by surprise. It means the engineer who wrote the prompt should not be the person signing off that the prompt is validated, and that separation has to exist in the tooling rather than only in a policy document. Three artifacts turn all of that into something an examiner can accept. An audit log of every interaction, recording what was retrieved, what was sent to the model and what came back, which is what a GDPR or HIPAA review asks for. An output validation layer that blocks sensitive or malformed responses before a user sees them, because defending against prompt injection at the input alone leaves the other half open. And a written record of data flows, model usage and safeguards, which regulated environments require and which nobody reconstructs accurately after the fact.

Security has a similar shape: AI-assisted code carries risks of its own, and the same review discipline applies to a generated pipeline as to a generated answer.

Cost Management and Optimization

Four levers move an LLM bill, and model choice is rarely the largest. Retrieved context size usually dominates, because every retrieved chunk is billed on every call that includes it. Then comes request volume, then output length, then model tier. A retrieval rule returning eight chunks where three would do can triple a token bill without a single line of application code changing.

Cost leverWhat moves itEffect on the bill
Retrieved context sizeChunks returned per call and chunk sizeThe largest single lever, and it applies on every call
Request volumeFeature adoption, retries, agent loopsLinear, and agent retries multiply it faster than adoption does
Output lengthToken limits and verbosity instructions in the promptOutput tokens are priced above input tokens by every major provider
Model tierFrontier model, mid-tier model, or a small tuned oneA step change, and usually the smallest of the four

Cost work has a natural order: instrument first, then cut context, then route by task, then consider a cheaper model. Teams that start at the last step swap a good model for a weaker one and lose more in eval pass rate than they save on tokens. For build budgets rather than running costs, we publish real ranges in our breakdown of what production AI costs in fintech.

Build or Buy: Should You Run LLMOps In-House?

Build it in-house when you have one model provider, one LLM application, and an engineer who already owns the platform. That team will spend less building an eval suite and a trace store than it would spend buying and integrating either. Bring in help when the count goes above one on any of those three, because the cost lands in the integrations and the compliance evidence rather than in the code.

That first sentence is worth taking seriously, and it argues against hiring us for a real set of teams. A Series A company with one support-assistant feature, one provider and a platform engineer who likes the problem should build it. The eval suite is a test runner and a set of fixtures. The trace store is a table.

The calculation changes on three specific triggers:

  • A second model provider. You now need an abstraction, two eval suites and a routing decision, and each of those has a wrong version that is expensive to unwind.
  • A regulated workflow. The evidence requirements in the compliance table above are a project, not a task, and they are unforgiving about being retrofitted.
  • A second team shipping LLM features. Shared prompts, shared corpora and shared cost budgets need an owner, and the platform stops being a side project.

Aligning LLMOps with Business Objectives

LLMOps pays back in business metrics rather than model metrics. The two worth reporting upward are cost per resolved request and the share of outputs that reach a customer without human editing. Both connect a technical change to money, and both move when an eval suite catches a regression that would otherwise have shipped. Benchmark accuracy connects to neither.

Getting that alignment right is mostly a sequencing problem. Teams that pick the business metric after building the eval suite end up with evals that measure what was easy to measure. Our guide to AI integration implementation strategies covers the wider version of the same problem.

The practical test is whether you could explain a week’s LLMOps work to a CFO in one sentence with a number in it. “We cut retrieved context from eight chunks to three, held eval pass rate flat, and reduced cost per resolved request by a third” passes. “We improved our monitoring” does not.

Best Practices for LLMOps Implementation

Six LLMOps best practices carry most of the value: version every prompt, trace every call, write ten evals before the first release, run those evals in CI on every prompt or corpus change, pin the model version explicitly, and set a token budget alert per feature rather than per account. They are listed below in order of what each costs to adopt rather than by importance.

Those six LLMOps best practices are not exotic, and the first two are an afternoon each. The eval suite is the one that gets deferred, and deferring it is the decision most teams later describe as the expensive one.

  • Version every prompt. One file per prompt, in the repository, with a changelog.
  • Trace every call. Input, retrieved context, prompt version, model version, tool calls, output, latency, tokens.
  • Write ten evals before launch. Ten real cases beat a hundred synthetic ones.
  • Run evals in CI. The mechanics are the same as running agents inside a CI/CD pipeline, and the trigger set should include corpus changes.
  • Pin the model version. A floating alias means the provider decides when your behavior changes.
  • Alert on cost per feature. An account-level budget alert tells you something is wrong; a feature-level one tells you what.

The trade-off is real. An eval suite adds time to a first release and pays that back from the first model change onward, which for most teams arrives within a quarter.

Business-Aligned LLMOps Implementation Framework

A business-aligned LLMOps sequence has four steps: agree the two business metrics before writing an eval, map each LLM capability to the one workflow it changes, put the eval suite into CI before the first release rather than after it, and review the metrics on a fixed cadence with the people who own the workflow. The sequence is deliberately generic, because the hard part is the discipline rather than the diagram.

Step two is where most of the value sits and where most implementations skip ahead. A capability mapped to “customer support” is not mapped to anything. A capability mapped to “first-response drafting in tier-one billing tickets” has an owner, a baseline and a number attached to it.

The review cadence is the part that decays first. Fortnightly for the first quarter, monthly after that, with the workflow owner in the room rather than only the engineering team. A metric nobody reads stops being a metric within two cycles.

Advanced Topics: Agentic AI and Future Directions

An agent raises the observability bar rather than changing it. A single-turn call produces one trace; an agent produces a tree of model calls, tool calls, retries and decisions, and any one of them can be the reason the final answer is wrong. Everything above still applies, with two additions: per-step tracing, and a spend ceiling enforced per agent run.

The failure mode is specific. An agent that loops on a failing tool call will consume its budget in minutes and produce a plausible answer built on nothing, and the final output looks the same as a good one. Step-level traces and a hard run ceiling are what turn that from an incident into an alert.

Two directions look durable. Provider portability is becoming a procurement requirement rather than an engineering preference, which raises the value of an abstraction layer and of eval suites that run against more than one model. And regulatory attention is moving from model providers toward deployers, which puts the artifacts in the lifecycle table on the critical path. Our overview of autonomous AI agents covers the architecture side of this in more depth.

Conclusion: The Evolving Role of LLMOps in Enterprise AI

What is LLMOps, in one sentence: the engineering practice that keeps a large language model useful, affordable and defensible once it has real users. The work is evaluation suites, prompt and model version control, tracing, cost control, and the compliance evidence a regulator or an auditor will ask for. Every piece of it is cheaper to build before launch than to retrofit afterwards.

Three things to take away:

  • What is LLMOps, in practice: the controls listed above, owned by a named team.
  • The difference from MLOps is what you control. You version prompts, corpora and providers, because you cannot retrain.
  • The eval suite is the deferred decision that gets expensive. Ten real cases before launch beat a hundred after an incident.
  • The compliance artifacts are the same artifacts good engineering already produces, provided you name them.

If you’re running LLM features in production and any of the five questions at the top of this piece are still open, talk to us about LLMOps

FAQ

Photo of Bohdan Varshchuk

, Chief Technology Officer

Bohdan brings over 15 years of experience in software development across Fintech, Blockchain, IoT, and Engineering Services. Passionate about innovation and digital transformation, he leads teams to deliver high-quality solutions that meet clients' unique needs. Bohdan is dedicated to helping businesses smooth operations, boost efficiency, and achieve sustainable growth.
 
Schedule a Call Connect on LinkedIn