I applied through a staffing agency. The process took 6 weeks. I interviewed at Cirrus Logic in June 2016
Interview
1st round - phone interview - questions below
2nd round phone after 3 weeks- take-home assignment where design specs were given and asked to design and verify.
3rd after 2 weeks - on site interview
Very bad experience as the interviewers were themselves inadequately prepared to handle the interview.
The day started with the first interviewer sending another person instead. Their head of the division seemed to slight my previous work. The prospective immediate manager was not friendly. Never once did he smile/greet me during the entire process even though I tried to greet him on multiple occasions- may be he is already not interested in interviewing me for the position.
Other interviewers were friendly and the questions were pretty basic. Those rounds felt like a good discussion.
In one round, the interviewers themselves were unable to assess my solution during the interview as they "have been out of touch with the problem" that they asked me to solve - shows a lack of respect for my time and effort. I wouldn't ask a question that I don't know a definite answer to.
My impression has been that they already had a candidate selected and they did the interview just for the sake of it (Or was I being used as a test subject for their "innovative" interview techniques that they still haven't mastered? Or was it a special treatment since I was from a particular employer?) What a waste of my time and effort!
Interview questions [4]
Question 1
Phone questions:
How to get the same rise and fall time for an inverter? What’s a LPF/HPF? What's the step response output of a LPF and HPF?
What's Nyquist criterion? What's aliasing? What's impulse? Why do we measure impulse response? What is oversampling and why do we do it? What is FFT? IIR and FIR filters? What is quantization and quantization error?
What's the difference between struct and a class?
What is inheritance - explain.
What did you model in real numbers?
Did you find any bugs with your real number modeling?
Onsite questions:
Almost all the rounds started off with what I worked on. There was one round where they gave a problem to code and get it to compile - it was a difference detector which has input data coming in on every clock cycle. If data difference is +1 issue pos_signal; -1 issue neg_signal and others error_signal. They were unable to explain the requirements properly and left me confused on the specifics of the design given such a short time span. This round didn't go well.
What's your dream job why?
Asked about usage of randomization and classes.
Not a single question on OVM/UVM though the job role specifies its heavy use in the role.
What's the most complex sequence that you wrote? How would you call a testing done.
Do you think your team spent too much time for the (simple) design you worked on (with a smile that hints that my team doesn't know what we are working on)?
Why did you not raise alarm on a certain issue? (I didn't think it was that important, but the interviewer thinks it is very important - again a smile that hints that my team is not doing the right thing, according to him).