Getting to Know Jim Zhang and Alice Zhou

April 29, 2016

LinkedIn wouldn't be the company it is today without the engineers who built it. We have no shortage of talented individuals in technical roles across the company. They are the ones who create, build, and maintain our platform, tools, and features—as well as write posts for this blog. In this series, we feature some of the people and personalities that make LinkedIn great.

LinkedIn's internship program started in 2010 with just 35 Engineering interns in Mountain View. The program has since grown to all business units in over seven global locations (you can  find out more about LinkedIn's internship program here).

LinkedIn has been partnering with the University of Waterloo since 2011. Waterloo interns join LinkedIn throughout the year during the spring, fall, and winter terms. During each internship, we hire anywhere between four to 12 interns who are given substantial projects to make a real impact on the company. We truly enjoy each Waterloo internship and the relationships we form with these bright students.

Alice Zhou and Jim Zhang are software engineering students at the University of Waterloo, both in their sophomore year. They have been interning at LinkedIn’s data department for the winter semester.

  • Alice Zhou

Prior to her internship at LinkedIn, Alice interned with the settlements team at Square, where she participated in database sharding and implemented reconciliation for money transfer files. She enjoys learning about different systems and how to design and code in a cleaner, more intuitive style.

  • Jim Zhang

Jim interned with the local search quality team at Google before his internship at LinkedIn. He enjoys creating elegant and efficient software, both on an algorithmic level and at the human interface level. In his free time, he likes to solve math puzzles and participate in programming competitions.

What is something about you not found on your LinkedIn profile?

Alice: I enjoy exploring nature and noticing beauty in the world around us. Over the course of this internship, we went on some pretty intense trips, including 21-mile bike rides and 4-hour hikes.

Jim: I like to eat raw fish. Whenever I visit the Sunnyvale office on a Tuesday or Thursday, I make sure to grab some sashimi from the cafe. (I even tried to make salmon nigiri at home once, but it turned out disastrously.)

What were some of the projects that you worked on over the course of your internship?

For our internship, we both worked on LinkedIn’s distributed graph database team. Our team is building an in-memory database that aims to serve as LinkedIn’s global secondary index to answer fast cross-domain queries. At the same time, we maintain the current generation graph database to answer questions such as, “What is a user’s second degree network?” and “Who are an influencer’s followers?”

Alice: In particular, I explored several different aspects of our graph database, including sharding, query language, and performance. As our database grows, it will become necessary to store data in multiple sharded (partitioned) databases. The goal of graph partitioning is to minimize the number of edges that have nodes on separate shards and to balance edges evenly among the shards. I helped research and experiment with different graph partitioning algorithms. I also worked on adding keyword arguments to our query language. I really enjoyed working through the parsing and query compilation code, as well as seeing the concepts learned in our compilers course in production use cases. Some other interesting tasks included investigating a production site issue and writing a command-line tool that executes and outputs runtime measurements of queries to simplify performance measurement.

Jim: Much of my work was focused on the graph database’s index. When I arrived, one of the main problems the team was working on was the size of the index. It was way too big! To help the team reduce the index’s size, I made a tool that breaks down how much memory each type of index structure is using. This tool proved very valuable in helping us understand how to reduce the size of the index. I also worked on several other tasks along the way, such as performance optimizations and improving the usability of the next-gen database’s command line interface. Being able to work in such a wide variety of areas was a great experience.

Wow, that all sounds really interesting! But hopefully your internship was not all work and no fun?

Alice: Definitely not! A few weeks into the internship, we discovered a music room on campus. Through that discovery, I joined InTune, LinkedIn’s amazing a cappella group, along with another intern. It’s been one of the highlights of our months here. Several of the interns started a “Wintern band,” where we learned new instruments and sang together. We also went on many trips, some favorites being a ski trip organized by the data organization at LinkedIn and a ski trip with various a cappella groups from tech companies in the area.

  • Winterns at the go kart track

Winterns at a go-kart racing track.

Jim: Not at all. I had the opportunity to attend several company-organized events, such as a tour of San Francisco’s Chinatown, a go-kart race, a Sharks game, and a ski trip. I also got a sudden urge to learn how to play the violin a few weeks into the internship—luckily for me, Ann, a skilled violinist on my team, caught wind of this and gave me a nice starting lesson. I’ve been practicing in the music room regularly ever since.

What are you going to miss the most about your internship?

Alice: I will really miss the amazing people I’ve met at LinkedIn. I have an awesome mentor who is encouraging and always ready to help, and I’ve learned a lot from him about communication with others and how to approach problems and projects. I also have a great manager who always pushes me to consider why features are needed and to maintain a high-level view of my work—in other words, to not lose sight of the forest for the trees. My team is likewise brilliant and willing to help, guide, and provide code reviews. I enjoyed our post-lunch walks and the jokes we’ve shared. The friends I’ve met from InTune are some of the friendliest, most supportive people I’ve met here, and it’s been wonderful to sing with them. Our campus recruiting/events team has also been very encouraging and helpful throughout the internship. Last, but not least, I’m thankful for the 11 other interns with whom I’ve shared the last four months, and am excited to head back to school with these 11 new friends.

Jim: I, too, will miss the amazing people I’ve met at LinkedIn. I had a great mentor who I learned a lot from (and spoke Japanese with!), as well as a great manager who was very knowledgeable about the technology we used and who taught me a lot about both the existing technology and software engineering in general. I also really enjoyed getting to know the 11 other interns; the intern program really encourages inter-intern interaction, from housing us in the same apartment complex to organizing events for us every month.

Do you have any advice for students interested in internships at LinkedIn?

Alice: Be intrigued, inquisitive, and intentional. We were fortunate to have Asif Makhani, a Senior Director of Engineering at LinkedIn, speak with us as part of an intern speaker series. When we asked Asif about entry-level talent hiring at LinkedIn, he mentioned the importance of being humble enough to want to learn, passionate about what the team is doing, and inquisitive enough to ask the right questions.

Jim: If you’re looking for a technical internship, you’ve probably heard that you should do side projects. But don’t limit yourself to throwaway projects for courses or hackathons—take some time and make something that you’re genuinely excited about. Create something that you’d use yourself, that you’d keep online, and that you’d maintain over weeks or months. You’ll learn a lot, and you’ll have something amazing to show for it.

What are your plans for the near future?

Back to school for both of us!

Alice: After seeing the specific problems that we face on the graph team, I’ve recognized a need to focus more on learning about why things are designed in a certain way, and how we reached a certain conclusion. For the next term, I’m looking forward to learning all of the new topics, including data structures, combinatorics, and differential equations, in light of these questions.

Jim: I will be taking a lot of cool courses such as data structures, statistics, and differential equations, and I can’t wait to apply all of the real-world perspectives I’ve gained here at LinkedIn to those academic topics.

Topics