This one was basically the same as another writeup I'd already seen about this company's process.
Round 1 was a project deep dive.
Round 2 was system design + coding, though the coding part was so small it felt kind of pointless. I originally thought the coding portion would take 45 minutes, but this second round actually leaned much more toward system design. They gave me a chat app setup, asked about the general functionality, and then had me design a system for a file upload feature. Some of the points I covered:
- You need a presigned URL so the client upload doesn't end up consuming the server's network bandwidth.
- When there are a lot of requests, you might use a queue to handle the ordering.
- How do you surface how long a file upload request is going to take?
- How does file parsing happen after the upload?
The actual coding part was only about ten minutes, and it was the same as what I'd seen elsewhere: write a class that adapts uploads across different cloud providers. Beyond just the upload itself, I also added a server-side ack_upload endpoint so the client and server can sync up after a successful client-side upload — that way Legora's backend ends up with a record of it.
Discussion
Loading comments…