ESC

Type to search the knowledge base.

Do You Need ML Before AI Engineering?

You can ship retrieval and agents without deriving backprop. What ML literacy actually buys you, and which math can wait.

beginner5 min read
  • career
  • ml
  • learning-path

A year of Coursera before your first eval set is a stall, not a foundation. Frontend engineers who want to learn machine learning before they ship an LLM feature usually delay the only loop that teaches them: retrieve, generate, score, change one thing.

You already ship typed APIs, retries, and UI states. That is most of the job. Gradient descent will not stop a user from pasting a secret into the prompt, and it will not write your golden set.

Key takeaways

  • You do not need to derive backpropagation to ship retrieval, tools, or evals.
  • Product loops first: a typed server route, a tiny labeled set, traces, a cost cap.
  • ML literacy pays later: embeddings, overfitting, metric games, why a fine-tune memorizes junk.
  • Training is a last lever. Prompts, tools, and search move faster and revert cleaner.
  • The gap you will feel is vocabulary and debugging, not an inability to ship.

Should you learn machine learning first?

No, not as a gate. Yes, as a later skill, once you have a product that fails in measurable ways.

AI engineering is software around models: prompts, retrieval, tools, evals, traces. ML engineering is data, features, training, serving a model you own. Overlap exists. The first production incident on an LLM feature is almost never “our loss curve was wrong.” It is an empty retrieval, an unbounded agent loop, or a tool that trusted the model as auth.

If you already think in HTTP, you can treat the model as a flaky dependency. See what AI engineering is and the AI engineering learning path for the map. This page is the sequencing argument.

What you can skip at the start

You can postpone, without shame:

Topic Why it can wait
Backprop by hand You are not training a base model this quarter.
CUDA, kernels, mixed precision Providers own serving. You own the request.
Deriving attention You need the effects: context window, next-token sampling.
Full supervised-learning cookbook Useful later. Not a prerequisite for a docs chatbot.

Skipping is not the same as sneering. When a retrieval score looks random, or a fine-tune recites your bugs, you will want the literacy. You do not need it to write the first retrieve() function.

A shipping order that does not wait for backprop

Treat this as a sequence, not a personality test.

1. Product loop (days, not semesters)

Stand up a server route, keep keys off the client, stream tokens, abort on Stop. That is the same muscle as AbortController and secrets in frontend bundles. Add a 20-row golden set with assertions, not vibes:

type Case = {
  id: string;
  query: string;
  mustInclude: string;
  mustNotInclude: string[];
};

async function runCases(
  cases: Case[],
  answer: (query: string) => Promise<string>,
) {
  const rows = [];
  for (const c of cases) {
    const text = await answer(c.query);
    rows.push({
      id: c.id,
      hit: text.includes(c.mustInclude),
      leaked: c.mustNotInclude.some((s) => text.includes(s)),
    });
  }
  const passed = rows.filter((r) => r.hit && !r.leaked).length;
  return { passed, total: cases.length, rows };
}

That function is closer to AI engineering than a week of matrix calculus. Change one prompt, rerun, keep the diff.

2. Embeddings and eval math (when search is the product)

Once you retrieve documents, you need a working picture of embeddings: same-model vectors, cosine as “nearby,” nearest neighbor as a guess. You also need to split retrieval hit rate from answer faithfulness. That is applied stats, not a PhD. You can learn it from failures on your own corpus.

3. Training (when the other levers stall)

Fine-tuning, ranking models, maybe a small classifier in front of the LLM. Do this after you can prove a prompt plus retrieval cannot move the metric. Training without a held-out set is how you memorize the 12 examples someone wrote from memory.

Literacy you will miss (and feel)

Honest list of what a software-only path does not give you:

  • Why two paraphrases sit close in vector space while a SKU sits nowhere near its product title. You can still ship hybrid search. You will debug it slower.
  • Overfitting and leakage. If eval queries were in the prompt’s few-shot list, the score is fan fiction.
  • Metric collapse. Optimizing a 1–5 “quality” judge that loves long answers will ship sermons.
  • Calibration. A cosine of 0.82 is not 82% true. It is a ranking signal.
  • Data work. Labeling, class imbalance, and “the model is fine, the PDF parser ate the table.”

When those show up, go read a short course. Google’s Machine Learning Crash Course is enough to get the vocabulary. Then come back to the product.

How this shows up in interviews

Interviewers sometimes treat “no ML background” as a filter. Answer with scope, not apology.

You have shipped probabilistic APIs: retries, timeouts, idempotency. You have not trained ResNet on ImageNet, and you will not pretend. You can explain tokens, sampling, retrieval vs generation, and why the model is not an authorization layer.

If they want you to derive softmax, that is an ML role. If they want you to design a cited docs bot with evals, that is this job.

Interview answer (out loud)

“I would not block on a year of ML coursework. I would ship a typed server route, retrieval with citations, traces, and a small golden set, then learn the math the failures force: embeddings, ranking metrics, overfitting if we fine-tune. Backprop can wait until we own training. What I will not skip is evals and auth. The model is a sampler, not a database and not a permissions system.”

Further reading (primary sources)

Related guides