Company Interview Questions · Semiconductors & Hardware
Cisco & Synopsys: ML / AI Engineer
Cisco & Synopsys: ML / AI Engineer Interviews (2025). Rounds, real reported questions and model answers, compiled from public candidate reports (sources at the end). Practice mode hides every answer: say your answer first, press Show answer, then rate yourself. Use 🔁 Review again to build your revision list and 🎲 Random question for a quick drill.
About this interview
Compiled from a public Cisco ML/AI Engineer report (San Jose, October 2025: one round on DS and LLMs, find the reward calculation in an agent-framework repo, improve SLM reasoning) and a public Synopsys question-bank guide (DSA-heavy, then ML). The questions are paraphrased, and the model answers are written by EasyLearnSpace.
| Cisco | Synopsys | |
|---|---|---|
| Role | ML/AI Engineer | ML Engineer / Product Engineer – ML |
| Format | One round: DS + LLM concepts + code-reading task in an agent repo | Guide: DSA (most questions), ML (churn, feature importance, NN design, recommendations), stats |
| Outcome | Not selected | Guide-based |
| Signal | Can you navigate real codebases and reason about RL/agents? | EDA and chip-design AI context |
01Rounds at a glance
- Code reading is a skill: expect to find things in an unfamiliar repo quickly (search, trace call graphs).
- SLM reasoning: distillation, RL fine-tuning, prompting and tool use.
02Questions and model answers
Q1
Given an agent-framework repository, how do you find where the reward is calculated?
- Search first:
grep -rn "reward" --include=*.py, plus terms likescore,return,advantage. - Start from the entry point (training script or
main) and follow the loop: environmentstep()→ reward, or trajectory → reward model / verifier call. - Check configs (YAML) for reward function names, then jump to their definitions in the IDE.
- Confirm by running a small test with logging or a breakpoint to watch where the reward value is created. - Explain your systematic navigation; interviewers care about the method as much as finding the line.
Q2
How would you make a small language model (SLM) better at reasoning?
- Distillation: fine-tune on reasoning traces (chain of thought) from a larger teacher model; filter for correct answers (rejection sampling).
- RL with verifiable rewards: maths and code tasks with automatic checkers (GRPO/PPO), plus format rewards. Watch for reward hacking.
- Data quality: curriculum (easy → hard), deduplication, decontamination.
- Inference-time: self-consistency (majority vote), verifier re-ranking, tool use (a calculator or code interpreter), extra "thinking" tokens.
- Evaluate on GSM8K, MATH and held-out domain tasks; check the calibration of the final answers.
Q3
How does reward modelling work in RLHF, and what are its pitfalls?
- Train a model to score responses so that r(chosen) > r(rejected) (Bradley–Terry loss) on human preference pairs; then optimise the policy against it with a KL penalty.
- Pitfalls:
- Reward hacking: exploiting quirks such as length or flattery.
- Distribution shift as the policy improves.
- Noisy or biased preference labels.
- Overoptimisation (Goodhart's law).
- Mitigations: ensembles, regular reward-model refreshes, length normalisation, human audits.
Q4
Feature importance: how do you determine which features matter most?
- Model-based: tree gain or split counts (biased towards high-cardinality features), coefficients for scaled linear models.
- Permutation importance: the drop in the validation metric when a feature is shuffled. Model-agnostic, but correlated features split the importance.
- SHAP: consistent per-prediction attributions; global importance is the mean |SHAP|.
- Caveat: importance is not causality. Check stability across folds and deal with correlated groups.
Q5
Where can ML help in chip design (EDA)?
- Design-space exploration: RL or Bayesian optimisation to tune synthesis and place-and-route parameters for power, performance and area.
- Prediction: estimate timing, congestion and power early, from netlist and graph features (GNNs), to avoid slow full runs.
- Verification: prioritise test cases, cluster failures, analyse logs with LLMs.
- GenAI copilots: RTL code assistants, documentation Q&A, script generation for EDA tools.
Q6
DSA: find the k-th largest element in an array.
import heapq
def kth_largest(nums, k):
h = nums[:k]; heapq.heapify(h)
for x in nums[k:]:
if x > h[0]: heapq.heapreplace(h, x)
return h[0]
- A min-heap of size k gives O(n log k). Quickselect averages O(n).
03How to prepare
- Cisco: practise reading unfamiliar code (agent or RL repos), RLHF and reward basics, SLM improvement strategies.
- Synopsys: a solid DSA base, ML fundamentals, and awareness of AI in EDA.
Sources
Created by Ajeetkumar