# Python Interview with a Microsoft engineer

#### Watch someone solve the sneak to exit grid with guards and obstacles problem in an interview with a Microsoft engineer and see the feedback their interviewer left them. Explore this problem and others in our library of interview replays.

Sneak to Exit Grid with Guards and Obstacles: Python Mock Interview - YouTube

[Sneak to Exit Grid with Guards and Obstacles: Python Mock Interview](https://www.youtube.com/watch?v=o3W3jWVPKnk)

### Interview Summary

**Problem type**  
Sneak to Exit Grid with Guards and Obstacles  
**Interview question**  
Write a function:

```python
public isPassable(board: string[]): boolean;
```
that, given an array `board` consisting of N strings denoting rows of the array, returns `true` if is it possible for the player to sneak from their current location to the bottom-right cell of the board undetected, and `false` otherwise.

### Interview Feedback

**Feedback about Hot Elephant (the interviewee)**

**Advance this person to the next round?**  
Yes  
**How were their technical skills?**  
4/4  
**How was their problem-solving ability?**  
3/4  
**What about their communication ability?**  
4/4

> **Strengths and what went well:**
> On the problem-solving part, I liked that you took the time to parse the task and come up with an example early to validate your thinking. Always use an example even if you know the solution initially; it will help you slow down and spot any edge cases.
> You broke down problems into phases which showed clarity in your thinking. You chose to do the recursion for DFS and was able to explain how it works in the code very quickly.
> On the coding part, this went above my expectations. You have experience in Python and was able to code the whole task (which is large) in 19 minutes. You even had time to check your solution at the end. I loved that you cared about code structure even under time pressure, demonstrating actual dedication to the craft of coding.
> For areas for improvement, nothing major:
> - During coding, ask the interviewer whether to validate the input. It shows real-world project experience.
> - Practice estimation a bit. Perhaps your O(N^3) was a one-time mistake; just make sure that is not a pattern. My tip here would be to run through an example to verify. In your case, you would quickly see that the complexity is O(N^2).
> Good luck with your interviews!

**Feedback about Stateless Donut (the interviewer)**

**Would you want to work with this person?**  
Yes  
**How excited would you be to work with them?**  
4/4  
**How good were the questions?**  
4/4  
**How helpful was your interviewer in guiding you to the solution(s)?**  
4/4

### Interview Transcript

Stateless Donut: Hello.

Hot Elephant: Hi there.

Stateless Donut: Hey, can you hear me?

Hot Elephant: Yes, perfectly. Can you hear me?

Stateless Donut: Yes, I can hear you. Alright, how are you doing?

Hot Elephant: Good, good. How's everything going?

Stateless Donut: Pretty good. So, the app is telling me that you are interviewing for Microsoft as an intermediate engineer.

Hot Elephant: Yeah, that's correct.

... (Truncated for brevity) ...

Stateless Donut: Alright and depending on how much time do you have like three minutes?

Hot Elephant: Yeah, just let's just wrap up the find exits. I think your, oh is the find exit done? Okay.

Hot Elephant: Yeah, I just copied and pasted from what I did up here and yeah.

Stateless Donut: Just read through it.

Hot Elephant: Then okay. Row Column R C Isn't this or it's out of bounds or it isn't visited return false. If this equals to c and Yeah.

... (End of Transcript) ...

> Overall problem solving went well. Coding went amazing — better than problem-solving. I would give you a hire for problem-solving, but coding is above the bar of what I expect: you were able to code this thing in 19 minutes. You have experience in Python, and it shows. This went really smoothly. One tip for you during the interview, ask your interviewer whether you should validate the input arguments or not because, like for this case, it was assumed that everything is correct. But you should ask the question. It shows that you're thinking about everything.
