Got the online assessment from CrowdStrike last month for a software engineer role. Sharing notes because I couldn't find anything recent about the format.
Format: HackerRank platform, 90 minutes, 3 problems.
Difficulty breakdown: Problem 1: easy/medium. Felt like a warm-up. Mine was array manipulation with some edge cases. Problem 2: medium. Graph or tree traversal. Mine involved finding paths meeting certain criteria, fairly standard. Problem 3: medium-hard. This one required more thought. Mine was a simulation problem that had a security-ish flavor, like tracking process trees. Not pure LC grind, more applied.
90 minutes for 3 problems is a bit tight if you're not comfortable with your language of choice. I used Python. The auto-complete and editor in HackerRank is fine, nothing special.
They say any language, and I believe them. Didn't see any indication they penalized Python vs. C++, but if the role is kernel-adjacent I'd probably write C or C++ if you're comfortable, just for optics.
A few things I noticed: Edge cases matter. One problem had a subtle input constraint that changed the approach. Clean code > fast code. I left in some comments explaining my reasoning and got positive feedback on that in the debrief. There is a debrief. A recruiter called to go over results, not just a pass/fail email. They mentioned the third problem specifically.
The OA felt less like LeetCode grind prep and more like someone picked problems that vaguely relate to the kind of data processing you'd actually do. Still prep algorithmic fundamentals. Just don't expect a pure LeetCode hard randomly.