This is the fourth post recounting my interview experience with The MathWorks. Today’s post focuses on the technical phone interview. Click here to see a list of related posts.
mathworks.jpg

The technical phone interview brought upon some frazzled nerves, but Doug helped ease my fears with some encouraging words. I was told in a previous phone call that the technical phone interview would cover basic areas of:

  • calculus
  • linear algebra
  • computer programming concepts
  • MATLAB
  • control systems (which was the extra topic of my choice).

Since it was a “basic” interview, I didn’t go all out in my preparation. But be warned, if you have a difficult time with the technical phone interview, an on-site interview will NOT be extended. So it’s always better to overstudy rather than understudy.

My study routine included about 30 minutes or so going over the two areas that I felt the fuzziest on, which were computer programming concepts and control systems. I didn’t take many computer science classes during my undergraduate and graduate studies, so I knew I would need some extra help here. The MathWorks folks were kind enough to ask me questions on the programming language of my choice. From what I remember, the options were: C, C++, and java. I chose C++.

The other three areas of calculus, linear algebra, and MATLAB were a little more fresh in my memory, so I probably spent at most an hour total reviewing all three topics. If you need to brush up on your calculus and linear algebra, there is a great tutorial site at Harvey Mudd College website, located here. Since Daniel and I run a MATLAB site, we work with it almost everyday, so the MATLAB stuff was pretty sharp in my mind. If you guys explore this website and have a good idea on what we present, then it should be more than enough to get you through the MATLAB portion of the technical interview.

We Could Tell you . . . But Then We’d Have to Kill You

Unfortunately, I can not reveal specific questions that were asked of me, as that would be doing a great disservice to our buddies over at The MathWorks. But, we can at least offer some hints and clues about what you might expect.

  • the phone interview lasted about 30-45 minutes
  • no computational aids or internet usage allowed throughout the interview
  • Scratch paper and pencil allowed
  • No evaluation at the end of interview (interviewer did not tell me how well or terrible I did)

Here are some more in-depth hints that should assist you on the technical phone interview:

Understand the Why

Quan: Don’t just know how to perform an operation, but understand the concept behind it. For example, know how to take derivatives of the following functions. In addition, be able to explain the concept of a derivative. Same goes for integrals, limits, related rates, mean value theorem, and other calculus favorites. You can practice on the following functions I have listed below:

[tex]y(x)=5x^2[/tex]

[tex]y(x)=e^x[/tex]

[tex]y(x)=sin(x)[/tex]

Dan: These types of “explain the concept “problems are very popular in high tech companies. It tests not only how well you understand the concepts at a fundamental level but also how well you communicate your ideas effectively. These are not limited to mathematical problems only. For example, Microsoft asked me how I would explain the Internet to my grandparents. It is a lot harder than it seems. Keep your answers succinct and don’t babble. If the interviewer clues you to continue, then proceed to explain more. Don’t overwhelm your interviewer.

Know Your MATLAB

Quan: This one should be a no-brainer! Since you’re applying for a MathWorks position, you need to know how to work with MATLAB! Understand how to do basic things within MATLAB, have a good understanding of variable scope, and in general just know your way around the MATLAB environment. Know how to use basic commands, operators, vectorization, etc.

Dan: Since this is a phone interview, you won’t have to worry about performing calculations on your computer. And since MATLAB is only a portion of the interview, it’s unlikely they will give you an in-depth problem that takes more than 10 minutes. Most likely it will be some basic questions on MATLAB environment, functions, and scripts. If you still feel like you need to study, reading some of our blinkdagger MATLAB posts should be more than sufficient.

Computer Programming Concepts

Quan: To be perfectly honest, I pretty much failed at this portion of the interview. Many of the questions I could not answer correctly, but I got the basic questions correct at the very least. The MathWorks interviewers understand that some people might not have the Computer Science background so some of the questions they ask might be unintelligible. Just try your best!

At the minimum, you should know the basics of computer programming: Object oriented programming, pointers, constructors, destructors, and so on. If you don’t know too much about this area, I believe it is okay. I knew almost nothing about CS, but luckily they pardoned me.

Dan: Like Quan, I do not have an impressive CS background. But I do want to suggest three books which helped me greatly in preparing. Programming Interview Exposed is a great resource if there is some programming element in your interview. It contains many common programming interview questions and bring you up to speed in many of the key vocabulary and concepts. I probably didn’t walk away as a C++ expert, but I know how to handle a variety of programming interview questions. The book also contain other interview/career tips and brain teasers as well. I highly recommend reading this book.

