Perguntas reais
Use este recorte para sair do estudo genérico e praticar com exemplos que já apareceram em processos reais.
Reunimos aqui as perguntas públicas já associadas à Apple para te ajudar a estudar com mais contexto, entender o tipo de cobrança e priorizar melhor sua preparação.
Use este recorte para sair do estudo genérico e praticar com exemplos que já apareceram em processos reais.
Veja rapidamente quais tipos de pergunta aparecem mais e organize seu treino com mais intenção.
Depois de estudar esta empresa, compare com empresas parecidas para evitar preparação estreita demais.
Use esta página como ponto de partida para estudar a empresa. O ideal é praticar essas perguntas e depois expandir para variações parecidas.
Prepare histórias concretas com contexto, ação e resultado.
Prepare histórias concretas com contexto, ação e resultado.
Design a social media feed system that generates and populates personalized feeds for users on platforms like Twitter, Instagram, or Facebook.
Treine requisitos, arquitetura e decisões de escala.
Design a URL shortening service similar to TinyURL that allows users to convert long URLs into short, shareable links and manage their shortened URLs.
Treine requisitos, arquitetura e decisões de escala.
Design a rate limiting system that can control and throttle API requests to prevent system overload and ensure fair resource allocation. The system should be able to handle distributed scenarios, track requests across multiple servers, and enforce limits per user/client or between internal services to prevent abuse and maintain system performance.
Treine requisitos, arquitetura e decisões de escala.
Implement an LRUCache that supports O(1) average-time get(key) returning the value or -1 and put(key, value) which inserts or updates a key and, if capacity is exceeded, evicts the least-recently-used key. The core challenge is maintaining key-value storage together with recency ordering to enable constant-time access, updates, and eviction.
Estruture solução, trade-offs e complexidade com clareza.
Given a list of meeting time intervals, determine the minimum number of conference rooms required so that no meetings overlap. The core challenge is computing the maximum number of concurrent intervals (e.g., via sorting with a min-heap of end times or a sweep-line of start/end events).
Estruture solução, trade-offs e complexidade com clareza.
Design a ticket booking system like Ticketmaster that handles high-traffic events, supports both seated and general admission tickets, and manages scenarios like flash sales with limited inventory and concurrent users.
Treine requisitos, arquitetura e decisões de escala.
Check whether a string of parentheses/brackets is valid by ensuring every closing bracket matches the most recent unmatched opening bracket and the types and nesting order are correct. This is typically solved by tracking openings (e.g., with a stack) and verifying matching pairs.
Estruture solução, trade-offs e complexidade com clareza.
Design a time-based key-value store that records multiple values per key with timestamps and returns the value whose timestamp is the largest <= the queried timestamp. With timestamps per key strictly increasing and up to 2e5 operations, the typical solution uses per-key ordered timestamp/value lists and binary search to find the floor timestamp efficiently.
Estruture solução, trade-offs e complexidade com clareza.
Given numCourses and prerequisite pairs, return any ordering of courses that satisfies all prerequisites or an empty array if impossible — this is essentially computing a topological sort of a directed graph and detecting cycles.
Estruture solução, trade-offs e complexidade com clareza.
Prepare histórias concretas com contexto, ação e resultado.
Design a location-based service like Yelp that allows users to search for nearby businesses using latitude/longitude coordinates, with support for global scale and high query volumes.
Treine requisitos, arquitetura e decisões de escala.
Simulate a Snake game on an m×n grid supporting move(direction): the snake advances, grows when it eats sequentially placed food (increasing score), and the game ends on collision with walls or the snake's own body. Candidates should track the snake body and occupied cells efficiently for frequent moves (e.g., deque + hash set) and handle food lookup and collision checks.
Estruture solução, trade-offs e complexidade com clareza.
Design a calendar application that allows users to create and manage meetings, send invitations to participants, and handle invitation responses (accept/reject).
Treine requisitos, arquitetura e decisões de escala.
Given a list of intervals, merge all overlapping (including touching endpoints) intervals and return the minimal set of non-overlapping intervals that cover them. Key pattern: sort by start and sweep/merge adjacent ranges whose starts are <= current end.
Estruture solução, trade-offs e complexidade com clareza.
Design a logger system that receives messages with timestamps and only prints each message if it hasn't been printed in the last 10 seconds, with support for multiple applications and search capabilities.
Treine requisitos, arquitetura e decisões de escala.
Find the minimum day such that you can form at least m bouquets, each requiring k adjacent flowers that have bloomed (return -1 if impossible, e.g., when m*k > n). This is typically solved by binary searching the day and greedily scanning for k-length contiguous bloomed segments to check feasibility.
Estruture solução, trade-offs e complexidade com clareza.
Given a string s and integer k, repeatedly remove any run of k equal adjacent characters until no more removals are possible and return the final string. The core challenge is to handle cascading deletions efficiently by tracking consecutive character counts (often via a stack of character-count pairs) rather than rescanning the string.
Estruture solução, trade-offs e complexidade com clareza.
Implement job scheduling algorithms including both First Come First Serve (FCFS) and priority-based approaches. The solution should handle job submissions with start times, end times, and priorities, and output the execution schedule with appropriate timing details.
Estruture solução, trade-offs e complexidade com clareza.
Design a system that allows users to schedule events and processes them at specified times. Focus on the event staging architecture, including how events are queued, stored, and transitioned from scheduled state to active processing.
Treine requisitos, arquitetura e decisões de escala.
Simulate a robot on an infinite grid executing turn commands and unit-step moves, stopping any step that would hit an obstacle and updating its facing direction as instructed. Use fast obstacle lookup (e.g., a hash set) while stepping through commands to track and return the maximum squared Euclidean distance from the origin reached.
Estruture solução, trade-offs e complexidade com clareza.
Prepare histórias concretas com contexto, ação e resultado.
Design a hit counter that records timestamps of hits and returns the number of hits in the past 5 minutes (300 seconds). The challenge is to support high-frequency record and query operations efficiently by maintaining a sliding-window summary (e.g., queue or fixed-size circular buffer) that discards expired hits.
Estruture solução, trade-offs e complexidade com clareza.
No app você amplia a busca com mais perguntas, compara empresas parecidas e continua a preparação com filtros mais precisos.