Ownership is one of our key criteria when evaluating performance.
Everyone in Instacart’s engineering organization is expected to take ownership of their work. Ownership covers all of the ingredients – how you scope, plan, ship, communicate cross-functionally, and maintain your work. We value ownership so much that it is one of the main categories by which individual contributors and engineering managers assess performance.
We value engineers who can truly “own” their projects and communicate with design, product, comms, and other adjacent teams. As the company grows, it becomes increasingly important for individuals to possess both the EQ and IQ to manage a project from beginning to end. Ownership grows as you grow within the company, too. Over time, engineers will take on bigger projects that range across your team, the engineering org, or even the whole company.
Wears Many Hats
We love generalists.
If you’re not an expert in one particular language, that is completely fine! We love engineers who are generalists and have experience with (or interest in) multiple languages and platforms. Be endlessly curious!
While there are plenty of opportunities for those interested in depth, there are many more for those looking for breadth. Instacart is a four-sided marketplace that connects consumers, shoppers, grocers, and big brands. As a result, there is so much surface area to explore the relationships between each of our end users. We have unique and interesting problems to solve here at Instacart because we focus on how consumer marketplaces, ecommerce, and enterprise products interact with one another.
We maintain a complex, interdependent chain of technology.
We’ve doubled down on machine learning and data science in order to maintain a massive data catalog (the largest grocery catalog ever), build our customer and shopper apps, identify lost demand in our fulfillment chain, and solve a souped-up version of the classic traveling salesman problem. There is no shortage of interesting models to improve, algorithms to optimize, and problems to solve.
Millions of customers buy their groceries on Instacart. Our backend systems support tight integrations with the largest retailers in North America and our engineers are working to scale operations across our iOS, Android, and web applications. We currently use Rails, Ruby, Python, R, PostgreSQL 9.6, React 0.17, AWS, Docker, RabbitMQ, Sidekiq, Snowflake, PostgreSQL, Stripe, Twilio, Mapbox, and SiftScience, but don’t require folks to have experience with our stack. If you have a solid sense for basic languages and are eager to learn new ones, please reach out!
Ten percent of our full-time employees started out as shoppers on the platform.
We want to support you no matter where you want to take your career. While most companies focus on career progression in terms of “climbing up the ladder,” we fully acknowledge that many people want to move laterally, too. Not only does this mean working on different teams or on different parts of the stack, but also learning entirely new disciplines altogether.
We have an internal coding bootcamp called Carrot University to help employees without technical backgrounds learn how to code and apply for open engineering positions. We realized people who are strongly motivated to make this transition will do so with or without our help, and these are precisely the types of people we value most at Instacart. Carrot U enables employees in non-technical roles to keep their jobs and simultaneously gain new skills. For example, Jeremy Flanagan was a student of Carrot U who started at Instacart as a shopper – he is now a full-time software engineer on our Shopper Success team.
For engineers looking to make a smaller transition within engineering, we of course support that, too. Muffy Barkocy is a great example of this: she joined as a front end engineer and transitioned into backend/infrastructure engineering during her tenure (blog forthcoming!). Most career paths aren’t linear, which is why we do our best to support you no matter where yours takes you.
We are so much more than code, pipelines, models, and metrics.
You can be one of the best engineers in the world, but how impactful your work is, depends on how well you communicate and work with your team. To build the most meaningful solutions, you need context not only from your immediate teammates, but also from relevant and adjacent teams. Furthermore, we have three main offices in San Francisco, Toronto, and Atlanta (though our engineers are based out of SF and Toronto) and several smaller operational locations across the US and Canada. Communication between these hubs is equally critical to our success.
Instacart has many moving parts, so to facilitate cross-functional collaboration, we work with open office plans. To promote more focused conversations, all of our offices are outfitted with plenty of pop-in rooms, bookable conference rooms, and phone booths. As an operations-heavy company, real-time feedback is incredibly important to us and this has permeated throughout the entire company. We have set up several forums for people to ask questions in-person, including our regular AMAs with our executive team leaders. No topic or question is off limits.
Engages with Community
Our sense of community extends far beyond the walls of Instacart.
From an engineering perspective, we love talking about what we’re working on with the greater engineering community. We share best practices at our SF HQ and our Toronto engineering hubs; host popular podcasts (Kaushik Gopal, Senior Staff Engineer, is the co-host of the Android podcast, Fragmented); speak at and host multiple meetups a quarter (Women Who Code, RLadies, Bay Area Python, etc); demo and speak at conferences (Lesbians Who Tech, Pycon, DroidCon, ElastiCon, Collision); and regularly contribute to open source projects (Coil, Lore, Jardin, TrueTime, and more).
On the social impact front, we aim to nourish our communities by helping remove barriers to food access and providing grocery delivery to the most vulnerable of populations. All full-time employees do a shopper shift as a part of their New Hire Orientation and the pay rate for these shifts are automatically donated to Feeding America (a hunger relief organization). We also have Volunteer Time (we do an annual week of service at key times where support and volunteers are needed). Lastly, we also donate groceries to communities in times of need. For example, in 2018, we donated food and supplies to the firehouses in Butte County and LA County during the California Wildfires.
As a four-sided marketplace, cross-functional collaboration is critical to our success.
We serve four key stakeholders:
- consumers using our app to order groceries,
- shoppers who are in-store and fulfilling grocery orders,
- brick and mortar retailers on our platform, and
- consumer packaged goods (CPG) companies who serve ads in our consumer app.
Internally, we’re organized in four key groups to serve each of our stakeholders. Each technical team is comprised of mobile and full-stack engineers, data scientists, ML engineers, and infrastructure engineers. We work together to build our mobile and web apps, B2B software, fulfillment chain technologies, and advertising networks. Given how dynamic our four-sided marketplace is, engineers regularly work with product designers, product managers, finance, marketing, communications, and many other teams to scope projects, prepare for scale, and launch new features.
Eats Lunch Together
We eat together every day.
Lunches are catered daily at Instacart and eating together has become an important part of our culture over the years. A good meal can bring people together in a powerful way, and we love sharing stories, getting to know one another, and bonding over delicious food.
We also take advantage of lunchtime to host regular “Hackers Lunch” meetings every Thursday. While these are optional in both our SF and Toronto offices, they’re a great opportunity to practice our public speaking skills and share what projects we’ve been working on with folks that aren’t in your immediate team. In the past, people have presented on topics like The New PagerDuty, Efficient Services, Technical Writing for Fun and Profit, and Building Availability Models. Once a month, we also have our technical all-hands meeting where we do deep dives into cross-departmental projects.
Of course, if anyone wants or needs to get some Super Smash Brothers in during their workday, we have a club that meets during lunch. 😉