If you do want to become more familiar with C++, the second book C++ Programming Language was recommended by my finite element professor. Definitely not a interview preparation book, but a very detailed C++ book if you ever want to learn C++ or use as a reference.

The third book How to Move Mt. Fuji is the classic book on tech company interviews. It doesn’t have to do with programming, but a lot these programming interviews have brain teasers. This book talks about the history of using brain teasers in interview as well. Although you may or may not get these fun questions in a MathWorks interview, working through them will help you think on the spot which is very important in any interviews.

Control Systems

Quan: Not all of you will choose this as your extra topic. But I believe the general idea is the same amongst all the topics. Just be sure to know the basics before you engage in the phone interview. The MathWorks doesn’t expect you to remember all this stuff from college, but they will quiz you on the basics and the fundamentals. So if you’re coming straight out of school, you’ll still remember most of this stuff and you’ll breeze through easily.

For control systems, the focus was on step responses, poles, zeroes, stability, first order systems, second order systems, damping, natural frequency, settling time, rise time, etc. If you understand the basics for these, then you should be okay.

Dan: Quan pretty much touched all the points. I just brought out my old engineering notes and looked over them. Study the basics, the fundamentals, and key relationships. Complicated and in-depth problems don’t really come into play during these phone interviews. Even in an on-site interview (whether MathWorks, Microsoft, McKinsey), you get about 1 complicated question at most per interviewer.

Sample Questions

Note: These are questions that we have made up ourselves, but will be useful in your preparation.

  1. What is the integral of [tex]y(x)=ln(x)[/tex]
  2. What is the limit of [tex]y(x)=5x[/tex] as x goes to 14? What does it mean to take the limit of a function?
  3. Given a function for velocity [tex]v(x)=5x^2+6x+3[/tex], what is the acceleration at x=5
  4. Given that A = [5 6;1 2], and B =[7 8; 1 3], what is A+B? What is A*B? What is A.*B?
  5. How would you find the average of a vector of values using MATLAB?
  6. How would you find the average of a 4×4 Matrix of values using MATLAB?
  7. How do you find the inverse of a Matrix in MATLAB? How would you do it without MATLAB?
  8. In MATLAB, how do you remove the last element of an array?
  9. In Computer Programming: What does it mean when a function is “overloaded”?
  10. When is it better to use an IF statement versus a CASE statement?
  11. Describe what object oriented programming is.
  12. Why are man-holes round?
  13. In regards to Control Systems, what is a time constant?
  14. What does it mean when a system exhibits damping? What happens to the time response when damping is greater than 1?
  15. How do you measure rise time?
  16. What are the conditions for a stable system?

Quan’s Thoughts on the Technical Phone Interview

The technical phone interview wasn’t too difficult, but it wasn’t exactly a walk in the park either. I spent enough time studying for the interview, but I can safely say that no matter how much I studied for the CS portion, I still would have gotten annihilated on that segment. I think I might have answered about 70% of the questions correctly, maybe more, maybe less.

On some of the questions, I had a difficult time figuring out what the interviewer was asking. In this case, it is always good to ask the interviewer to elaborate so there is no confusion.

I don’t know for sure how well (or horrible) that I did because my interviewer never gave any indication. So basically, you’ll be in the dark until The MathWorks decides to call back. Overall, the technical phone interview was not too stressful. I felt confident and prepared and as you already know, I passed the technical phone interview and was granted an on site interview.

Dan’s Thoughts on the Technical Phone Interview

I felt like I over prepared for the technical phone interview, but it provided a good foundation for the on-site technical interview. The last minute studying on C++ gave me a good boost on answering a bunch of programming questions. I felt pretty confident after the interview even though I made some silly mistakes throughout. Don’t get too bogged down or discouraged if you can’t ace every question. Stay positive and remember that you are not doing a written test, but talking to a person. Try to think out loud if your are stuck and keep communicating with your interviewer.

Quach_southpark2.pngsutoyo_southpark_resized.png

Quan and Dan are just two normal guys who happen to know a thing or two about MATLAB. Together, they team up to bring you the latest MATLAB offerings. They are a tandem just like peanut butter and jelly. Stockton and Malone. Jordan and Pippen. Samwise and Frodo.