This was my OpenAI software engineer technical screen, adding a recent data point.
The coding problem was GPU Credit. I had seen a similar question before, so I finished it almost immediately.
The task was roughly to implement a GPU-credit or resource-credit system that supported:
- Granting a quantity of credits with activation and expiration times.
- Subtracting or consuming credits at a particular time.
- Getting the available credit balance at a particular time.
The main point was that credits had validity windows and expiration, while operations might not arrive in strict timestamp order. Historical grants and usage therefore had to be handled correctly. The core was event replay together with expiration and credit-consumption processing. Because I had prepared this question before, I completed the coding quickly and the follow-ups went smoothly.
The system design felt like a new question, or at least one I had rarely seen in the common OpenAI interview experiences I had collected.
It was similar to designing Google Photos or a photo-storage service.
The core functions were simple: upload an image, download or view an image, and delete an image.
However, the interviewer added a clear SHA-256 hash requirement, so the design had to cover image upload and object storage, metadata storage, how to calculate and store the hash, how to handle images with the same hash, consistency and failure recovery along the upload path, coordination between metadata and the blob lifecycle during deletion, large-file uploads, concurrent uploads, and reliability.
The rest of the discussion went deeply into those areas. It did not feel like chess, payment, or continuous integration and delivery, where many established patterns already exist. It leaned more toward storage systems and required building the design step by step from the requirements.
My impression was that the coding portion was fairly standard. The system design tested real-time requirement clarification, storage abstractions, consistency, and failure handling more than memorization of an existing architecture.
Additional note, August 23, 2026 at 4:08 a.m. UTC+8: The general software engineer role seemed to be oriented toward identity, payments, or finance, but my interviewer was not from that area.
Additional note, August 25, 2026 at 11:21 a.m. UTC+8: The GPU Credit follow-ups were complexity analysis and production optimization, specifically how to avoid recomputing from time zero.
Discussion
Loading comments…