I've worked as a software engineer in a couple of fields and most of the legitimately challenging tasks I've encountered where as a game dev. These usually stemmed from the severe resource constraints implied with real-time. A naïve solution can be trivial while delivering comparable results in orders of magnitude less time can be extremely hard, often requiring novel solutions. The sheer amount of fuckery required to make shiny things work on potato hardware is almost always underestimated.
Large scale crowd avoidance, as an essential feature, on meagre consoles with tight production schedules and a myriad other responsibilities still haunts me.
I've worked as a software engineer in a couple of fields and most of the legitimately challenging tasks I've encountered where as a game dev. These usually stemmed from the severe resource constraints implied with real-time. A naïve solution can be trivial while delivering comparable results in orders of magnitude less time can be extremely hard, often requiring novel solutions. The sheer amount of fuckery required to make shiny things work on potato hardware is almost always underestimated.
Large scale crowd avoidance, as an essential feature, on meagre consoles with tight production schedules and a myriad other responsibilities still haunts me.