Skip to content
DevMeme
1627 of 7590
Microsoft Post #1820 · source on Telegram

The Microsoft Interview and the UI Thread Paradox

Description

A six-panel comic strip depicting a job interview. In the first panel, an interviewer asks the candidate, 'Where should you perform heavy load, store, & processing tasks?'. In the second panel, the candidate correctly and confidently replies, 'Certainly not on the Main UI thread'. The following three panels show the interviewer pausing, looking at his notes with a stern expression, creating a moment of tension. The final panel is the punchline: the interviewer is chasing the candidate out of an office with a prominent 'Microsoft' logo on the wall, yelling 'get away from here'. The humor is a satirical critique of a perceived historical tendency in Microsoft's older desktop frameworks (like WinForms) where blocking the UI thread was a common cause of frozen, unresponsive applications. The joke is that the candidate, despite giving the technically correct answer by modern standards, is rejected precisely because that best practice runs counter to the supposed 'Microsoft way' of the past. It's a relatable joke for senior developers who have dealt with the pain of unresponsive GUIs

Comments

7
Anonymous ★ Top Pick He should have answered, 'On the UI thread, but wrapped in a try-catch block that just sets the cursor to a spinning wheel indefinitely.' He would've been hired on the spot
  1. Anonymous ★ Top Pick

    He should have answered, 'On the UI thread, but wrapped in a try-catch block that just sets the cursor to a spinning wheel indefinitely.' He would've been hired on the spot

  2. Anonymous

    Told the Microsoft interviewer I’d push the heavy lifting into Task.Run and marshal UI updates via Dispatcher - turns out the “correct” answer was “hand it to Azure and finance will figure it out,” so I got a 308 Permanent Redirect straight to the parking lot

  3. Anonymous

    After 20 years of preaching async/await and background workers, Microsoft still ships apps that make the UI thread look like a single-core Pentium trying to mine Bitcoin while rendering 4K video - but at least their interview candidates know better

  4. Anonymous

    The real irony here is that Microsoft is throwing out someone for suggesting proper threading practices - meanwhile, every Windows user has experienced the dreaded 'Not Responding' dialog because some application decided the main UI thread was the perfect place to parse a 500MB XML file. It's like being rejected from a fire safety job by the company whose building is currently on fire. The candidate's answer is textbook correct: heavy I/O, computation, and data processing belong on background threads or in async operations to keep the UI responsive. But apparently, at Microsoft, acknowledging this fundamental principle of GUI programming is grounds for defenestration - which, given their history with Windows, is perhaps the most on-brand response possible

  5. Anonymous

    Main-thread I/O converts the Windows message pump into a backpressure seminar, otherwise known as the 'Not Responding' UX

  6. Anonymous

    MSFT's UI thread: one ring to rule them all, one freeze to bind them

  7. Anonymous

    At Microsoft, saying “never on the UI thread” gets you escorted out by COM’s STA and a couple of modal dialogs - SynchronizationContext will handle the deadlock paperwork

Use J and K for navigation