Overall, very positive experience - the company clearly knows what they want and do not require you to jump through unclear hoops before making a decision.
Stage 1 - short (15-20 minutes) phone screening. Involves short introduction and several rapid-fire theoretical technical questions on OOP and RDBMS concepts and terminology - fairly basic stuff. If you have solid college-level understanding of theory you should not have trouble answering.
Stage 2 - 2 hour coding exercise. Best part of the process - instead of performing a random leetcode problem, you are doing what is essentially a pair-programming session with several different engineers. You get to demonstrate how you think and collaborate with others in a manner that feels authentic to how you normally work. The difficulty is pretty average - you are expected to understand C# class design basics and at least basic Data Structures and Algorithms (I implemented BFS at one point, for example).
I got an offer within a week after the second interview.