Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
01e2b4df39 | ||
|
|
5bc1263be0 | ||
|
|
ecc234234e | ||
|
|
59b4075113 |
No files matched your search
@@ -77,7 +77,7 @@
|
|||||||
"id": "engineers",
|
"id": "engineers",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Software engineers",
|
"label": "Software engineers",
|
||||||
"sublabel": "Product Engineering teams",
|
"sublabel": "Product Engineering team",
|
||||||
"pos": [
|
"pos": [
|
||||||
1480,
|
1480,
|
||||||
40
|
40
|
||||||
@@ -220,10 +220,10 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"dot": "amber",
|
"dot": "amber",
|
||||||
"title": "Cross-functional execution",
|
"title": "Interdepartmental collaboration",
|
||||||
"items": [
|
"items": [
|
||||||
"Product Owners, Designers and Tech Leads align on product outcomes.",
|
"Product Owners, Designers and Tech Leads align on product outcomes.",
|
||||||
"AI Enablement works across engineering teams."
|
"Data & AI enables AI adoption across Technology."
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"label": "Management",
|
"label": "Management",
|
||||||
"sublabel": "CEO / COO",
|
"sublabel": "CEO / COO",
|
||||||
"pos": [
|
"pos": [
|
||||||
680,
|
820,
|
||||||
40
|
40
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
@@ -37,11 +37,11 @@
|
|||||||
"label": "Product",
|
"label": "Product",
|
||||||
"sublabel": "Experience and product outcomes",
|
"sublabel": "Experience and product outcomes",
|
||||||
"pos": [
|
"pos": [
|
||||||
600,
|
40,
|
||||||
280
|
280
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
240,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -51,11 +51,11 @@
|
|||||||
"label": "Technology",
|
"label": "Technology",
|
||||||
"sublabel": "Engineering and platform",
|
"sublabel": "Engineering and platform",
|
||||||
"pos": [
|
"pos": [
|
||||||
880,
|
360,
|
||||||
280
|
280
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
240,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -65,11 +65,11 @@
|
|||||||
"label": "Operations",
|
"label": "Operations",
|
||||||
"sublabel": "Service, resolution and trust",
|
"sublabel": "Service, resolution and trust",
|
||||||
"pos": [
|
"pos": [
|
||||||
40,
|
680,
|
||||||
280
|
280
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
240,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -79,11 +79,11 @@
|
|||||||
"label": "Marketing",
|
"label": "Marketing",
|
||||||
"sublabel": "Brand and customer growth",
|
"sublabel": "Brand and customer growth",
|
||||||
"pos": [
|
"pos": [
|
||||||
320,
|
1000,
|
||||||
280
|
280
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
240,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -93,11 +93,11 @@
|
|||||||
"label": "Finance & Accounting",
|
"label": "Finance & Accounting",
|
||||||
"sublabel": "Financial performance and controls",
|
"sublabel": "Financial performance and controls",
|
||||||
"pos": [
|
"pos": [
|
||||||
1160,
|
1320,
|
||||||
280
|
280
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
240,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -107,123 +107,165 @@
|
|||||||
"label": "HR & Administration",
|
"label": "HR & Administration",
|
||||||
"sublabel": "People and workplace",
|
"sublabel": "People and workplace",
|
||||||
"pos": [
|
"pos": [
|
||||||
1440,
|
1640,
|
||||||
280
|
280
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
240,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "shared-delivery",
|
"id": "product-team-1",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Product & Technology Squads",
|
"label": "Product Management",
|
||||||
"sublabel": "Up to seven cross-functional squads",
|
"sublabel": "Strategy, priorities and outcomes",
|
||||||
"pos": [
|
|
||||||
660,
|
|
||||||
520
|
|
||||||
],
|
|
||||||
"size": [
|
|
||||||
360,
|
|
||||||
80
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "squad-discovery",
|
|
||||||
"type": "frontend",
|
|
||||||
"label": "Discovery & Categories",
|
|
||||||
"sublabel": "Browse, search and conversion",
|
|
||||||
"pos": [
|
"pos": [
|
||||||
40,
|
40,
|
||||||
760
|
480
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
200,
|
|
||||||
80
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "squad-orders",
|
|
||||||
"type": "frontend",
|
|
||||||
"label": "Orders & Delivery",
|
|
||||||
"sublabel": "Purchase and post-purchase",
|
|
||||||
"pos": [
|
|
||||||
280,
|
280,
|
||||||
760
|
|
||||||
],
|
|
||||||
"size": [
|
|
||||||
200,
|
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "squad-seller",
|
"id": "product-team-2",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Seller Platform",
|
"label": "Product Design",
|
||||||
"sublabel": "Seller tools and integrations",
|
"sublabel": "Research and experience design",
|
||||||
"pos": [
|
"pos": [
|
||||||
520,
|
40,
|
||||||
760
|
620
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
200,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "squad-payments",
|
"id": "technology-team-1",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Payments & Wallet",
|
"label": "Product Engineering",
|
||||||
"sublabel": "Checkout, balances and payouts",
|
"sublabel": "Marketplace software delivery",
|
||||||
"pos": [
|
"pos": [
|
||||||
760,
|
360,
|
||||||
760
|
480
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
200,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "squad-trust",
|
"id": "technology-team-2",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Trust & Safety",
|
"label": "Platform & IT",
|
||||||
"sublabel": "Risk and resolution tooling",
|
"sublabel": "Reliability and internal systems",
|
||||||
|
"pos": [
|
||||||
|
360,
|
||||||
|
620
|
||||||
|
],
|
||||||
|
"size": [
|
||||||
|
280,
|
||||||
|
80
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "technology-team-3",
|
||||||
|
"type": "frontend",
|
||||||
|
"label": "Architecture & Security",
|
||||||
|
"sublabel": "Technical standards and protection",
|
||||||
|
"pos": [
|
||||||
|
360,
|
||||||
|
760
|
||||||
|
],
|
||||||
|
"size": [
|
||||||
|
280,
|
||||||
|
80
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "technology-team-4",
|
||||||
|
"type": "frontend",
|
||||||
|
"label": "Quality Engineering",
|
||||||
|
"sublabel": "Testing and release quality",
|
||||||
|
"pos": [
|
||||||
|
360,
|
||||||
|
900
|
||||||
|
],
|
||||||
|
"size": [
|
||||||
|
280,
|
||||||
|
80
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "technology-team-5",
|
||||||
|
"type": "frontend",
|
||||||
|
"label": "Data & AI",
|
||||||
|
"sublabel": "Analytics, ML and AI enablement",
|
||||||
|
"pos": [
|
||||||
|
360,
|
||||||
|
1040
|
||||||
|
],
|
||||||
|
"size": [
|
||||||
|
280,
|
||||||
|
80
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "operations-team-1",
|
||||||
|
"type": "frontend",
|
||||||
|
"label": "Operations Squad",
|
||||||
|
"sublabel": "Service, resolution, risk and quality",
|
||||||
|
"pos": [
|
||||||
|
680,
|
||||||
|
480
|
||||||
|
],
|
||||||
|
"size": [
|
||||||
|
280,
|
||||||
|
80
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "marketing-team-1",
|
||||||
|
"type": "frontend",
|
||||||
|
"label": "Marketing Squad",
|
||||||
|
"sublabel": "Brand, acquisition and retention",
|
||||||
"pos": [
|
"pos": [
|
||||||
1000,
|
1000,
|
||||||
760
|
480
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
200,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "squad-data",
|
"id": "finance-team-1",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Data & Intelligence",
|
"label": "Finance & Accounting Squad",
|
||||||
"sublabel": "Ranking, analytics and ML",
|
"sublabel": "Planning, controls and payments",
|
||||||
"pos": [
|
"pos": [
|
||||||
1240,
|
1320,
|
||||||
760
|
480
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
200,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "squad-platform",
|
"id": "people-team-1",
|
||||||
"type": "frontend",
|
"type": "frontend",
|
||||||
"label": "Platform & AI",
|
"label": "People & Administration Squad",
|
||||||
"sublabel": "Reliability and engineering AI",
|
"sublabel": "Talent, people and workplace",
|
||||||
"pos": [
|
"pos": [
|
||||||
1480,
|
1640,
|
||||||
760
|
480
|
||||||
],
|
],
|
||||||
"size": [
|
"size": [
|
||||||
200,
|
280,
|
||||||
80
|
80
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -233,140 +275,130 @@
|
|||||||
"id": "management-product",
|
"id": "management-product",
|
||||||
"from": "management",
|
"from": "management",
|
||||||
"to": "product",
|
"to": "product",
|
||||||
"label": "Coordinates",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "management-technology",
|
"id": "management-technology",
|
||||||
"from": "management",
|
"from": "management",
|
||||||
"to": "technology",
|
"to": "technology",
|
||||||
"label": "Coordinates",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "management-operations",
|
"id": "management-operations",
|
||||||
"from": "management",
|
"from": "management",
|
||||||
"to": "operations",
|
"to": "operations",
|
||||||
"label": "Coordinates",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "management-marketing",
|
"id": "management-marketing",
|
||||||
"from": "management",
|
"from": "management",
|
||||||
"to": "marketing",
|
"to": "marketing",
|
||||||
"label": "Coordinates",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "management-finance",
|
"id": "management-finance",
|
||||||
"from": "management",
|
"from": "management",
|
||||||
"to": "finance",
|
"to": "finance",
|
||||||
"label": "Coordinates",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "management-people",
|
"id": "management-people",
|
||||||
"from": "management",
|
"from": "management",
|
||||||
"to": "people",
|
"to": "people",
|
||||||
"label": "Coordinates",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "product-squads",
|
"id": "product-1",
|
||||||
"from": "product",
|
"from": "product",
|
||||||
"to": "shared-delivery",
|
"to": "product-team-1",
|
||||||
"label": "Shared delivery",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "technology-squads",
|
"id": "product-2",
|
||||||
|
"from": "product",
|
||||||
|
"to": "product-team-2",
|
||||||
|
"variant": "default"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "technology-1",
|
||||||
"from": "technology",
|
"from": "technology",
|
||||||
"to": "shared-delivery",
|
"to": "technology-team-1",
|
||||||
"label": "Shared delivery",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-discovery",
|
"id": "technology-2",
|
||||||
"from": "shared-delivery",
|
"from": "technology",
|
||||||
"to": "squad-discovery",
|
"to": "technology-team-2",
|
||||||
"label": "Squad",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-orders",
|
"id": "technology-3",
|
||||||
"from": "shared-delivery",
|
"from": "technology",
|
||||||
"to": "squad-orders",
|
"to": "technology-team-3",
|
||||||
"label": "Squad",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-seller",
|
"id": "technology-4",
|
||||||
"from": "shared-delivery",
|
"from": "technology",
|
||||||
"to": "squad-seller",
|
"to": "technology-team-4",
|
||||||
"label": "Squad",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-payments",
|
"id": "technology-5",
|
||||||
"from": "shared-delivery",
|
"from": "technology",
|
||||||
"to": "squad-payments",
|
"to": "technology-team-5",
|
||||||
"label": "Squad",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-trust",
|
"id": "operations-1",
|
||||||
"from": "shared-delivery",
|
"from": "operations",
|
||||||
"to": "squad-trust",
|
"to": "operations-team-1",
|
||||||
"label": "Squad",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-data",
|
"id": "marketing-1",
|
||||||
"from": "shared-delivery",
|
"from": "marketing",
|
||||||
"to": "squad-data",
|
"to": "marketing-team-1",
|
||||||
"label": "Squad",
|
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "delivery-platform",
|
"id": "finance-1",
|
||||||
"from": "shared-delivery",
|
"from": "finance",
|
||||||
"to": "squad-platform",
|
"to": "finance-team-1",
|
||||||
"label": "Squad",
|
"variant": "default"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "people-1",
|
||||||
|
"from": "people",
|
||||||
|
"to": "people-team-1",
|
||||||
"variant": "default"
|
"variant": "default"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"cards": [
|
"cards": [
|
||||||
{
|
|
||||||
"dot": "cyan",
|
|
||||||
"title": "Shared delivery squads",
|
|
||||||
"items": [
|
|
||||||
"Product owns priorities and outcomes; Technology owns engineering capability.",
|
|
||||||
"Each squad combines product ownership, engineering, design, QA and data skills.",
|
|
||||||
"Functional teams support squads; they are not extra delivery squads."
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"dot": "cyan",
|
"dot": "cyan",
|
||||||
"title": "Product",
|
"title": "Product",
|
||||||
"items": [
|
"items": [
|
||||||
"Orders; Categories",
|
"Product Management",
|
||||||
"Sellers & Operations",
|
"Product Design"
|
||||||
"Data & Intelligence; Product Design"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"dot": "amber",
|
"dot": "amber",
|
||||||
"title": "Technology",
|
"title": "Technology",
|
||||||
"items": [
|
"items": [
|
||||||
"Product Engineering; Quality Engineering",
|
"Product Engineering",
|
||||||
"Platform & Reliability; Architecture & Security",
|
"Platform & IT",
|
||||||
"AI Enablement; Internal IT"
|
"Architecture & Security",
|
||||||
|
"Quality Engineering",
|
||||||
|
"Data & AI"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"dot": "cyan",
|
"dot": "cyan",
|
||||||
"title": "Operations",
|
"title": "Operations",
|
||||||
"items": [
|
"items": [
|
||||||
|
"Operations Squad",
|
||||||
"Customer Support; Trust & Resolution",
|
"Customer Support; Trust & Resolution",
|
||||||
"Risk & Fraud",
|
"Risk & Fraud",
|
||||||
"Operational Quality"
|
"Operational Quality"
|
||||||
@@ -376,6 +408,7 @@
|
|||||||
"dot": "amber",
|
"dot": "amber",
|
||||||
"title": "Marketing",
|
"title": "Marketing",
|
||||||
"items": [
|
"items": [
|
||||||
|
"Marketing Squad",
|
||||||
"Brand & Community; Creative; SEO",
|
"Brand & Community; Creative; SEO",
|
||||||
"PPC & Affiliate; Influencer",
|
"PPC & Affiliate; Influencer",
|
||||||
"CRM"
|
"CRM"
|
||||||
@@ -385,6 +418,7 @@
|
|||||||
"dot": "cyan",
|
"dot": "cyan",
|
||||||
"title": "Finance & Accounting",
|
"title": "Finance & Accounting",
|
||||||
"items": [
|
"items": [
|
||||||
|
"Finance & Accounting Squad",
|
||||||
"Financial Planning & Analysis",
|
"Financial Planning & Analysis",
|
||||||
"Accounting, Tax & Controls",
|
"Accounting, Tax & Controls",
|
||||||
"Treasury & Payment Operations"
|
"Treasury & Payment Operations"
|
||||||
@@ -394,6 +428,7 @@
|
|||||||
"dot": "amber",
|
"dot": "amber",
|
||||||
"title": "HR & Administration",
|
"title": "HR & Administration",
|
||||||
"items": [
|
"items": [
|
||||||
|
"People & Administration Squad",
|
||||||
"Talent Acquisition",
|
"Talent Acquisition",
|
||||||
"People Operations",
|
"People Operations",
|
||||||
"Office & Administration"
|
"Office & Administration"
|
||||||
|
|||||||
@@ -22,58 +22,42 @@ Functional leaders translate company priorities into departmental plans. Team le
|
|||||||
|
|
||||||
**Management coordinates the six departments.** Each department has a clear business responsibility and a set of teams that deliver it.
|
**Management coordinates the six departments.** Each department has a clear business responsibility and a set of teams that deliver it.
|
||||||
|
|
||||||
## Product & Technology squads
|
|
||||||
|
|
||||||
Product and Technology share a delivery structure of **up to seven cross-functional squads**. Product sets priorities and business outcomes; Technology provides engineering leadership, technical standards and delivery capability.
|
|
||||||
|
|
||||||
| Squad | Scope |
|
|
||||||
| --- | --- |
|
|
||||||
| **Discovery & Categories** | Browsing, search, category journeys and marketplace conversion. |
|
|
||||||
| **Orders & Delivery** | Purchase and post-purchase experience, order tracking, delivery and customer feedback. |
|
|
||||||
| **Seller Platform** | Seller Portal, onboarding, integrations and seller-facing tools. |
|
|
||||||
| **Payments & Wallet** | Checkout, balances, withdrawals and payout integrations, working with Finance. |
|
|
||||||
| **Trust & Safety** | Risk controls, dispute tooling and safety workflows, working with Operations. |
|
|
||||||
| **Data & Intelligence** | Analytics, experimentation, offer ranking, recommendations and marketplace ML. |
|
|
||||||
| **Platform & AI** | Shared platform, reliability, delivery infrastructure and engineering AI tools. |
|
|
||||||
|
|
||||||
Each squad brings together product ownership, engineering, design, quality and data expertise according to its scope. Departmental teams and specialist functions below support these squads; they are not additional delivery squads. Operations retains ownership of customer cases and risk decisions, while Finance retains ownership of financial controls.
|
|
||||||
|
|
||||||
## Departments and teams
|
## Departments and teams
|
||||||
|
|
||||||
|
Product has **two teams** and Technology has **five teams**. Operations, Marketing, Finance & Accounting, and HR & Administration each have **one squad** covering their departmental workstreams. Each team belongs to one department, with its own leadership and responsibilities. The departments collaborate on delivery without sharing team ownership.
|
||||||
|
|
||||||
### Product
|
### Product
|
||||||
|
|
||||||
**Purpose:** improve the buyer and seller experience and turn marketplace opportunities into valuable product capabilities.
|
**Purpose:** improve the buyer and seller experience and turn marketplace opportunities into valuable product capabilities.
|
||||||
|
|
||||||
| Team | Responsibilities |
|
| Team | Responsibilities |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Orders | Purchase and post-purchase journeys, order status, delivery experience, dispute flows, feedback and loyalty. |
|
| Product Management | Product strategy, roadmaps, priorities and outcome measurement across discovery, categories, orders, seller tools, payments and operational workflows. |
|
||||||
| Categories | Category experiences, including Boosting and Currency, discovery, conversion and category-specific user journeys. |
|
| Product Design | User research, interaction design, design consistency and accessible buyer and seller experiences. |
|
||||||
| Sellers & Operations | Seller Portal, seller integrations, onboarding and verification, balances and withdrawals, invoicing and operational tooling. |
|
|
||||||
| Data & Intelligence | Product analytics, experimentation, offer ranking, recommendations and decision support. |
|
|
||||||
| Product Design | User research, interaction design, design consistency and accessible buyer and seller experiences across product teams. |
|
|
||||||
|
|
||||||
Product Owners, Designers and Tech Leads work together on each product area. Product owns priorities and outcomes; Technology owns engineering execution and technical quality.
|
Product Management owns what to improve and why. Product Design shapes the experience. Both work with Technology teams while remaining within Product.
|
||||||
|
|
||||||
### Technology
|
### Technology
|
||||||
|
|
||||||
**Purpose:** build and operate a secure, reliable marketplace and improve the effectiveness of engineering.
|
**Purpose:** build and operate a secure, reliable marketplace and improve the effectiveness of engineering.
|
||||||
|
|
||||||
| Team / function | Responsibilities |
|
| Team | Responsibilities |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Product Engineering | Develop and maintain marketplace capabilities in cross-functional product teams. |
|
| Product Engineering | Build and maintain marketplace capabilities, including search, orders, seller tools, checkout, wallet and operational tooling. |
|
||||||
| Platform & Reliability | Shared platform services, delivery infrastructure, observability, availability and performance. |
|
| Platform & IT | Platform services, delivery infrastructure, observability, reliability, performance, internal systems, employee devices and identity administration. |
|
||||||
| Architecture & Security | Technical standards, system design, infrastructure security and secure engineering practices. |
|
| Architecture & Security | Technical standards, system design, security architecture and secure engineering practices. |
|
||||||
| Quality Engineering | Test strategy, automation, release quality and defect prevention. |
|
| Quality Engineering | Test strategy, automation, release quality and defect prevention. |
|
||||||
| AI Enablement | AI-assisted engineering workflows, developer tools, adoption, standards and safe use of AI. |
|
| Data & AI | Analytics, experimentation, ranking, recommendations, marketplace ML and safe AI-assisted engineering workflows. |
|
||||||
| Internal IT | Identity and access, employee devices, internal systems, software administration and joiner–mover–leaver processes. |
|
|
||||||
|
|
||||||
The CTO owns technology direction. The Head of Engineering leads engineering delivery through Group Engineering Managers and Engineering Managers. The AI Architect coordinates AI enablement across engineering, working with Architecture & Security and team leaders.
|
The CTO owns technology direction. The Head of Engineering leads engineering delivery through Group Engineering Managers and Engineering Managers. The AI Architect coordinates AI enablement within Data & AI, working with Architecture & Security and the other Technology teams. These are leadership roles within the five-team structure, not additional teams.
|
||||||
|
|
||||||
### Operations
|
### Operations
|
||||||
|
|
||||||
**Purpose:** keep marketplace trading dependable and resolve customer issues fairly and efficiently.
|
**Purpose:** keep marketplace trading dependable and resolve customer issues fairly and efficiently.
|
||||||
|
|
||||||
| Team | Responsibilities |
|
**Operations Squad** delivers the department’s responsibilities across the following workstreams.
|
||||||
|
|
||||||
|
| Workstream | Responsibilities |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Customer Support | Buyer and seller assistance, knowledge management, self-service and support workflow automation. |
|
| Customer Support | Buyer and seller assistance, knowledge management, self-service and support workflow automation. |
|
||||||
| Trust & Resolution | Disputes, appeals, refunds, warranties, chargebacks and complex customer cases. |
|
| Trust & Resolution | Disputes, appeals, refunds, warranties, chargebacks and complex customer cases. |
|
||||||
@@ -86,7 +70,9 @@ The COO coordinates Operations. Team leads manage specialists and daily service
|
|||||||
|
|
||||||
**Purpose:** attract and retain customers, build the Eldorado brand and grow marketplace demand.
|
**Purpose:** attract and retain customers, build the Eldorado brand and grow marketplace demand.
|
||||||
|
|
||||||
| Team / workstream | Responsibilities |
|
**Marketing Squad** delivers the department’s responsibilities across the following workstreams.
|
||||||
|
|
||||||
|
| Workstream | Responsibilities |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Brand & Community | Brand positioning, campaigns, organic social, community and brand partnerships. |
|
| Brand & Community | Brand positioning, campaigns, organic social, community and brand partnerships. |
|
||||||
| Creative | Campaign concepts, visual assets and performance creative. |
|
| Creative | Campaign concepts, visual assets and performance creative. |
|
||||||
@@ -101,7 +87,9 @@ The CMO coordinates Marketing. The Brand Team Lead owns Brand & Community, with
|
|||||||
|
|
||||||
**Purpose:** maintain financial control, support business decisions and keep marketplace money flows dependable.
|
**Purpose:** maintain financial control, support business decisions and keep marketplace money flows dependable.
|
||||||
|
|
||||||
| Team / function | Responsibilities |
|
**Finance & Accounting Squad** delivers the department’s responsibilities across the following workstreams.
|
||||||
|
|
||||||
|
| Workstream | Responsibilities |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Financial Planning & Analysis | Budgets, forecasts, profitability, management reporting and investment analysis. |
|
| Financial Planning & Analysis | Budgets, forecasts, profitability, management reporting and investment analysis. |
|
||||||
| Accounting, Tax & Controls | Accounting, financial reporting, tax, audit coordination and internal controls. |
|
| Accounting, Tax & Controls | Accounting, financial reporting, tax, audit coordination and internal controls. |
|
||||||
@@ -113,13 +101,15 @@ The CFO coordinates Finance & Accounting and works with executive leadership on
|
|||||||
|
|
||||||
**Purpose:** help teams attract, develop and retain people and provide an effective working environment.
|
**Purpose:** help teams attract, develop and retain people and provide an effective working environment.
|
||||||
|
|
||||||
| Team | Responsibilities |
|
**People & Administration Squad** delivers the department’s responsibilities across the following workstreams.
|
||||||
|
|
||||||
|
| Workstream | Responsibilities |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Talent Acquisition | Recruitment, candidate experience, hiring coordination and workforce demand support. |
|
| Talent Acquisition | Recruitment, candidate experience, hiring coordination and workforce demand support. |
|
||||||
| People Operations | Employee onboarding, development, performance processes, policies and employee experience. |
|
| People Operations | Employee onboarding, development, performance processes, policies and employee experience. |
|
||||||
| Office & Administration | Workplace services, office operations and administrative coordination. |
|
| Office & Administration | Workplace services, office operations and administrative coordination. |
|
||||||
|
|
||||||
HR partners with department leaders on team capacity and development. People Operations works with Internal IT on employee onboarding, role changes and offboarding.
|
HR partners with department leaders on team capacity and development. People Operations works with Platform & IT on employee onboarding, role changes and offboarding.
|
||||||
|
|
||||||
## Leadership and delivery structure
|
## Leadership and delivery structure
|
||||||
|
|
||||||
@@ -127,21 +117,21 @@ HR partners with department leaders on team capacity and development. People Ope
|
|||||||
|
|
||||||
The diagram shows management responsibility from leader to role or team:
|
The diagram shows management responsibility from leader to role or team:
|
||||||
|
|
||||||
- **CTO → Head of Engineering → Group Engineering Managers → Engineering Managers → Product Engineering teams.**
|
- **CTO → Head of Engineering → Group Engineering Managers → Engineering Managers → the Product Engineering team.**
|
||||||
- **CTO → AI Architect**, coordinating engineering AI enablement.
|
- **CTO → AI Architect**, coordinating engineering AI enablement.
|
||||||
- **COO → Operational Quality**, providing independent quality oversight.
|
- **COO → Operational Quality**, providing independent quality oversight.
|
||||||
- **CMO → Brand Team Lead**, leading Brand & Community.
|
- **CMO → Brand Team Lead**, leading Brand & Community.
|
||||||
|
|
||||||
Product teams combine product ownership, design, engineering, quality and data expertise. Functional management develops people and professional standards; cross-functional teams deliver business outcomes.
|
Product and Technology retain separate team ownership and reporting lines. Their teams coordinate priorities, design, engineering, quality and data work to deliver business outcomes.
|
||||||
|
|
||||||
## How the departments work together
|
## How the departments work together
|
||||||
|
|
||||||
| Business outcome | Collaboration |
|
| Business outcome | Collaboration |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Better buyer experience | Product defines improvements; Technology delivers them; Operations brings customer feedback; Data measures the result. |
|
| Better buyer experience | Product defines improvements; Technology delivers them; Operations brings customer feedback; Data & AI measures the result. |
|
||||||
| Stronger seller experience | Product and Technology develop seller tools; Operations supports sellers; Finance manages financial processes. |
|
| Stronger seller experience | Product and Technology develop seller tools; Operations supports sellers; Finance manages financial processes. |
|
||||||
| Safe and trustworthy trading | Risk & Fraud, Trust & Resolution, Architecture & Security, and Finance coordinate controls and incident responses. |
|
| Safe and trustworthy trading | Risk & Fraud, Trust & Resolution, Architecture & Security, and Finance coordinate controls and incident responses. |
|
||||||
| Sustainable growth | Marketing develops demand; Product improves conversion and retention; Finance measures profitability. |
|
| Sustainable growth | Marketing develops demand; Product improves conversion and retention; Finance measures profitability. |
|
||||||
| AI-powered execution | AI Enablement supports engineering; Data & Intelligence develops marketplace intelligence; Operations improves service and quality workflows. |
|
| AI-powered execution | Data & AI supports engineering and develops marketplace intelligence; Operations improves service and quality workflows. |
|
||||||
|
|
||||||
Department leaders remain accountable for outcomes, controls and service quality as AI becomes part of everyday work.
|
Department leaders remain accountable for outcomes, controls and service quality as AI becomes part of everyday work.
|
||||||
+36
-7
@@ -59,14 +59,43 @@ test('Archify is pinned, licensed and rebuilt, not a remote embed', () => {
|
|||||||
assert(!wrapper.includes('target="_blank"'));
|
assert(!wrapper.includes('target="_blank"'));
|
||||||
assert(wrapper.includes('Close full-screen diagram'));
|
assert(wrapper.includes('Close full-screen diagram'));
|
||||||
});
|
});
|
||||||
test('Product and Technology share seven delivery squads', () => {
|
test('Product owns two teams and Technology owns five separate teams', () => {
|
||||||
const spec = JSON.parse(read('diagrams/organization-structure.architecture.json'));
|
const spec = JSON.parse(read('diagrams/organization-structure.architecture.json'));
|
||||||
const squads = spec.components.filter(n => n.id.startsWith('squad-'));
|
const page = read('docs/organization/structure.mdx');
|
||||||
assert.equal(squads.length, 7);
|
assert(!/shared-delivery|squad-/i.test(JSON.stringify(spec)));
|
||||||
for (const dept of ['product','technology']) assert(spec.connections.some(e => e.from === dept && e.to === 'shared-delivery'));
|
assert(!/shared squads|share a delivery structure|cross-functional teams/i.test(page));
|
||||||
for (const squad of squads) {
|
for (const [dept, count, heading, next] of [['product',2,'Product','Technology'],['technology',5,'Technology','Operations']]) {
|
||||||
assert(spec.connections.some(e => e.from === 'shared-delivery' && e.to === squad.id));
|
const teams = spec.components.filter(n => n.id.startsWith(`${dept}-team-`));
|
||||||
assert(read('docs/organization/structure.mdx').includes(squad.label));
|
assert.equal(teams.length, count);
|
||||||
|
const section = page.split(`### ${heading}\n`)[1].split(`### ${next}\n`)[0];
|
||||||
|
const rows = section.split('\n').filter(l => l.startsWith('| ')).slice(2);
|
||||||
|
assert.equal(rows.length, count);
|
||||||
|
for (const team of teams) {
|
||||||
|
const parents = spec.connections.filter(e => e.to === team.id);
|
||||||
|
assert.deepEqual(parents.map(e => e.from), [dept]);
|
||||||
|
assert(rows.some(row => row.startsWith(`| ${team.label} |`)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
test('departments share one row and each has delivery teams below it', () => {
|
||||||
|
const spec = JSON.parse(read('diagrams/organization-structure.architecture.json'));
|
||||||
|
const page = read('docs/organization/structure.mdx');
|
||||||
|
const departments = ['product', 'technology', 'operations', 'marketing', 'finance', 'people'];
|
||||||
|
const nodes = new Map(spec.components.map(n => [n.id, n]));
|
||||||
|
assert.equal(new Set(departments.map(id => nodes.get(id).pos[1])).size, 1);
|
||||||
|
for (const [i, id] of departments.entries()) {
|
||||||
|
const department = nodes.get(id);
|
||||||
|
const teams = spec.connections.filter(e => e.from === id).map(e => nodes.get(e.to));
|
||||||
|
assert.equal(teams.length, i === 0 ? 2 : i === 1 ? 5 : 1);
|
||||||
|
for (const team of teams) {
|
||||||
|
assert(team.pos[1] > department.pos[1] + department.size[1]);
|
||||||
|
assert.equal(team.pos[0], department.pos[0]);
|
||||||
|
assert.deepEqual(spec.connections.filter(e => e.to === team.id).map(e => e.from), [id]);
|
||||||
|
assert(page.includes(team.label));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (const [i, a] of spec.components.entries()) for (const b of spec.components.slice(i + 1)) {
|
||||||
|
assert(!(a.pos[0] < b.pos[0] + b.size[0] && a.pos[0] + a.size[0] > b.pos[0] && a.pos[1] < b.pos[1] + b.size[1] && a.pos[1] + a.size[1] > b.pos[1]), `${a.id} overlaps ${b.id}`);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
test('organization page presents an operating model, not research notes', () => {
|
test('organization page presents an operating model, not research notes', () => {
|
||||||
|
|||||||
+5
-2
@@ -21,10 +21,13 @@ if (process.argv.includes('--build')) {
|
|||||||
}
|
}
|
||||||
assert(!readdirSync('build/diagrams', {recursive: true}).some(f => f.endsWith('.delivery.json')), 'Private build receipts must not be published');
|
assert(!readdirSync('build/diagrams', {recursive: true}).some(f => f.endsWith('.delivery.json')), 'Private build receipts must not be published');
|
||||||
const diagram = read('build/diagrams/organization-structure/index.html');
|
const diagram = read('build/diagrams/organization-structure/index.html');
|
||||||
assert(diagram.includes('Coordinates') && diagram.includes('node-technology'));
|
assert(diagram.includes('node-product-team-2') && diagram.includes('node-technology-team-5'));
|
||||||
|
assert(!diagram.includes('shared-delivery'));
|
||||||
assert(!/A: placement|E: careers|J: advertised/.test(diagram));
|
assert(!/A: placement|E: careers|J: advertised/.test(diagram));
|
||||||
assert(!diagram.includes('Example leadership'));
|
assert(!diagram.includes('Example leadership'));
|
||||||
for (const id of ['discovery','orders','seller','payments','trust','data','platform']) assert(diagram.includes(`node-squad-${id}`));
|
for (const [dept, count] of [['product', 2], ['technology', 5]]) {
|
||||||
|
for (let i = 1; i <= count; i++) assert(diagram.includes(`node-${dept}-team-${i}`));
|
||||||
|
}
|
||||||
const reporting = read('build/diagrams/organization-reporting/index.html');
|
const reporting = read('build/diagrams/organization-reporting/index.html');
|
||||||
assert(reporting.includes('AI Architect') && reporting.includes('Leads'));
|
assert(reporting.includes('AI Architect') && reporting.includes('Leads'));
|
||||||
assert(!/A: assumed|J: direct/.test(reporting));
|
assert(!/A: assumed|J: direct/.test(reporting));
|
||||||
|
|||||||
Reference in new issue
Block a user