Asana Coding Interview Questions
26 Asana coding interview problems with full optimal solutions — 15 easy, 10 medium, 1 hard. Every problem ships with multiple approaches (brute-force first, then the optimal), complexity tables for each, company-specific tips on what an Asana interviewer values, and a FAQ section.
Showing 10 problems of 26
- #15mediumfoundational
15. Course Schedule
Determine whether a set of courses with prerequisites can all be completed — Asana uses this exact graph-cycle-detection pattern when validating that task dependency graphs in a project remain free of circular blockers.
- #16mediumfoundational
16. Course Schedule II
Return a valid ordering of courses given their prerequisites — the same topological sort that Asana's backend runs when computing a linearized task execution plan for a dependency-heavy project.
- #17mediumfoundational
17. Number of Islands
Count connected land regions in a 2-D grid — Asana maps this directly to identifying isolated clusters of tasks or teams in a project dependency graph where no cross-team links exist.
- #18mediumfoundational
18. Task Scheduler
Compute the minimum CPU intervals needed to execute tasks with a cooldown constraint — Asana's scheduling engine faces this exact problem when rate-limiting repeated task-type assignments across a team's sprint.
- #19mediumfoundational
19. Merge Intervals
Collapse overlapping time ranges into a minimal non-overlapping set — exactly what Asana's timeline view does when rendering overlapping task blocks for the same assignee on a given day.
- #20mediumfoundational
20. Meeting Rooms II
Find the minimum number of meeting rooms required to host all meetings without conflicts — Asana surfaces this when its calendar-integration feature must allocate the fewest concurrent task-review slots across a team.
- #21mediumfoundational
21. Longest Increasing Subsequence
Find the length of the longest strictly increasing subsequence — Asana uses this DP pattern when computing the critical path of sequentially dependent milestones in a project's dependency chain.
- #23mediumfoundational
23. Min Stack
Design a stack that retrieves the minimum element in O(1) — Asana applies this auxiliary-stack pattern when tracking the minimum-priority task visible in a collapsible project section without rescanning the full list.
- #24mediumfoundational
24. Find Minimum in Rotated Sorted Array
Locate the minimum in a rotated sorted array in O(log n) — Asana applies binary search on monotonic-but-rotated data structures when quickly finding the earliest due-date task in a reordered sprint queue.
- #26mediumfoundational
26. Network Delay Time
Find the time for a signal to reach all nodes in a weighted directed graph — Asana maps this to computing the latest a notification will propagate across all team members in a project's dependency-notification chain.