Course Content
Deep Learning Essentials
13 sections · 61 lessons
Name the Deep Learning frameworks and tools that you have used
What you need to know
This is a question about your experience, so the "right" answer is your own. But interviewers are listening for three things: that you know what each tool is for, that you have used some of them for real, and that you are honest about depth.
The tool map, by job
| Job | Tools you should recognise |
|---|---|
| Build and train models | PyTorch (most common today), JAX (research, TPUs), TensorFlow/Keras (still in many production systems) |
| Pretrained models and fine-tuning | Hugging Face Transformers, Datasets, PEFT (LoRA, QLoRA), TRL, timm for vision models |
| Training loops at scale | PyTorch Lightning, Hugging Face Accelerate, DeepSpeed, FSDP |
| Classical ML and metrics | scikit-learn, XGBoost, LightGBM |
| Data handling | NumPy, pandas, Polars |
| Experiment tracking | Weights & Biases, MLflow, TensorBoard |
| Optimised inference | ONNX Runtime, TensorRT, OpenVINO, torch.compile |
| Mobile and edge | ExecuTorch, LiteRT (the new name of TensorFlow Lite), Core ML |
| LLM serving | vLLM, SGLang, TensorRT-LLM, llama.cpp |
| Hardware layer | CUDA and cuDNN on NVIDIA GPUs, mixed precision (bf16/fp16) |
A few facts worth knowing
- PyTorch runs code eagerly (line by line), which makes debugging with normal Python tools easy. Since PyTorch 2.0,
torch.compilecan compile a model for speed without changing the code. - TensorFlow 2 also runs eagerly by default, with
tf.functionto build a graph. Keras 3 is multi-backend: the same Keras code can run on TensorFlow, JAX or PyTorch. - ONNX is a file format for models. You train in PyTorch, export to ONNX, and run it with ONNX Runtime or TensorRT in production, often much faster on CPU or GPU.
How to structure your answer
- Name your primary framework and a project you built with it.
- Name the supporting tools you used in that project, and what each did.
- Name tools you know but have not used deeply, and say so.
A real-life example
A good answer from a candidate who built a crop-disease app:
"I trained an EfficientNet-B0 in PyTorch using timm for the pretrained weights. I used torchvision.transforms.v2 for augmentation, and tracked about 40 runs in Weights & Biases to compare learning rates and augmentation settings. For the phone app, I exported the model to ONNX, quantised it to int8, and ran it with ONNX Runtime Mobile. That cut the model from 21 MB to about 6 MB and brought inference on a mid-range Android phone to under 100 milliseconds. I have used TensorFlow only to maintain an older Keras model, so I am less deep there."
Why it works: specific tools, a clear job for each, real numbers, and honesty about limits. The interviewer now has five good follow-up questions and you can answer every one.
Follow-up questions to expect
- "Why PyTorch over TensorFlow?" — Eager execution makes debugging natural, most research code and pretrained models appear in PyTorch first, and
torch.compileclosed much of the old performance gap. TensorFlow still has strong deployment tooling in some companies. - "What does
torch.compiledo?" — It captures the model's operations into a graph and generates optimised kernels, often fusing several operations into one. It can speed up training and inference without code changes. - "How did you deploy the model?" — Be ready to explain export format, quantisation, serving method, and latency numbers.