← Uber Interview Insights

Uber·Machine Learning Engineer·Technical Phone Screen·Senior

Senior
Apr 2026

Summary

ML engineer screen at Uber, one technical question about a computer vision architecture. Short and focused, felt more like a knowledge check than a real back-and-forth.

Questions Asked (1)

Q1

Can you explain how Mask R-CNN works?

Technical Trade-offsAlgorithms & Data Structures
Author's notes

I know this model reasonably well so I wasn't panicking, but I fumbled the ordering a bit.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start with a high-level overview of Mask R-CNN as an extension of Faster R-CNN for instance segmentation, then dive into its key components: backbone, RPN, RoIAlign, and mask head. Emphasize how it differs from Faster R-CNN and why those changes matter for performance.

Pro tip: Mention that Mask R-CNN decouples mask prediction from class prediction, which is crucial for avoiding inter-class competition and improving segmentation quality. Also, highlight RoIAlign's role in fixing misalignment from RoIPool, a key detail that shows deep understanding.

1. High-level overview

Define Mask R-CNN as a two-stage framework for instance segmentation, extending Faster R-CNN by adding a mask branch. Mention that it simultaneously predicts bounding boxes, class labels, and pixel-level masks for each instance.

2. Backbone and feature extraction

Explain that a CNN backbone (e.g., ResNet-FPN) extracts feature maps from the input image. FPN helps handle multi-scale objects, which is important for segmentation.

3. Region Proposal Network (RPN)

Describe how RPN generates candidate object proposals (RoIs) from the feature maps. These proposals are then used in the second stage.

4. RoIAlign and mask head

Detail RoIAlign: it extracts fixed-size feature maps for each RoI without quantization, preserving spatial alignment. Then, a small FCN (mask head) predicts a binary mask for each RoI, independent of class.

5. Training and inference

Mention multi-task loss: classification, bounding-box regression, and mask prediction. At inference, masks are generated for top-scoring proposals and combined with detected boxes and classes.

Key Points to Mention

  • Mask R-CNN extends Faster R-CNN by adding a parallel mask prediction branch.
  • RoIAlign replaces RoIPool to avoid misalignment due to quantization, improving mask accuracy.
  • The mask branch predicts a binary mask for each class independently (per-class masks), decoupling mask and class prediction.
  • It uses a multi-task loss: L = L_cls + L_box + L_mask.
  • Backbone often includes Feature Pyramid Network (FPN) for multi-scale object detection.
  • Mask R-CNN is widely used for instance segmentation and can be extended to other tasks like human pose estimation.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.