---
title: "NumPy | Skills We Assign For | Azendo"
description: "NumPy as the numerical foundation — vectorisation, precision and the Azendo roles assigned for quantitative work."
url: "https://azendo.co/skills/numpy/"
---

[Skills](https://azendo.co/skills/) AI and machine learning 

# NumPy.

NumPy provides the array type and numerical operations that nearly every Python data and machine learning library is built on. It matters less as a tool you use directly than as the layer whose behaviour explains what the tools above it do.

## Where NumPy fits on a long engagement.

Vectorised operations are the difference between an analysis that runs in a second and the same analysis written as a Python loop running in a minute. On a dataset that is re-processed daily, that is not a micro-optimisation.

Understanding NumPy is also what lets someone debug the layer above it. Shape mismatches, unexpected broadcasting and floating-point precision surface as confusing errors in Pandas or PyTorch, and are only explicable at this level.

## What an assigned team does with NumPy.

Numerical code is rarely rewritten and frequently inherited, which makes precision decisions surprisingly durable. A tolerance chosen carelessly in year one produces a reconciliation argument in year three, and by then nobody remembers it was a choice.

This sits inside quantitative and modelling assignments rather than standing alone, most often under [data science](https://azendo.co/services/data-science/) capacity on a standing agreement.

## What we use NumPy for.

* Making a slow analysis fast Loops replaced with vectorised operations where the runtime is actually costing something.
* Numerical work with precision requirements Financial or scientific calculation where accumulated floating-point error changes the answer.
* Debugging the layer above Shape and broadcasting errors resolved at their source rather than worked around.

## How NumPy capacity is assigned.

Assumed within data science and machine learning assignments rather than scoped separately. Capacity is agreed as a [committed monthly capacity](https://azendo.co/pricing/) rather than per skill.

## Roles we assign NumPy for

* [Data Scientist Data science](https://azendo.co/services/data-science/data-scientist/)
* [Quantitative Analyst Data science](https://azendo.co/services/data-science/quantitative-analyst/)
* [Machine Learning Engineer MLOps engineering](https://azendo.co/services/mlops-engineering/machine-learning-engineer/)

## Service lines it sits in

* [Data science](https://azendo.co/services/data-science/)
* [MLOps engineering](https://azendo.co/services/mlops-engineering/)

Capacity is agreed as a committed monthly capacity across a discipline, not per skill.

## Related in ai and machine learning

* [PyTorch — skill we assign for](https://azendo.co/skills/pytorch/)
* [TensorFlow — skill we assign for](https://azendo.co/skills/tensorflow/)
* [scikit-learn — skill we assign for](https://azendo.co/skills/scikit-learn/)
* [Pandas — skill we assign for](https://azendo.co/skills/pandas/)
* [embeddings — skill we assign for](https://azendo.co/skills/embeddings/)
* [function calling — skill we assign for](https://azendo.co/skills/function-calling/)
* [vLLM — skill we assign for](https://azendo.co/skills/vllm/)
* [MLflow — skill we assign for](https://azendo.co/skills/mlflow/)

## Tell us what your roadmap needs NumPy for.

A service delivery manager replies with the disciplines we would assign, the monthly capacity and what the first month looks like.

[All skills we assign for](https://azendo.co/skills/)
