Software Engineering Intern @ Google
May 2017 – August 2017
- AdsCrawl team member developing backend logic and infrastructure to process Ads data.
- Developed Lightbulb service from start-to-finish in three months including design, implementation, testing, and deployment. Processes on the order of 100k requests per second.
- Reduced request rejections between two internal services by 6.1x and compressed standard deviation by 5.0x.
- Allows upstream service task count to scale without disproportionally increasing request rejections.
Lightbulb (main project)
I worked with Google's AdsCrawl team responsible for optimzing the rate at which ads data is processed. My main project, Lightbulb, dynamically shards and load-balances Remote Procedure Call (RPC) traffic between internal AdsCrawl services. By default RPC traffic is sent to tasks uniformly. However, due to the nature of these services, it is more efficient for traffic to be grouped in non-uniform patterns. This sharding improves the scalability of the services and reduces the proportion of RPC traffic that may be rejected (e.g. due to lack of internal resources). For one pair of these services, Lightbulb reduced request rejections by 6.1x and compressed the standard deviation of these request rejections by 5.0x. Lightbulb was developed from start-to-finish in just three months including its design, implementation, testing, and deployment, and is capable of handling on the order of 100k requests per second.
I initiated and lead weekly interview practice sessions for my fellow Google Pittsburgh interns. Each week a portion of interns volunteered to be "interviewers" and lead small groups through practice problems. The session format I found to be most effective involved a 1:6 interviewer-to-interviewee ratio where interns take turns being the interviewee responding to a question on the whiteboard. Every eight minutes a new interviewee is selected and picks up where the other left off. At the end of the session I compiled a summary document describing the problems and their solutions.
I delivered a midpoint survey to evaluate the effectiveness of interview practice. The sessions were most effective in exposing attendees to new problems and boosting overall confidence in technical interviews.
Note: 1 = “disagree”, 5 = “agree”
“Interview practice has exposed me to new interview problems.”
Median and mode: 5/5
“Interview practice has improved my confidence in technical interviews.”
Median and mode: 4/5
Following tradition, Nooglers (new Google employees) wear propeller beanies during their first week.