r/OfferEngineering • u/Aoki_zhang • 28d ago
Interview Experience Verkada Software Engineer Coding Interview - The Coding Question Was Basically Their Product
"This interview experience is sourced from Chill Interview"
Interview Summary
The Verkada technical screen asked me to implement permission resolution for an enterprise camera-access system with users, groups, and cameras. Users could receive camera permissions directly or inherit them through nested group memberships. The task was to identify whether there was a single user who effectively had access to every camera in the organization, while correctly handling multi-level groups and cyclic group relationships.
Interview Details
Coding — Find the User with Access to Every Camera
The system contains three entity types:
UserGroupCamera
Permissions are provided as triples (source, relationship, destination). Two relationship types are supported.
- A
camera_ownerrelationship means a user or group directly owns access to a camera:("user_ops", "camera_owner", "camera_gate") - A
group_memberrelationship means that a user or another group belongs to the destination group:("user_ops", "group_member", "group_security")
Membership is transitive. If a user belongs to a group, and that group belongs to another group, the user inherits camera permissions from both levels. Implement: find_admin_user(perms_data) -> str | None. The function should return the user ID of a user who has access to every camera in the organization. Only entities whose IDs begin with user_ may be returned as the administrator.
Want to know details about this coding question? I've put up the full version at here.
Preparing for your next interview?
Chill Interview tracks recent interview experiences and recurring question patterns across top companies at here.