Did the HackerRank OA last month for a mid-level SWE role. Sharing the format because I searched for this and found almost nothing current.
Format: 90 minutes, 2 coding problems.
Problem 1 was arrays/strings. Specifically it involved finding the longest substring meeting some condition. Medium on LeetCode, probably 2 out of 5 stars. If you've done 50 or more medium problems on LeetCode this is not the stressful one.
Problem 2 was a graph problem. Shortest path variant with some additional constraints on which edges were traversable. Again medium difficulty, not hard. BFS/Dijkstra depending on how you read the constraints. I used Dijkstra and it passed all test cases.
No SQL, no system design, no debugging-given-code problem. Pure algo.
Stuff that mattered: Time management. 90 minutes for two problems sounds like plenty but the problem statements were long and a little convoluted. Spend real time reading carefully before coding. I almost implemented something wrong on P1 because I misread the constraint.
Edge cases. I got dinged on one partial test case that was an empty input. Classic. Check those.
Language: I used Python. No restrictions stated, most candidates probably use Python or Java given the environment they're targeting (heavy Java shop internally).
What I'd tell past-me: The OA is not the hard part. The technical phone screen after it was harder, more open-ended. The OA is basically a filter for people who haven't touched any data structures in 6 months.
Worth noting: they do seem to share results from the OA with the interviewers. My phone screen interviewer referenced that I'd solved both problems, so it's not just a pass/fail gate.
Good luck. BNY's process is long but not brutal.