Skip to main content

AI Product Engineering Tech Requirements

Updated over a week ago

To ensure a successful and smooth learning experience on the AI Product Engineering, learners need access to specific tools.

Important note: Please ensure learners can also access the core requirements listed in this article in addition to the programme-specific requirements outlined below. It is the employer's responsibility to ensure this access is in place by the relevant deadline.

Tool

Details

Implementation Notes

Deadline

Python

Core programming language for all AI and software development tasks.

Installation

Month 1

Integrated Development Environment (IDE)

Interactive coding, data exploration, creating shareable documents, debugging, and general software development.

Installation (e.g., Jupyter Notebook/JupyterLab, VS Code)

Month 1

Anaconda/Miniconda (with Conda package manager)

Managing Python environments and packages, creating isolated environments for projects, and preventing dependency conflicts.

Installation

Month 1

pip (Python Package Installer)

Installing Python packages not available through Conda or for specific project requirements.

Included with Python installation

Month 1

NumPy

Essential for numerical computing, especially with arrays and matrices in data manipulation.

Installation (via Conda or pip)

Month 1

Pandas

Data manipulation and analysis, offering powerful data structures like DataFrames.

Installation (via Conda or pip)

Month 1

Scikit-learn

Comprehensive library for traditional machine learning algorithms (classification, regression, clustering, etc.).

Installation (via Conda or pip)

Month 1

TensorFlow / Keras

Powerful libraries for deep learning, building and training neural networks. Keras provides a high-level API for simplicity.

Installation (via Conda or pip)

Month 1

PyTorch

Popular deep learning framework, often favored for its flexibility and Python-like interface.

Installation (via Conda or pip)

Month 1

Matplotlib

Foundational plotting library for creating static, interactive, and animated data visualizations.

Installation (via Conda or pip)

Month 1

Seaborn

High-level interface for drawing attractive statistical graphics, built on Matplotlib.

Installation (via Conda or pip)

Month 1

NLTK (Natural Language Toolkit)

Comprehensive library for working with human language data, including tokenization, stemming, and tagging.

Installation (via Conda or pip)

Month 1

SpaCy

Industrial-strength NLP library for efficient text processing, named entity recognition, and dependency parsing.

Installation (via Conda or pip)

Month 1

Hugging Face Transformers

Working with modern large language models (LLMs) and pre-trained transformers for various NLP tasks.

Installation (via pip)

Month 1

LangChain

Building applications with large language models, enabling chaining of LLM calls and integration with other tools.

Installation (via pip)

Month 1

Git

Version control for tracking code changes, collaborating on projects, and managing different versions of codebases.

Installation

Month 1

GitHub/GitLab/Bitbucket (or similar)

Web-based platforms for hosting Git repositories, facilitating collaboration, code reviews, and project management.

URL (allowlist)

Month 1

Docker

Containerization of applications and AI models, ensuring consistent environments across development, testing, and deployment.

Installation

Month 1

Flask

Lightweight Python web framework for deploying simple AI models or creating proof-of-concept web interfaces.

Installation (via pip)

Month 1

AWS

Cloud computing platform that provides scalable services like computing power, storage, and databases.

Company license

Month 1

Azure

Cloud computing platform that offers a range of cloud services, including computing, analytics, storage, networking, and AI.

Company license

Month 1

How common are these tools likely to be for Engineering teams?

Core Development and Environment Management

  • Python: This is a foundational, core programming language for AI and software development. It is universally available and expected in any team working on data-driven or backend projects

  • Integrated Development Environment (IDE): Tools like VS Code or JupyterLab are standard for coding, debugging, and data exploration. Most engineering teams provide or allow these as basic requirements

  • Conda (Anaconda/Miniconda) and pip: These package and environment managers are essential for maintaining isolated project environments and managing dependencies. They are standard components of a Python developer's toolkit.

Data Science and Machine Learning Libraries

  • NumPy and Pandas: These are the "bread and butter" for numerical computing and data manipulation. Any team doing data-related work will have these readily available via standard installation methods

  • Scikit-learn: This is the primary library for traditional machine learning algorithms. It is a standard requirement for most ML engineering roles

  • TensorFlow/Keras and PyTorch: These are the leading deep learning frameworks. While a team might favor one over the other, at least one (and often both) is commonly available for neural network development

  • Matplotlib and Seaborn: These are standard libraries for data visualization and statistical plotting, essential for any team that needs to communicate results through data.

Natural Language Processing (NLP) and LLM Tools

  • NLTK and SpaCy: These are industry-standard libraries for foundational and efficient text processing. They are commonly used in any team handling human language data.

  • Hugging Face Transformers and LangChain: These represent the modern stack for working with Large Language Models (LLMs). As more teams pivot toward AI-powered applications, these tools are becoming increasingly standard.

DevOps, Version Control, and Deployment

  • Git and Hosting Platforms (GitHub/GitLab/Bitbucket): Version control is a universal requirement for professional engineering. Every team will use Git and a corresponding web-based hosting platform for collaboration and code reviews.

  • Docker: Containerization is widely adopted for ensuring consistent environments across development and deployment. It is a standard tool for modern MLOps and software delivery.

  • Cloud Platforms (AWS/Azure): Most modern engineering teams operate within a cloud environment. Availability is usually managed through company licenses, providing scalable computing and AI services.

  • Flask: As a lightweight web framework, Flask is a common choice for creating APIs or proof-of-concept interfaces for AI models.

Did this answer your question?