Google·Software Engineer·Onsite - System Design / Architecture
May 2026
System design round at Google for a software engineer role. The question was a big one: design a full collaborative code notebook service end to end, including execution, proxying, custom JAR uploads, and all the REST API plumbing. Walked away feeling like I covered maybe 70% of what they were looking for.
- Design a collaborative, editable code notebook service where users can upload custom JAR files with a fully qualified class and method name, submit execution requests with arguments, and retrieve results through a proxy. Define the REST API endpoints and request/response schemas for uploading code, submitting executions, fetching logs and results, and cancelling jobs. Also discuss sandboxing, dependency management, resource limits, concurrency, and result streaming.
“This was a lot to hold in your head at once.” The rest of the author's notes on Software Engineer interview at Google, Onsite - System Design / Architecture round, covers how they worked through the question, what the panel pushed back on, and what they would do differently.
View Post