Blog Post by ELP Student Vidyuth Suresh (Computer Engineering | Class of 2023)
Overview
Last summer, I had the incredible opportunity to intern at Walmart eCommerce as a software engineer. As an aspiring entrepreneur, I was initially unsure if this was the right opportunity for me, since Walmart’s a very big company and has somewhat of a corporate culture. I was a little worried that I wasn’t going to do any meaningful work and just be another cog in the machine — but my experience had been anything but that and I’m really glad that I chose to intern there last summer.
While Walmart itself is a huge company, the work environment of my product team felt very much like a startup. It was a small, tight-knit group of engineers all working toward the successful launch of a product that will one day be used by millions of people.
The product I worked on is a cross platform mobile application that is to be used by associates on Walmart’s tech campuses. What was particularly interesting was the relevance of several startup concepts we learned in our ELP coursework, especially with Customer Discovery and Creating/Validating an MVP.
When creating a new product that’s going to be used across the company, it’s important to assess the needs of the consumer, which in this case is the Walmart associates. After setting up interviews and doing customer outreach with associates within and outside of Walmart Global, we were able to compile a list of common important features that all the associates wanted to have on the app.
With that list finalized, the team began to work on a minimum viable product that satisfied the needs of the consumer. We first started by designing, implementing, and testing the product. Then, we began to put the product prototype in the hands of consumers and gathered valuable feedback on things that worked and things that needed to be improved, at which point we started the design, implement, and test cycle all over again.
A startup environment in a corporate world
Assumption #1: The Work
Before I started my internship, I was a little nervous initially that I would be doing something menial like code maintenance, fixing bugs and minor UI changes on existing products given that Walmart is a huge company. As it turned out, while this was the case for some of the interns I spoke to, I think I struck the lottery with my internship assignment. Rather than working on an existing product, I had the opportunity to work on a relatively new product, so we were essentially building everything, from the frameworks to the databases and the APIs, from the ground up which was awesome to experience and work on firsthand. As a result, the work I did was able to make a direct impact on the product and improve the stakeholder’s experience with the product which is more than what I could’ve hoped for.
Assumption #2: The Job Description
Another thing I assumed before my internship started was that I figured that everyone would only do the work that was relevant to their role since that was the norm for large (tech) companies, and I expected the same from Wal-mart. After a few weeks of working with the team, I realized that there was no “set” job assignment. Everyone kind of just picked up whatever tasks that they could accomplish during the one week sprint. While the breadth of tasks I could do was limited since I was an intern, I noticed that the other engineers sometimes had to step outside their areas of expertise and pick up a task in other fields. For instance, if the iOS had a UI bug that needed to be fixed but iOS engineers already had their plate full, then a couple of Android engineers would step up and fix the issue, or if we were having some issues with the APIs or the databases, the app engineers would take on some additional backend-related tasks to make sure that the team was meeting their deadlines. This flexibility is something that made my team comparable to startups since you had to sometimes work on a task that isn’t necessarily pertinent to your areas of expertise, especially when you were rushing to meet a deadline or a launch date.