Give us an intro!
Sasha: I’m Sasha! I’m a rising senior at Berkeley studying Computer Science. My career goal is to just work in fast-paced hyper growth environments. My biggest personal goal is to become great at ALL of the sports.
Subhash: Hi, I’m Subhash, a UC Berkeley EECS student. I love working with software, and in my free time I like to read, play golf, and make videogames! My long-term goals are to work in ML or an ML-adjacent field and build really impactful products.
What brought you to intern at Zip?
Sasha: I had friends who’d worked at Zip before, and they all told me about the huge impact they were able to have at Zip. I was looking for an internship where I could take a lot of ownership, and I knew Zip would allow me to do that!
Subhash: I first heard about Zip from an information session at UC Berkeley. While talking to Zipsters at the session, a common theme I noticed was that speed of execution was prized at Zip. My previous industry experiences had been at larger, older companies, so I was really invested in Zip’s value of velocity. Zip brought the perfect mix of small-team, close-knit energy that you can find at a startup with the talent and experience that the sharpest engineers in the industry bring. The prospect of working on products that could directly impact some of the biggest players in every industry was a great motivator too!
Tell us about your team and project(s)!
Sasha: I was on the virtual credit cards pod this summer! My team released a new product the week before I joined, so I spent the first half of my internship building feature requests from our beta customers. In the latter half of my internship, I worked with the infra team to migrate the virtual card products webhooks to Kafka.
Subhash: This summer I joined the AP (Accounts Payable) Automation team, and my main project dealt with the Invoice AI data extraction pipeline. On Zip’s platform, users can upload an invoice to be automatically coded (matching field names to their values) by AI, saving countless hours for AP employees who would otherwise process these invoices by hand. My work revolved around integrating and testing different AI providers in this pipeline, allowing for even higher accuracy and coding capabilities. As part of this effort, I refactored the pipeline into a modular version that allows for quickly switching out different providers, a robust solution that should make evaluation much easier in the future.
What was a big challenge that you faced during your summer and how were you able to overcome it?
Sasha: The biggest technical challenge I faced this summer was figuring out how to migrate our webhooks to the new infrastructure carefully. Our product processes millions of webhooks every month (every time someone uses a virtual card to purchase something), so I had to think about race conditions and idempotency when I was rolling out my feature.
Subhash: The biggest challenge I faced this summer was implementing standardized parsing logic. Every model would return a differently formatted result when given an invoice, and this raw data would need to be formatted into a structure that meshes with the frontend. This process was easy and personalized with just one provider, but with multiple, the parsing logic would need to be standardized. I pulled out the existing parsing logic from deep inside the execution pipeline into a place where all of the implementations could benefit from it, which was pretty tough!
What skills have you developed, and how will you apply them in the future?
Sasha: A skill I’ve developed is to seriously consider the customer experience while building out a feature. I tend to hyper-fixate on functionality and correctness, as opposed to how my feature fits into our product and how customers will interact with it. While I was building out full-stack features for customers this summer, I realized that a features design/presentation is just as important as its functionality.
Subhash: I’ve learned so much during my internship, with some of the most notable things being working on industry-scale ML applications and learning how to evaluate AI-based approaches with a combination of metrics. I’ll definitely carry this knowledge with me into future ML endeavors and iterate even quicker! I’ve also improved at cross-team collaboration, effective communication in the context of a long-term project, and how to use the development cycle to its fullest advantage. These skills are applicable to any software-related role, and have made me a more efficient developer overall.
What did you learn about the company that you didn't know before starting?
Sasha: I didn’t expect people to have this much domain specific knowledge about accounting, audit, etc! Since Zip is a more product forward company, engineers, PMs, and designers are all very familiar with the world of business spend.
Subhash: I knew that Zip, as a smaller company, would be easier to navigate than something like big tech, but I underestimated just how easy it is to talk to people across the company. Everyone is super welcoming and happy to chat about literally anything, whether it be work-related or not. There are so many inside jokes within the Zip slack that foster this sense of community in every Zip event, making each interaction I have with Zipsters super enjoyable and unique!
What was your favorite part of the internship?
Sasha: My favorite part of the internship was that there were endless opportunities to pursue. I was able to own features in our product, work on infrastructure, and also contribute to urgent customer escalations. I know that at bigger companies, interns are given a single project that they’re expected to work on the entire summer. I liked that at Zip if I finished a project early I’d be able to take on something new instantly. Having “infinite” work helped me grow really quickly and learn a lot. It also helped me learn to manage parallel work streams.
Subhash: My favorite part of the internship was getting to showcase my results in our final presentation. I was super excited to be able to work on such an integral part of one of Zip’s core products, and being able to present this journey and findings at the monthly Engineering All-Hands meeting was an amazing experience. It’s great to think about the significant impact that my project will have on the Invoice AI pipeline in the future, despite only having worked on the product for 12 weeks.
What advice would you give to future interns at Zip?
Sasha: Voice your interests to your mentor and manager! Around halfway through my internship I told my manager that I’d like to work on something with a larger backend focus, and my team was able to find me a project super fast! It isn’t always possible to only work on things you’re excited about, but it’s good to strike a balance between business needs and personal growth and interests.
Subhash: Utilize the network that Zip provides, both while working on your tasks and outside of that. There are so many talented people at Zip that have an incredibly deep understanding of Zip’s intricate and complex suite of products, so no question is off the table. Outside of work, the diversity of interests people have at Zip is staggering, and just a quick search through the Slack channels confirms this. No matter what hobby you may have, there’s bound to be someone at Zip who can share / appreciate your interests. So go ahead and schedule coffee chats, talk to people at lunch, and say hello to people walking throughout the office, as it makes the intern experience just that much more fulfilling.