Our employee interview series may have gone silent for a spell, but we're not done introducing you to the team or giving you the inside track into the gaming industry. Up this week is our graphical femme fatale, Natalya Tatarchuk. We can't tell you exactly what she's working on - it's beyond classified - but she's more than willing to talk shop, talk about her industry experience, and deliver the tips and tricks anyone inspired to take on graphical engineering at Bungie should commit to memory.
Q. Who are you and what do you do at Bungie?
A. I am an engineering architect at Bungie, working on the next-gen rendering engine and graphics-related technologies for our upcoming games.
Q. How long have you been a software engineer and how did you first become interested in the field?
A. Graphics has been my passion for as long as I can remember, ever since I did my first project back in high school. At the time, I thought it would be really cool to figure out what kind of creatures would be able to survive and thrive on Mars. So after finding a resilient enough bacteria to deal with the frigid weather of the Red planet, I put together a simple computer simulation of their population growth in those delightful conditions, visualizing the little creatures on the screen. That foray neatly led me to take an intro to graphics course in college.
After five days and five nights straight of subsisting on Power bars and cherry Jolt while working on a scanline rasterizer (and forming a few friendships to last the lifetime), I was thoroughly hooked. By the end of that course I ended up founding a graphics group at my university with a buddy of mine, and from that point onward pretty much lived and breathed all things graphics. After college I did a few stints in the microchip industry, 3D haptic modeling, working on various graphical elements in each place. Finally, just before coming to Bungie, I spent a good few fun years creating the eye-catching state-of-the-art technology
demos and
research at ATI.
Q. Would folks be familiar with any of that work?
A. Those who are proper graphics geeks would likely have seen some pixels touched by me in the
ATI demos for the last 5+ years. I really enjoyed putting together the visuals of a noir-style rainy city corner in the
ToyShop demo. Working on the little industrious yet whimsical
Frog goblin creatures who mine gold, snack on mushrooms and drink sake before they pass out was also way too much fun! And that’s just select few!
Q. How did that all of that work lead you to Bungie?
A. I was a fan of Bungie for a long time and was always in awe of the games the studio produced, as well as the high caliber of talent in the studio. While working at ATI I’ve been fortunate enough to get to know a few Bungie engineers directly. They consistently impressed me with how thoughtful and thorough they were, and the great sense of humor everyone here possessed. Last year, as I was putting together my yearly
course on real-time graphics advances in games for Siggraph, I invited Hao Chen, a senior graphics architect at Bungie, to participate. Talking to him further solidified my impression of Bungie as the place to be, so eventually I found myself there and never looked back!
Q. Your bio notes that you have degrees in Computer Science and Mathematics with a minor in Visual Design. How do those three fields interconnect when it comes to making video games?
A. Visual aspects of video games are front-n-center to the player, and, that, of course, relies heavily on computer graphics. Graphics itself is the perfect amalgamation of hardcore math, deep abuse of ones and zeros via programming, and gorgeous imagery. Well, that just described exactly what I studied in college! I’ve always been a very visual person, yet found beauty not just in art, but also in the abstract grounds of mathematics. Pursuing all of my interests professionally just seemed a natural extension of having fun. I also find that it helps to be able to "eat your own dog food", so to be a graphics programmer in my book means having familiarity with the art tools and techniques on a more personal level.
Q. A lot of people probably don’t equate a game’s visuals with the 1’s and 0’s under the hood. How important is software engineering to the overall visual presentation of a title?
A. Hugely. If we break down the timings for any game, a large chunk of the milliseconds of each frame goes to rendering. And it’s not because we, the graphics programmers, are greedy or lazy – not at all! Simply put, getting pretty visuals has become a much more intricate task than it used to be. Now the games’ worlds are much richer, beautiful and complex. So besides "making it work" and making the game look good, we also need to make sure that it runs fast and can handle the huge environments and hordes we throw at it. Excellent performance is crucial. None of that is possible without solid software design.
Q. What are some differences you’ve found in working at a graphics technology shop and working for a gaming studio?
A. The biggest immediate noticeable difference to me is the sheer amount of amazing artists that are creating visual glory right beside you. The graphics technology group I was at previous to Bungie was primarily focused on technology, and, even though the artists we worked with were wonderful in their own right, they were few. A proper AAA gaming studio is, of course, in large part distinguished by the outstanding talent of the artists and designers that are there, and working with them has been so much fun and such a privilege.
Additionally, the games are much more dynamic than demos on average, and thus have a different set of requirements and constraints. The techniques that you develop will be abused by everyone in the studio and millions of people playing the game, and that’s simultaneously a daunting and a scintillating feeling.
Q. How much of your work at Bungie involves the application of existing technology and how much of it involves pioneering new techniques? Do you find both aspects rewarding?
A. I personally find both research and production aspects of my job rewarding. Currently I am focused on investigating next-gen technology, but I am also using some of my time to put in techniques into our upcoming game. Practically speaking, we will have phases where there is a stronger emphasis on coming up with ground-breaking techniques and there will be phases where the focus is on shipping – and that’s healthy and a good thing! It’s good to be grounded. However, even in the most development-oriented phase, there are plenty of challenging and interesting problems to be solved, so the fun doesn’t end in pre-production.
Q. What would you say to a budding software engineer who’s looking at making games as a great way to apply, explore, and evolve their talent?
A. This is probably what you already heard but just in case you didn’t - get passionate about whatever it is you want to do and stay hungry for more knowledge! Never be satisfied with what you already know. There is always an opportunity to learn more and to improve your skills, and that’s only achieved through doing. There is a reason why the most talented musicians always say "practice makes perfect." Same is true for any discipline. Read, learn, expand your mind and never stop doing that. And more specifically, there are a huge number of resources on the interwebz for staying on top of what’s happening in your field, so stay current.
Q. How important is it for a development studio to have a team of seasoned software engineers?
A. I believe that is the most distinguishing feature of a true AAA house is the strength of all their departments. Having a solid team of rockin’ engineers that have talent, knowledge and practical experience is crucial. It’s not enough to think up an idea, it also needs to be implemented and pushed into submission, tested through fire and water, and consumed by other disciplines (such as art and design).
Q. How important is it for a development studio to invest and create new technologies and new talent?
A. Incredibly so. Obviously, shipping a kick-ass game on schedule is king. However, it’s important to find new technologies that can improve gameplay and user experience, as well as streamline content creation processes that the studio uses for creating the game. The easier the artists and designers can iterate on content, the better the resulting game will be. So that’s a pretty good driving force behind innovation in game studios. However, balancing the goals of cutting edge research, technology adoption and adhering to schedule can be quite tricky. But the successful studios continue to walk that tight rope just fine!
Q. What compels you to step outside of the studio and invest your energies into the yearly graphics course and seminar at Siggraph?
A. I believe that by sharing knowledge we push the industry forward faster, better, stronger. It’s easy to focus just on the immediate goals at hand - the next milestone, the next deliverable. But we also need to be aware of what’s coming down the pipe, to share the creative approaches from other studios, so that we don’t end up reinventing the wheel. There are so many interesting problems to be solved, that we don’t need to get our kicks by re-doing the work that’s been already done!
At the time that I started organizing my yearly graphics course at Siggraph, there was little sharing of the graphics techniques from games at Siggraph. Some of game developers work was published in select book series, and some presented at the yearly Game Developer conferences. But none of that was typically accessible to the research community, and, as the result, they often weren’t aware of the innovations done in the games arena. At the same time, the research community was quite interested in video games and was starting to target their research toward that audience (rather than film, for example) – without necessarily knowing the constraints of game development. That sometimes resulted in algorithms “designed for video games” yet which were impractical in reality (who has access to multiple GBs of VRAM on consoles, for example?).
I wanted to bridge the two worlds by creating a new venue for sharing innovations from game developers and research community which would be accessible to both. I also wanted to encourage practical research that is useful for games. The course started out as a one-time event, and as it was extremely successful, we were invited back by the conference organizers the next year. Now we’ve been running for over four years, and counting. So that’s very exciting! If you want to check out this year’s content, take a look at the course
here.
Q. Do you see video game developers as pioneers of new software engineering methods and visionaries of new technology for other fields, or is game development more about utilizing existing technologies in inventive and industrious ways?
A. A healthy mixture of both. Right now, games are driving software complexity forward at a much higher pace than any other software, due to the sheer number of systems that comprise "your average game." This complexity inevitably drives innovation. Software algorithms in games are also stressed by millions of players, as well as by the content creation and designer folks, which often will use the algorithms in very creative and unexpected ways. :) This awesome "stress-test" also serves as a great “push” for new methods and approaches.
However, as I’ve mentioned earlier, we still have to ship on-schedule. This means that whatever research and innovation that happens in-house needs to be ultimately productive and practical. So, in general, game developers won’t be doing completely "pie-in-the-sky" research, but, rather, come up with focused, applied innovation. What we also hope to provide is plenty of problem sets and challenges to help guide research goals for the more academic folks to solve, as they don’t necessarily need to be constrained by production needs, and therefore can break paradigms and approach these problems in completely different ways. Not that game developers don’t routinely do that, but there’s more leeway in academia since the nature of that work is to research without constraints. What we do in games is much more applied in its very nature.
Q. How much of a software engineer’s role at Bungie is about being trusted to create solutions on your own and how much of it is a collaborative, “think tank” affair?
A. Since the very first day here I’ve been consistently amazed at that process here – people here are very open and friendly but also extremely passionate about what they do. Everyone is excited to listen to other people’s ideas and to discuss new designs. That’s rare. Every engineer here is expected to be able to pave their own way. But, at the same time, no one works in isolation. Even the office environment itself, which is designed to be very open and dynamic, is structured to encourage frequent and easy collaboration, and not just among engineers, but across all disciplines. Communication is very important to the overall success of any project, any time it involves more than one person. That means that even when designing a system individually, we eagerly start conversations with the other engineers or artists or designers (or all at once) to solicit feedback. I personally find that it’s optimal to blend brief bursts of solitary work with wider discussions, because you need to be able to think the approach through before you start abusing other folks with your thoughts. But once you have, it’s a lot of fun to get other people’s perspectives. Getting perspective which is different than your own can be the best thing for your design in the end.
And that's the end of this interview. Big thanks to Natalya for stepping up and giving us some of her perspective and insight into her own role at Bungie and the industry at large. If you've just poured over her every word and you want to be part of the team responsible for the graphical prowess at Bungie, you should head over to our
Career Opportunities page and keep on reading. We're hiring.