Question about org structures - what does your product team org structure look like?
The product organization at WooCommerce is organized by merchant needs:
- Start: Merchant onboarding, from the moment they click the CTA on WooCommerce.com to when their store is ready to sell.
- Manage: Back-end and admin tasks including product catalog, order management, and settings.
- Grow: Spreading the word about their products and business via sales and marketing channels like Google, Amazon, Facebook, and Pinterest. We have native channel integrations that merchants can attach to their stores that help facilitate pushing products and offers.
- Email: This is where merchants manage their customer and prospect lists, applying segmentation and automation to maintain healthy relationships with shoppers.
- Transact: Getting paid is arguably the most important thing to our user base. We enable users to offer the most popular payment methods depending on the countries they sell in, plus accelerated checkouts like Apple Pay and Google Pay.
- Fulfill: Integrations with carriers like USPS, UPS, FedEx, and DHL allow merchants to print labels and mail products from the comfort of their store/home.
Each of these focus areas is managed by a Product Lead who works with an Engineering Director covering 2-8 Engineering teams. We've found that organizing by merchant need allows us to focus on a key part of our customers' journey with us, while maintaining flexibility across Engineering teams.
My China Platform team owns the China Airbnb product for community services/customer support, trust, compliance and application infrastructure, including ML and mobile. I have 1-2 product managers overseeing each product area. I also have dedicated engineering, data science, design, content and operation teams, if it applies, to work closely with the product manager for each area. I prefer to have each product manager own a well defined product area to not only have true ownership but also to continue growing their product expertise in the area. For any newly identified areas that need product management leadership, we either select existing people based on the skill sets and interest or hire from outside my org.
Within Central Technology we are organized into Product verticals: Game Services, Developer Services, and Infrastructure Services. Each of these verticals are comprised of 3-6 teams that manage a suite of products. I have a Product Lead for each of the verticals, and the product leads typically manage the PMs for each of the teams. Depending on the needs of the team a PM may be fully or partly dedicated to a team (for example our Payments team has a fully dedicated PM, whereas our Cloud and Kubernetes teams share a single PM. In addition to their normal day to day team management, some PMs also tackle special projects - for example if a new initiative is introduced that requires coordination from across the org, oftentimes a PM will help drive the project and work on a horizontal basis. This helps PMs go deep in 1-2 areas and have clear ownership, but also allows them to work horizontally and have opportunities to grow their skills and visibility within the organization.
As my organization has evolved so has my product team. When I first joined Central Tech we had just 1 PM for 90+ engineers, and our processes changed as we slowly grew the product team. Now we have a much more robust team (about 11 PMs), and have a more mature structure. In general, I try to have a mix of skill sets and styles - since we manage over 80 different products and services and serve both internal and external customers (game teams and players) I think its beneficial to have a diverse team that can flex in different areas. For example having technical generalists as well as PMs with deep domain experience, as well as non-technical PMs who have a clear sense of player empathy are all valuable for the work that we do.
In general my organization follows a "three legged stool" model where we have representation from Engineering, Production, and Product at all levels of the org (team/vertical/leadership). This helps ensure we have alignment throughout the org and that each major discipline has a seat at the table.
Ideally, you have "vertical" product teams whose charter is shipping end-user-facing features around a particular problem / persona. You may also have "horizontal" product teams that own certain shared services / infrastructure / components that multiple vertical teams leverage. These teams will usually have some combination of a engineering / product / design (EPD) functions, and may also include user research, data science, and/or quality assurance.