Aashish joined us this summer from MIT, where he's studying Electrical Engineering and Computer Science. Aashish is on the chess team at MIT and is also a member of the 6.148 (web development) class staff.
Aashish joined the Services team and spent the summer writing a GraphQL proxy, which will be part of one of MDG's next commercial products. The piece that he built is the thing that sits in between the GraphQL server and its client. He worked closely with our product team and backend devs to identify product requirements and implement the first few features the product offers, which we released in a private early-access program during the last week of his internship.
How did you get into Computer Science?
I always knew about its existence because my dad is a computer scientist, but besides knowing this I mainly played with random things I saw online. Robotics helped too; I first learned Java in Robotics (First Robotics). I started that in 3rd or 4th grade, but I did Lego NXT. Eventually I wanted to make a game, which involved more Java. I never finished it but I learned a lot of stuff in the process. I've learned slowly throughout the years, but I've been doing it for a long time and all the little things add up.
What made you choose Meteor?
I ended up wanting to come here after my on-site interviews. The questions I got asked made me think they would be reflective of the types of work I'd do here, and I was really interested in them. I really like the size of the company and the general vibe I had when I visited. The office also has lots of food :P
What was it like working on commercial products?
I wrote a GraphQL proxy that will be part of one of MDG's next commercial projects. The goal was to move from an out-of-query product (Apollo Optics) to an in-query-path one. The piece that I built is the thing that sits in between the server and the client.
It was really cool working on this team. I got exposed to a lot of the opsy type things that I wanted to be exposed to this summer. Deployment, reliability, system ops, etc. These things weren't directly related to my proxy but I got exposed on it because I was part of that team.
What’s a unique challenge you worked on this summer? How did you overcome it?
Building the GraphQL parser for the proxy, because we didn't use an existing GraphQL parsing library. We used the ANTLR grammar and I had to generate an abstract form of a GraphQL query by walking the parse tree exposed by ANTLR. I'd never done anything like that before so I had to learn a lot, mostly through trial and error. The documentation for Go's ANTLR target doesn't have a lot of examples, so it took a lot of introspection into the code of the ANTLR Go target itself to get the hang of things.
Did you discover any new passions this summer?
Eating chocolate almonds. They're abundantly present in the office!
What surprised you the most about the team?
I was surprised by how many remote people there are and how it's cool that they're all core members of the team but around the world. I like the inclusive culture and the way that Meteor has an international culture — the core of the company isn't all in San Francisco.
What piece of advice would you give to next year's interns?
Make sure your commute's not too long! Coming in from Berkeley was a bit of a pain.