Microsoft - Summer 2016
In 2016, I had the opportunity of working with the WDG GS Data Insights team at Microsoft. While there, I was given the task of automating the process of taking action on international customer feedback. Because Windows 10 gets such a high volume of feedback from its users, a lot of valuable information sits idly in a database without anyone being able to act on it. Of course, there is always a lot of junk to sift through and LOTS of duplicated pieces of feedback, which made the challenge of automating the process even more interesting.
I was privileged to work with teams and individuals across Microsoft, many of whom were quite a few pay grades ahead of us lowly interns. One of my absolute favorite parts of my internship was the aspect of collaboration. As my all-time hero once said, “It’s amazing how much can be accomplished when no one cares who gets the credit.” (John Wooden) While I understand and agree that everyone deserves credit for their work and accolades for a job well-done, I also feel that there is something to be said for those synergistic teams that are able to feed off of one another and do something great because they are more focused on the thrill of the project than their own career advancement.
I was grateful for my Database Systems course I had taken the previous semester, because I was able to help optimize the database being used. Previously, some of the queries took over a minute (sometimes more) to process. After some of our optimizations, those queries were running in 2 seconds or less.
In order to identify actionable feedback and filter out those that had nothing , I worked with a team that has spent the last 2.5 years developing an internal text analytics engine that could help do just that. I met with their team lead on an almost-weekly basis to discuss needs of the project and even help them debug their solution. It was a great partnership and I was grateful for all of their help.
I also worked with several web technologies, as bugs and Work Items are housed in Visual Studio Online. In order to pass actionable feedback onto developers, I needed a Restful Web Api that I could call to “promote” such a bug. Thankfully, there was another team of very helpful individuals that managed that Api, and that ended up being the easiest part of the project.
Even after launching our first batch of auto-promoted bugs, the system was not perfect. There were still a few pieces of feedback that probably should not have been promoted, but to give you some perspective, our first batch was only 131 promoted bugs out of 10M+ pieces of feedback sitting in the database. The filtering was not perfect, but it was a start.
The rest of the summer was spent trying to refine the process. I worked with teams of native-language speakers to identify the original translation of each feedback to determine the meaning. One of the great eye-openers during this process was the discovery of how difficult machine translation really is. It’s an incredibly fascinating problem, but one that seems to have no perfect solution… yet.
I’ve accepted an offer to return to the same team for another internship next summer, where I’m told I might be working on helping to improve machine translation. I’m still not sure in what capacity that will be, but I’m just excited to be a part of it.