в вашем браузере.
BlizzCon 2019 Panel: CodeCraft: Exploring Blizzard Engineering
02.11.2019 в 19:16
We've got coverage of the CodeCraft: Exploring Blizzard Engineering panel here at BlizzCon 2019! Join experienced Blizzard Engineers to ask questions about how your favorite Blizzard games are created. Covers some more technical aspects of making video games at Blizzard Entertainment.
Rachelle Davis, Lead Features Engineer, New Project
Matt Yan, Software Engineer, World of Warcraft
John Heuerman, Lead Tools Engineer, Diablo 4
Jesse Blomberg, Lead Server Engineer, Overwatch
Nathan Brown, Senior Software Engineer, Battle.Net and Online Products
Anna Roseberg, Associate Software Engineer, Battle.Net and Online Products
Q: How did you get to Blizzard?
Anna: Grew up playing Blizzard games, went to school for game design and development, got an internship at Blizzard Austin and then full time.
Nathan: Started in Customer Service at Blizzard, transitioned over to QA, later transitioned over to Dev Portal team, making tools since then.
Jesse: Went to college for computer engineering, friend had a job at Blizzard and put in the good word, WoW team as a tools engineer.
John: Wandering around Irvine, saw the Blizzard campus, applied that weekend and started work there.
Matt: Played WoW as a child, did some programming in high school and enjoyed it, only ever wanted to work at Blizzard, junior year got a Blizzard internship and got a job out of that internship.
Rachelle: In college, fell in love with engineering at age 19, found Blizzard through a class i took where I had to play wow for an assignment, got a Blizzard internship and a job from there.
Q: What is it like working on a giant game like WoW?
Matt: Super cool and super scary because everything you do has a big effect on millions of people. Worried at the beginning about keeping up with the team but Blizzard has good answers - good mentors in my leads and my manager.
Q: How hard is it to break into the games industry?
John: I'm proof you can break into the games industry from outside, was working at Disney when I applied. There's so many different types of programming to get the games made so you don't need experience specifically with games. We make the software that makes the games, for example. The important thing is, regardless of what your specialization is, have a solid engineering background.
Q: What does a server programmer do?
Jesse: My team is responsible for integrating our server stack with the rest of the Blizzard platform, which is BattleNet. After that, we do the back end for our team for features. My team is responsible for matchmaking, parties, and persistence. We also make an Overwatch platform and infrastructure between servers. "My team makes the cake stand upon which the delicious layered beautiful cake rests. No one needs a beautiful cake stand, but it must hold up the cake. That's our prime responsibility. Super reliability."
Q: Nathan, what do you do in BattleNet and Online Products?
A: We're the table under the cake stands! Dev Portal team is responsible for the test account system - -we call it Murky - useful for testing account functionality. Also manage external APIs and documentation, external facing tools
Q: What is expected of an associate software engineer at Blizzard?
Anna: Primary responsibility for an associate is to learn and grow, this resonates in our engineering culture, and empowers me to take on projects I wouldn't otherwise. Collaborating with senior engineers improves me as an engineer. For example, I am now working on authentication which was new to me.
Q: What do you use on the back end? Containerization, etc?
A: We use new and old software, etc. I.e. some games were made before anyone had even thought of the cloud. New projects use newer engineering technologies.
Q: What programming language should up and coming engineers focus on?
A: C Sharp, C ++, HLSL, WPF, Python, Java, Spring, Angular, View. Concepts are more important than a specific language.
Q: Has eSports influenced platform architectural decision making?
A: We need to be reliable whether or not it's being broadcast. We make a game for players so reliability is important during broadcast and at home.
Q: What jobs should I apply for at Blizzard if I don't meet the requirements?
A: Apply to those that interest you but please tailor your application to that specific job.
Q: With the latest changes to data privacy, have you had to change things?
A: Yes, a lot of hours and a lot of people across the company had to work. There is a game security engineering team that implemented Warden. We are always very careful with private player data. On overwatch, we had one engineer on it for 4 months on a small part of the GDPR process. We take this all very seriously.
Q: Are there internship opportunities for those working already?
A: You are eligible if you are returning to school, but it's not age restricted on the upper end.
Q: Is there ubiquitous coding standards for Blizzard or is it team by team? How much latitude do you have?
A: Blizzard operates like a bunch of studios under an umbrella, we are very autonomous but there is a lot of cross pollination. We have an engineering council with the tech directors of all the teams who meet to discuss cross company matters as well. Generally left up to individual teams. They are similar and code is shared but it's pretty much work on the when in Rome method.
Q: Any alternative paths up the mountain without going to school?
A: Nothing special about CS school, and what's really cool about programming is that anyone can do it. If you want to make a game, you can start anytime you want. Star small - make a tic tac toe game! You can naturally learn a lot this way. School is not a necessity but it's important to showcase the work you've done i.e. GitHub repository or a video of a game you've made.
Q: What are your approaches to dynamically scaling your environments to meet consumer need?
A: Some games just have to provision enough servers and burn resources off peak, Overwatch is on a private cloud, instance servers are autoscaled. Where possible we try to do autoscaling.
Q: What does it take in an engineering process to remaster old legacy games?
A: Passion, excitement, trial and error.
Q: Blizzard products have a lot of concurrent users, how do you mitigate issues with large scale releases?
A: We use something called the G Knock, watching concurrency. When we roll out a new feature, we tried it internally with 100 people. We have an automation team that writes robots (Headless Client) which simulates hundreds of thousands of players and completes stress tests.
Q: Can you tell us about SRE?
A: We've worked with SREs so that service deploys actually work on the private cloud environment. They know how things should deploy and what things look like security. We use them a lot in live situations.
Q: How do you get feedback on work in personal time?
A: Working on open source software. Trying lots of things is important.
Q: How are hardware engineers utilized at Blizzard?
A: We have a lot of partners with different vendors, we do a lot of testing, we do test a lot of hardware although we can't test every permutation, test all sorts of hardware profiles, figure out what needs help etc.
Q: Is Blizzard going to follow EA's footsteps and opensource the BLZ template library? What version of C++ do you use?
A: No standard for C++ across the board, picking a moment for upgrading C++ standard is dangerous. WoW is on C++ 17. Overwatch is on 4 different platforms so we are limited by what each platform allows, for example. Can't be too aggressive with upgrading because it has a cost and might not work.
Q: How far in advance do you find out about new features? How long do you work on things? Do you know what the features are?
A: We are very involved, they don't just get handed things they need to build, it's very much a collaboration. Engineers are involved since the beginning of each feature and idea. Working time varies dramatically.
Получить Wowhead Premium
За $1 в месяц или
вы сможете просматривать сайт без рекламы , получите Premium-возможности и поддержите нас!
Показать 0 комментариев
Скрыть 0 комментариев
Зарегистрируйтесь, чтобы оставить комментарий
Вы не авторизованы. Пожалуйста,
, чтобы оставить комментарий.