Pretty much the entire industry has this problem, not just Chicago.
I see a lot of things in this thread that I won't repeat but here's a few things I have to add. I'm a mid-level guy with decent experience. I rarely code outside of work. I have quite a few unsuccessful interviews in my time, so take this as you will.
1) A resume doesn't mean anything. A Sr. QA guy at my last job had the perfect resume for the role and our tech stack. He turned out to be the single dumbest person I've ever met, clearly incompetent at all the things he claimed to be able to do. That wasn't just my opinion. It got to the point where the entire team was assuming if he found something wrong it was working fine. He stayed way longer than he should have because the manager who hired him didn't want to admit to making such a blaring error. Blind squirrels and nuts.
Also an important note on this that I don't see a lot is that you can't give feedback as an employer as to why you didn't hire someone because it's basically giving someone grounds for a lawsuit. The applicant will never know why, you always just get the "we decided to proceed with other candidates."
Plus, making an offer / hiring someone is a significant amount of paperwork, I'm told.
From the interviewer side, yeah, there's a lot of hard parts too. A question that has no business being asked can trip you up. I remember a company once asking me how I would fix a certain part of internal array logic (like, what makes arrays work) if I knew arrays weren't working. Up until that point (the first 5 interviewers) I had done pretty well, but I literally had no idea. I eventually mumbled something resembling the right answer after being guided to it.
Then there's the coding challenges. Some of these companies are putting the impetus of time on the developers, like if you really want to work here then do this 6-12 hour code challenge before we give you an onsite. It's like, well, maybe the person doesn't like to code when they get home from work having been coding all day. Maybe they're applying to 12 other jobs in the area and 3 or 4 of them have these different challenges. Is your company really that great that the applicant is going to do it? Your random fintech firm or wannabe upstart logistics company is just that appealing? Chances are, no, probably not. I assume employers keep this up because it basically means that anyone they're interviewing can put together something resembling code.