Company Interview Questions · Semiconductors & Hardware

Cisco & Synopsys: ML / AI Engineer

❓ 6 questions🏢 Cisco & Synopsys🆕 Recent reports

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

02Questions and model answers

Q1
Given an agent-framework repository, how do you find where the reward is calculated?
  1. Search first: grep -rn "reward" --include=*.py, plus terms like score, return, advantage.
  2. Start from the entry point (training script or main) and follow the loop: environment step() → reward, or trajectory → reward model / verifier call.
  3. Check configs (YAML) for reward function names, then jump to their definitions in the IDE.
  4. 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

Sources

Created by Ajeetkumar