Did the Figma OA and phone coding round a few weeks ago. Documenting this because I couldn't find good recent info when I was prepping.
The OA came first. Two problems, 90 minutes, HackerRank environment. Problems I got: A graph traversal problem involving a dependency tree. Basically topological sort with a twist where some nodes had weights. Leetcode medium-hard. I'd call it medium if you're fluent in graph stuff, hard if you aren't. A string manipulation problem that looked easy and had an edge case that will get you if you're moving fast. I almost failed it because I rushed.
After the OA, the phone screen was with an engineer, not a recruiter. 60 minutes. One longer problem with 2-3 follow-ups building on the same setup. They cared a lot about how you communicate while coding, not just the output. I was narrating and they were responsive, asking clarifying questions back. That felt like a signal they want.
Difficulty: mediums mostly, but the depth of follow-ups pushed into hard territory. If you can solve Leetcode mediums in under 25 minutes reliably, you'll be in good shape. If you're still getting tripped up by mediums, the follow-up questions will hurt you.
Language: I used Python, they had no issue with it. Someone in another thread used Go and said it was fine too.
One thing nobody mentioned: they don't just care about the optimal solution. At one point I mentioned a suboptimal approach I considered and why I rejected it. The interviewer literally said "good, we like seeing that thought process." So verbalize your reasoning, not just your solution.
Time from OA to phone screen: about 8 days for me.