AppNexus Code Search | Sam Jordan
 

AppNexus Code Search


Interns

This past summer, I worked as a technical intern at AppNexus, a technology company based in New York City. It was a great way to spend the summer, and I got to meet a lot of incredibly people on both the technical and advertising sides of the business. Working in such a well-developed tech stack was certainly a challenge, as there was a lot of company-specific things to learn in order to make a meaningful contribution in just 9 weeks of actual development time. At its core, AppNexus is a cloud infrastructure company - what this meant to me was that everything I built had to be self-contained quickly deployable, in case the application gets moved around from server to server.

I worked as a part of the DevOps team, which primarily is the group in charge of getting the huge volumes of code written by other engineers in the company into production cleanly and efficiently. As part of this effort, my project for the summer was an internal search tool. Searching through AppNexus' huge amounts of code in thousands of repositories is certainly a challenge in terms of scale, and gave me the opportunity to work with the paralellism of the Go language. Concurrent filesystem accesses and inverse indexes were both things I had to deal with and learn more about for this project, which actually works out well since this upcoming semester at school I'll be taking Operating Systems and an Information Retreival classes!

I ended up working to deploy and modify the Hound code search tool for AppNexus' internal systems, as well as adding some fairly substantial extensions to the project like both front-end and back-end support for branching, custom URL schemes for linking, and Nginx load balancing. I wrote a piece about what I learned during the internship for their intern blog, and it is located here. The poster I created for an end-of-summer internal presentation can be found here.



August 2015