Interview process consisted of two phone interviews (this was a remote work position) a request for prior work samples, and a developers test. Phone interviews took a total of perhaps 1.5 hrs. A few aspects of the possible project on which I might be working were explained and general information on how the company worked was discussed. Specific qualifications were discussed as well as ad hoc "bonus" qualifications that made me a good fit for the position. I had to scrape together code samples. Working for most companies, the code I write belongs to them, and thus I am not allowed to share it, so there was not much I could give them. Then there was the developers test, which will take up the bulk of this comment.
The developers test was an anomaly. It consisted of a project that was to be retrieved from the companies Team Foundation Server source control onto a VM at their office accessed via Remote Desktop. The task was to create a search page in an established web project to query the database for data, and display it in a table with some modifications to the data (formatting of names/phone numbers, changing color of svg icons, etc). The work (because that is what it was) was to take an estimated 6-8 hours, and according to the hiring manager if it met with approval, I was to be paid for my effort.
The work conditions for this "test" were not particularly conducive to speedy efficient work. The VM was exceedingly slow, the RDP session could not be spanned across multiple monitors (a must for most development, especially web development), the solution being worked on was by far the largest solution I had ever seen (132 projects; 480 MB of just source code). The initial session of implementation took me around 10 hours. I was advised to check my changes in. This gave me pause. I am checking in my test response to source control. One a live project. I was performing work for them, not just taking a test. The earlier assertion that I could be paid for this is moot. Their approval is required for payment. If I "fail" the test but implemented good code, I still would not be paid.
Long story short, I committed to source control, and was advised that there were some edge-case bugs and a instance where there was no functionality at all on one persons machine. I started by fixing a few of the bugs, and eventually decided not to pursue employment with the company. This was not a test, it was a cheaply implemented feature in a live project that might result in my hiring. Over a nearly two week span (there was some difficulty communicating with the POC due to a product release) I burned between 16 and 18 hours on this "test". Tests, as a general rule, do not produce anything. They are designed to evaluate understanding of one or more topics or check the validity of a situation, not create anything usable. Math tests, English tests, engineering tests. None of these create a new mathematical formula, publishable essay, or bridges for foot traffic. They might lead to that down the line, but the test produces nothing outside of a general answer to the question "Does this person understand the concept X?". The above was not a test per se, but rather work that I may or may not be paid partially for that might also incidentally answer that question.