Design multithreaded CPU convolution
Company: IBM
Role: Software Engineer
Category: System Design
Difficulty: hard
Interview Round: Take-home Project
Quick Answer: This question evaluates skills in parallel algorithm design, multithreading and synchronization, CPU microarchitecture awareness (SIMD and cache-line behavior), memory locality and false‑sharing avoidance, and numerical performance engineering for implementing valid 1‑D convolution on multicore CPUs.