I spent a large chunk of my career at DreamWorks Animation, where I worked as a technical director & software engineer. Writing software in feature animation is somewhat different than writing software at a tech company, and hard to learn about if you aren’t already in the industry, so I figured I’d write this as a note for others. Please note that I can only speak to my direct experience at DreamWorks Animation and Spire - while I spent quite a few years there, that’s only two studios; software engineering at other studios could be quite different.
Working at a studio as an engineer is pretty cool. Your customers are (usually) internal. Pre-COVID, this usually meant that at least some of them worked on the same campus as you. Your customers are also (usually) artists, an incredibly creative bunch who make for very fun users. Finally, there’s (usually) a strong company drive to improve technology, so that artist can push the look further and maybe even get to explore more creative choices.
While studios use web and cloud technology, there’s also a lot of interesting challenges in graphics. Feature animation is the culmination of a host of artistic disciplines, and most of those disciplines face tough technical challenges. It’s one of the few places that a software engineer could make a career out of writing software to create explosions without being part of the defense industry.
Software in animation can be very performance sensitive; the common wisdom is that the more iterations an artist can get in on a unit of work in a set amount of time, the better chance they have of finding the right creative choice. Key to those iterations is fast, responsive software; DreamWorks famously wrote Premo and OpenMoonray to accelerate animation and rendering, respectively.