I wonder why software companies these days take it for granted that professional software developers who code for a living would spend half a day from their schedule or work overtime for free.
Now, don't give me the argument that many developers do it anyway by writing open source code. That falls in the category of "volunteering". Working overtime and spending 4 hours on solving a toy problem is not volunteering.