This phone screen was also a pretty fun round! I'm happy the interviewer was really collaborative and we could work like colleagues on a fun problem! No AI allowed in this round
The Problem
You have a standard 4 way intersection (think the shape of a "plus"). You need to design a traffic light system. No starter code provided, just the requirements:
- Assume a standard traffic light system (red, yellow, green)
- A technician that maintains the traffic lights should be able to control the duration of yellow and green
- You need to implement a function that takes in num_ticks which is positive integer and for each "tick", output the light color for the traffic lights in the intersection.
- Anything you'd expect in a real traffic light system is fair game and should be accounted for. Do communicate your assumptions though
The expectation
- Don't focus on time and space complexity here like you'd do in a leetcode problem.
- You should optimize for writing readable, maintainable, and extensible code like you would in a real engineering setting
There were no extra parts! The only followup I got asked was "how would you improve the code prior to submitting it for review?". It was a good discussion heree
Insights
- Overall really liked this round. I felt very relaxed and I kept communicating my assumptions based on real world understanding to the interviewer.
- The interviewer was SUPER NICE! He was very patient and was listening to what I said instead of "scrolling reddit in the background"
- Take the time to think about your interfaces and data representation! Don't just jam all your data into gigantic tuples. Use OOP and pick a language you're most comfortable with. This is not the time to flex that you "learned how to print hello world in Rust"