In 2011 and 2012 I joined Blizzard Entertainment as a Software Engineering Intern at Irvine, California. I worked on their backend Battle.net code.
2011: Server Logging Technologies
During 2011 Blizzard was preparing to launch the next installment for one of their biggest and most successful franchises: Diablo. Diablo III was to be their largest installment yet and spanned 12 years of development. I joined them for a summer internship to work alongside the engineers on Battle.net
In contingency planning for this release, Blizzard Battle.net engineers used server logs from World of Warcraft to gauge common server failures. While the logs themselves were well-documented, the servers reported errors in plaintext. I worked directly with the engineers, understanding their needs and priorities when reading server logs. Over the course of the summer internship I developed a tool that:
- Read log files in from text
- Used network sockets to log into servers to pull reporting off in real time
- Highlighted important log lines
- Afforded for multiple logs in tabs
- Afforded for string and Regex searching
- Afforded for aggregation of logs from different servers
P.S. You’ll find me in the credits for Diablo III 🙂
Skills used: User-centered design, UX design, Agile, Regex
Technologies and IDEs Used: C#, Microsoft Visual Studio
2012: Unit Test Improvements
In 2012 I rejoined the Blizzard team, this time attacking more challenging problems. Blizzard was preparing for installments to 2 major franchises: World of Warcraft and Starcraft II. W0rld of Warcraft had an explosive expansion into China, whose network infrastructure was still under heavy development. Blizzard’s game streaming technology, enabling users to play games as they downloaded, became an essential part of this expansion.
In order to handle this expansion, the unit testing infrastructure needed rewriting and updating. Over the summer I expanded the unit testing suite from 40 tests to 300, updating existing areas of testing and adding in new tests for the streaming code. I also developed a virtual fileserver that decoupled unit tests from hardware, enabling faster and more accurate testing of code.
P.S. You’ll find me in the credits for both games 🙂
Skills used: Agile, Unit Testing, unit test design, virtual file server design
Technologies and IDEs Used: C++, Objective-C, PHP, LAMP, Microsoft Visual Studio, XCode