Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
033d9bf8fd | ||
|
|
353a04588c | ||
|
|
01e2b4df39 | ||
|
|
5bc1263be0 | ||
|
|
ecc234234e | ||
|
|
59b4075113 |
No files matched your search
@@ -77,7 +77,7 @@
|
||||
"id": "engineers",
|
||||
"type": "frontend",
|
||||
"label": "Software engineers",
|
||||
"sublabel": "Product Engineering teams",
|
||||
"sublabel": "Product Engineering team",
|
||||
"pos": [
|
||||
1480,
|
||||
40
|
||||
@@ -220,10 +220,10 @@
|
||||
},
|
||||
{
|
||||
"dot": "amber",
|
||||
"title": "Cross-functional execution",
|
||||
"title": "Interdepartmental collaboration",
|
||||
"items": [
|
||||
"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",
|
||||
"sublabel": "CEO / COO",
|
||||
"pos": [
|
||||
680,
|
||||
820,
|
||||
40
|
||||
],
|
||||
"size": [
|
||||
@@ -37,11 +37,11 @@
|
||||
"label": "Product",
|
||||
"sublabel": "Experience and product outcomes",
|
||||
"pos": [
|
||||
600,
|
||||
40,
|
||||
280
|
||||
],
|
||||
"size": [
|
||||
240,
|
||||
280,
|
||||
80
|
||||
]
|
||||
},
|
||||
@@ -51,11 +51,11 @@
|
||||
"label": "Technology",
|
||||
"sublabel": "Engineering and platform",
|
||||
"pos": [
|
||||
880,
|
||||
360,
|
||||
280
|
||||
],
|
||||
"size": [
|
||||
240,
|
||||
280,
|
||||
80
|
||||
]
|
||||
},
|
||||
@@ -65,11 +65,11 @@
|
||||
"label": "Operations",
|
||||
"sublabel": "Service, resolution and trust",
|
||||
"pos": [
|
||||
40,
|
||||
680,
|
||||
280
|
||||
],
|
||||
"size": [
|
||||
240,
|
||||
280,
|
||||
80
|
||||
]
|
||||
},
|
||||
@@ -79,11 +79,11 @@
|
||||
"label": "Marketing",
|
||||
"sublabel": "Brand and customer growth",
|
||||
"pos": [
|
||||
320,
|
||||
1000,
|
||||
280
|
||||
],
|
||||
"size": [
|
||||
240,
|
||||
280,
|
||||
80
|
||||
]
|
||||
},
|
||||
@@ -93,11 +93,11 @@
|
||||
"label": "Finance & Accounting",
|
||||
"sublabel": "Financial performance and controls",
|
||||
"pos": [
|
||||
1160,
|
||||
1320,
|
||||
280
|
||||
],
|
||||
"size": [
|
||||
240,
|
||||
280,
|
||||
80
|
||||
]
|
||||
},
|
||||
@@ -107,123 +107,165 @@
|
||||
"label": "HR & Administration",
|
||||
"sublabel": "People and workplace",
|
||||
"pos": [
|
||||
1440,
|
||||
1640,
|
||||
280
|
||||
],
|
||||
"size": [
|
||||
240,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "shared-delivery",
|
||||
"type": "frontend",
|
||||
"label": "Product & Technology Squads",
|
||||
"sublabel": "Up to seven cross-functional squads",
|
||||
"pos": [
|
||||
660,
|
||||
520
|
||||
],
|
||||
"size": [
|
||||
360,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-discovery",
|
||||
"type": "frontend",
|
||||
"label": "Discovery & Categories",
|
||||
"sublabel": "Browse, search and conversion",
|
||||
"pos": [
|
||||
40,
|
||||
760
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-orders",
|
||||
"type": "frontend",
|
||||
"label": "Orders & Delivery",
|
||||
"sublabel": "Purchase and post-purchase",
|
||||
"pos": [
|
||||
280,
|
||||
760
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-seller",
|
||||
"id": "product-team-1",
|
||||
"type": "frontend",
|
||||
"label": "Seller Platform",
|
||||
"sublabel": "Seller tools and integrations",
|
||||
"label": "Product Management",
|
||||
"sublabel": "Strategy, priorities and outcomes",
|
||||
"pos": [
|
||||
520,
|
||||
760
|
||||
100,
|
||||
480
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-payments",
|
||||
"id": "product-team-2",
|
||||
"type": "frontend",
|
||||
"label": "Payments & Wallet",
|
||||
"sublabel": "Checkout, balances and payouts",
|
||||
"label": "Product Design",
|
||||
"sublabel": "Research and experience design",
|
||||
"pos": [
|
||||
760,
|
||||
760
|
||||
100,
|
||||
620
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-trust",
|
||||
"id": "technology-team-1",
|
||||
"type": "frontend",
|
||||
"label": "Trust & Safety",
|
||||
"sublabel": "Risk and resolution tooling",
|
||||
"label": "Product Engineering",
|
||||
"sublabel": "Marketplace software delivery",
|
||||
"pos": [
|
||||
1000,
|
||||
760
|
||||
420,
|
||||
480
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-data",
|
||||
"id": "technology-team-2",
|
||||
"type": "frontend",
|
||||
"label": "Data & Intelligence",
|
||||
"sublabel": "Ranking, analytics and ML",
|
||||
"label": "Platform & IT",
|
||||
"sublabel": "Reliability and internal systems",
|
||||
"pos": [
|
||||
1240,
|
||||
760
|
||||
420,
|
||||
620
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "squad-platform",
|
||||
"id": "technology-team-3",
|
||||
"type": "frontend",
|
||||
"label": "Platform & AI",
|
||||
"sublabel": "Reliability and engineering AI",
|
||||
"label": "Architecture & Security",
|
||||
"sublabel": "Technical standards and protection",
|
||||
"pos": [
|
||||
1480,
|
||||
420,
|
||||
760
|
||||
],
|
||||
"size": [
|
||||
200,
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "technology-team-4",
|
||||
"type": "frontend",
|
||||
"label": "Quality Engineering",
|
||||
"sublabel": "Testing and release quality",
|
||||
"pos": [
|
||||
420,
|
||||
900
|
||||
],
|
||||
"size": [
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "technology-team-5",
|
||||
"type": "frontend",
|
||||
"label": "Data & AI",
|
||||
"sublabel": "Analytics, ML and AI enablement",
|
||||
"pos": [
|
||||
420,
|
||||
1040
|
||||
],
|
||||
"size": [
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "operations-team-1",
|
||||
"type": "frontend",
|
||||
"label": "Operations Squad",
|
||||
"sublabel": "Service, resolution, risk and quality",
|
||||
"pos": [
|
||||
740,
|
||||
480
|
||||
],
|
||||
"size": [
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "marketing-team-1",
|
||||
"type": "frontend",
|
||||
"label": "Marketing Squad",
|
||||
"sublabel": "Brand, acquisition and retention",
|
||||
"pos": [
|
||||
1060,
|
||||
480
|
||||
],
|
||||
"size": [
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "finance-team-1",
|
||||
"type": "frontend",
|
||||
"label": "Finance & Accounting Squad",
|
||||
"sublabel": "Planning, controls and payments",
|
||||
"pos": [
|
||||
1380,
|
||||
480
|
||||
],
|
||||
"size": [
|
||||
220,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "people-team-1",
|
||||
"type": "frontend",
|
||||
"label": "People & Administration Squad",
|
||||
"sublabel": "Talent, people and workplace",
|
||||
"pos": [
|
||||
1700,
|
||||
480
|
||||
],
|
||||
"size": [
|
||||
220,
|
||||
80
|
||||
]
|
||||
}
|
||||
@@ -233,140 +275,164 @@
|
||||
"id": "management-product",
|
||||
"from": "management",
|
||||
"to": "product",
|
||||
"label": "Coordinates",
|
||||
"variant": "default"
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "top"
|
||||
},
|
||||
{
|
||||
"id": "management-technology",
|
||||
"from": "management",
|
||||
"to": "technology",
|
||||
"label": "Coordinates",
|
||||
"variant": "default"
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "top"
|
||||
},
|
||||
{
|
||||
"id": "management-operations",
|
||||
"from": "management",
|
||||
"to": "operations",
|
||||
"label": "Coordinates",
|
||||
"variant": "default"
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "top"
|
||||
},
|
||||
{
|
||||
"id": "management-marketing",
|
||||
"from": "management",
|
||||
"to": "marketing",
|
||||
"label": "Coordinates",
|
||||
"variant": "default"
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "top"
|
||||
},
|
||||
{
|
||||
"id": "management-finance",
|
||||
"from": "management",
|
||||
"to": "finance",
|
||||
"label": "Coordinates",
|
||||
"variant": "default"
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "top"
|
||||
},
|
||||
{
|
||||
"id": "management-people",
|
||||
"from": "management",
|
||||
"to": "people",
|
||||
"label": "Coordinates",
|
||||
"variant": "default"
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "top"
|
||||
},
|
||||
{
|
||||
"id": "product-squads",
|
||||
"id": "product-1",
|
||||
"from": "product",
|
||||
"to": "shared-delivery",
|
||||
"label": "Shared delivery",
|
||||
"variant": "default"
|
||||
"to": "product-team-1",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "technology-squads",
|
||||
"id": "product-2",
|
||||
"from": "product",
|
||||
"to": "product-team-2",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "technology-1",
|
||||
"from": "technology",
|
||||
"to": "shared-delivery",
|
||||
"label": "Shared delivery",
|
||||
"variant": "default"
|
||||
"to": "technology-team-1",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-discovery",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-discovery",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "technology-2",
|
||||
"from": "technology",
|
||||
"to": "technology-team-2",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-orders",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-orders",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "technology-3",
|
||||
"from": "technology",
|
||||
"to": "technology-team-3",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-seller",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-seller",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "technology-4",
|
||||
"from": "technology",
|
||||
"to": "technology-team-4",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-payments",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-payments",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "technology-5",
|
||||
"from": "technology",
|
||||
"to": "technology-team-5",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-trust",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-trust",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "operations-1",
|
||||
"from": "operations",
|
||||
"to": "operations-team-1",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-data",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-data",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "marketing-1",
|
||||
"from": "marketing",
|
||||
"to": "marketing-team-1",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "delivery-platform",
|
||||
"from": "shared-delivery",
|
||||
"to": "squad-platform",
|
||||
"label": "Squad",
|
||||
"variant": "default"
|
||||
"id": "finance-1",
|
||||
"from": "finance",
|
||||
"to": "finance-team-1",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
},
|
||||
{
|
||||
"id": "people-1",
|
||||
"from": "people",
|
||||
"to": "people-team-1",
|
||||
"variant": "default",
|
||||
"fromSide": "bottom",
|
||||
"toSide": "left"
|
||||
}
|
||||
],
|
||||
"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",
|
||||
"title": "Product",
|
||||
"items": [
|
||||
"Orders; Categories",
|
||||
"Sellers & Operations",
|
||||
"Data & Intelligence; Product Design"
|
||||
"Product Management",
|
||||
"Product Design"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dot": "amber",
|
||||
"title": "Technology",
|
||||
"items": [
|
||||
"Product Engineering; Quality Engineering",
|
||||
"Platform & Reliability; Architecture & Security",
|
||||
"AI Enablement; Internal IT"
|
||||
"Product Engineering",
|
||||
"Platform & IT",
|
||||
"Architecture & Security",
|
||||
"Quality Engineering",
|
||||
"Data & AI"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dot": "cyan",
|
||||
"title": "Operations",
|
||||
"items": [
|
||||
"Operations Squad",
|
||||
"Customer Support; Trust & Resolution",
|
||||
"Risk & Fraud",
|
||||
"Operational Quality"
|
||||
@@ -376,6 +442,7 @@
|
||||
"dot": "amber",
|
||||
"title": "Marketing",
|
||||
"items": [
|
||||
"Marketing Squad",
|
||||
"Brand & Community; Creative; SEO",
|
||||
"PPC & Affiliate; Influencer",
|
||||
"CRM"
|
||||
@@ -385,6 +452,7 @@
|
||||
"dot": "cyan",
|
||||
"title": "Finance & Accounting",
|
||||
"items": [
|
||||
"Finance & Accounting Squad",
|
||||
"Financial Planning & Analysis",
|
||||
"Accounting, Tax & Controls",
|
||||
"Treasury & Payment Operations"
|
||||
@@ -394,6 +462,7 @@
|
||||
"dot": "amber",
|
||||
"title": "HR & Administration",
|
||||
"items": [
|
||||
"People & Administration Squad",
|
||||
"Talent Acquisition",
|
||||
"People Operations",
|
||||
"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.
|
||||
|
||||
## 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
|
||||
|
||||
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
|
||||
|
||||
**Purpose:** improve the buyer and seller experience and turn marketplace opportunities into valuable product capabilities.
|
||||
|
||||
| Team | Responsibilities |
|
||||
| --- | --- |
|
||||
| Orders | Purchase and post-purchase journeys, order status, delivery experience, dispute flows, feedback and loyalty. |
|
||||
| Categories | Category experiences, including Boosting and Currency, discovery, conversion and category-specific user journeys. |
|
||||
| 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 Management | Product strategy, roadmaps, priorities and outcome measurement across discovery, categories, orders, seller tools, payments and operational workflows. |
|
||||
| Product Design | User research, interaction design, design consistency and accessible buyer and seller experiences. |
|
||||
|
||||
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
|
||||
|
||||
**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. |
|
||||
| Platform & Reliability | Shared platform services, delivery infrastructure, observability, availability and performance. |
|
||||
| Architecture & Security | Technical standards, system design, infrastructure security and secure engineering practices. |
|
||||
| Product Engineering | Build and maintain marketplace capabilities, including search, orders, seller tools, checkout, wallet and operational tooling. |
|
||||
| Platform & IT | Platform services, delivery infrastructure, observability, reliability, performance, internal systems, employee devices and identity administration. |
|
||||
| Architecture & Security | Technical standards, system design, security architecture and secure engineering practices. |
|
||||
| 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. |
|
||||
| Internal IT | Identity and access, employee devices, internal systems, software administration and joiner–mover–leaver processes. |
|
||||
| Data & AI | Analytics, experimentation, ranking, recommendations, marketplace ML and safe AI-assisted engineering workflows. |
|
||||
|
||||
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
|
||||
|
||||
**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. |
|
||||
| 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.
|
||||
|
||||
| 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. |
|
||||
| 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.
|
||||
|
||||
| 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. |
|
||||
| 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.
|
||||
|
||||
| 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. |
|
||||
| People Operations | Employee onboarding, development, performance processes, policies and employee experience. |
|
||||
| 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
|
||||
|
||||
@@ -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:
|
||||
|
||||
- **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.
|
||||
- **COO → Operational Quality**, providing independent quality oversight.
|
||||
- **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
|
||||
|
||||
| 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. |
|
||||
| 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. |
|
||||
| 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.
|
||||
+41
-7
@@ -59,14 +59,48 @@ test('Archify is pinned, licensed and rebuilt, not a remote embed', () => {
|
||||
assert(!wrapper.includes('target="_blank"'));
|
||||
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 squads = spec.components.filter(n => n.id.startsWith('squad-'));
|
||||
assert.equal(squads.length, 7);
|
||||
for (const dept of ['product','technology']) assert(spec.connections.some(e => e.from === dept && e.to === 'shared-delivery'));
|
||||
for (const squad of squads) {
|
||||
assert(spec.connections.some(e => e.from === 'shared-delivery' && e.to === squad.id));
|
||||
assert(read('docs/organization/structure.mdx').includes(squad.label));
|
||||
const page = read('docs/organization/structure.mdx');
|
||||
assert(!/shared-delivery|squad-/i.test(JSON.stringify(spec)));
|
||||
assert(!/shared squads|share a delivery structure|cross-functional teams/i.test(page));
|
||||
for (const [dept, count, heading, next] of [['product',2,'Product','Technology'],['technology',5,'Technology','Operations']]) {
|
||||
const teams = spec.components.filter(n => n.id.startsWith(`${dept}-team-`));
|
||||
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(team.size[0] < department.size[0]);
|
||||
assert.equal(team.pos[0] + team.size[0], department.pos[0] + department.size[0]);
|
||||
const edge = spec.connections.find(e => e.from === id && e.to === team.id);
|
||||
assert.equal(edge.toSide, 'left');
|
||||
assert.equal(edge.fromSide, 'bottom');
|
||||
assert.equal(spec.connections.find(e => e.from === 'management' && e.to === id).toSide, 'top');
|
||||
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', () => {
|
||||
|
||||
+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');
|
||||
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(!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');
|
||||
assert(reporting.includes('AI Architect') && reporting.includes('Leads'));
|
||||
assert(!/A: assumed|J: direct/.test(reporting));
|
||||
|
||||
Reference in new issue
Block a user