From c2665624e357653b00a3461829e222ca09ec6c0c Mon Sep 17 00:00:00 2001 From: Jarvis Jr Hermes Date: Fri, 2 Oct 2026 12:12:57 +0000 Subject: [PATCH] research: reconstruct Eldorado organization with sourced roles and explicit assumptions --- README.md | 2 +- .../organization-reporting.architecture.json | 230 +++++++++++++++ .../organization-structure.architecture.json | 200 ++++++++++++-- docs/contribution/diagrams.md | 6 +- docs/organization/structure.mdx | 100 ++++++- research/organization/README.md | 9 + research/organization/sources.json | 261 ++++++++++++++++++ scripts/portal.test.mjs | 27 +- scripts/verify.mjs | 8 +- 9 files changed, 792 insertions(+), 51 deletions(-) create mode 100644 diagrams/organization-reporting.architecture.json create mode 100644 research/organization/README.md create mode 100644 research/organization/sources.json diff --git a/README.md b/README.md index 4c20cec..dc3cffd 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ After publication, verify the exact commit’s Actions task and deployed page bo ## Sections and diagrams -Top-level sections are Organization, Strategy, and Contribution, each with an independent sidebar. The first Organization page is Structure and contains an explicitly illustrative organization chart, not confirmed Eldorado reporting lines. +Top-level sections are Organization, Strategy, and Contribution, each with an independent sidebar. The first Organization page is Structure. It contains a dated public-evidence reconstruction, with named functions, job-advertised reporting lines, and explicitly marked planning assumptions. Citation URLs and checked excerpts are preserved in `research/organization/sources.json`; this is not an internally verified employee roster. Archify 3.0.1 is vendored under `vendor/archify/` from commit `d5a1333d7447c866a765adac7d4d062f2f02e4d2`. MIT and third-party notices are preserved. `diagrams/` holds editable JSON; `pnpm diagrams:build` validates and generates local standalone viewers before every site build. The iframe is sandboxed without same-origin permission. See `docs/contribution/diagrams.md` for capability analysis, authoring, boundaries, and upgrade procedure. diff --git a/diagrams/organization-reporting.architecture.json b/diagrams/organization-reporting.architecture.json new file mode 100644 index 0000000..3977f0d --- /dev/null +++ b/diagrams/organization-reporting.architecture.json @@ -0,0 +1,230 @@ +{ + "schema_version": 1, + "diagram_type": "architecture", + "meta": { + "title": "Eldorado — advertised reporting lines", + "output": "static/diagrams/organization-reporting/index.html", + "quality_profile": "showcase", + "legend": { + "entries": { + "backend": { + "label": "E: evidenced function" + }, + "frontend": { + "label": "J: advertised role" + } + } + } + }, + "components": [ + { + "id": "cto", + "type": "frontend", + "label": "CTO", + "sublabel": "J: named manager [8]", + "pos": [ + 40, + 40 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "head-engineering", + "type": "frontend", + "label": "Head of Engineering", + "sublabel": "J: named manager [6]", + "pos": [ + 400, + 40 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "group-em", + "type": "frontend", + "label": "Group Eng. Manager", + "sublabel": "J: manages 4–5 EMs [6]", + "pos": [ + 760, + 40 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "em", + "type": "frontend", + "label": "Engineering Manager", + "sublabel": "J: leads ~5 engineers [7]", + "pos": [ + 1120, + 40 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "engineers", + "type": "frontend", + "label": "Software engineers", + "sublabel": "J: advertised team [7]", + "pos": [ + 1480, + 40 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "ai-architect", + "type": "frontend", + "label": "AI Architect", + "sublabel": "J: solo IC; new role [8]", + "pos": [ + 40, + 280 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "coo", + "type": "backend", + "label": "COO", + "sublabel": "E: Lukas Deksnys [1]", + "pos": [ + 400, + 280 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "ops-qa", + "type": "frontend", + "label": "QA Specialist (Ops)", + "sublabel": "J: new direct report [11]", + "pos": [ + 760, + 280 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "cmo", + "type": "frontend", + "label": "CMO", + "sublabel": "J: named manager [12]", + "pos": [ + 1120, + 280 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "brand-lead", + "type": "frontend", + "label": "Brand Team Lead", + "sublabel": "J: advertised role [12]", + "pos": [ + 1480, + 280 + ], + "size": [ + 240, + 80 + ] + } + ], + "connections": [ + { + "id": "cto-head-engineering", + "from": "cto", + "to": "head-engineering", + "label": "A: assumed", + "variant": "dashed" + }, + { + "id": "head-engineering-group-em", + "from": "head-engineering", + "to": "group-em", + "label": "J: reports [6]", + "variant": "default" + }, + { + "id": "group-em-em", + "from": "group-em", + "to": "em", + "label": "J: reports [7]", + "variant": "default" + }, + { + "id": "em-engineers", + "from": "em", + "to": "engineers", + "label": "J: leads [7]", + "variant": "default" + }, + { + "id": "cto-ai-architect", + "from": "cto", + "to": "ai-architect", + "label": "J: direct [8]", + "variant": "default" + }, + { + "id": "coo-ops-qa", + "from": "coo", + "to": "ops-qa", + "label": "J: direct [11]", + "variant": "default" + }, + { + "id": "cmo-brand-lead", + "from": "cmo", + "to": "brand-lead", + "label": "J: direct [12]", + "variant": "default" + } + ], + "cards": [ + { + "dot": "cyan", + "title": "Read manager → role/team", + "items": [ + "J: explicitly advertised reporting/leadership, not a filled-role roster.", + "Solid lines cite job postings; upward lines not sourced are omitted." + ] + }, + { + "dot": "amber", + "title": "Only one assumed connection", + "items": [ + "CTO → Head of Engineering is assumed (dashed).", + "AI Architect starts solo; no established AI department is asserted." + ] + } + ] +} diff --git a/diagrams/organization-structure.architecture.json b/diagrams/organization-structure.architecture.json index be7ba43..662f947 100644 --- a/diagrams/organization-structure.architecture.json +++ b/diagrams/organization-structure.architecture.json @@ -2,22 +2,32 @@ "schema_version": 1, "diagram_type": "architecture", "meta": { - "title": "Illustrative organization structure", + "title": "Eldorado — departments and team evidence", "output": "static/diagrams/organization-structure/index.html", - "quality_profile": "showcase" + "quality_profile": "showcase", + "legend": { + "entries": { + "backend": { + "label": "E: evidenced function" + }, + "frontend": { + "label": "J: advertised role" + } + } + } }, "components": [ { - "id": "leadership", + "id": "management", "type": "backend", - "label": "Example leadership", - "sublabel": "Illustrative only", + "label": "Management", + "sublabel": "E: CEO / COO named [1]", "pos": [ - 320, + 660, 40 ], "size": [ - 200, + 320, 80 ] }, @@ -25,27 +35,27 @@ "id": "product", "type": "backend", "label": "Product", - "sublabel": "Example function", + "sublabel": "E: careers category [4]", "pos": [ 40, - 260 + 280 ], "size": [ - 200, + 240, 80 ] }, { - "id": "engineering", + "id": "technology", "type": "backend", - "label": "Engineering", - "sublabel": "Example function", + "label": "Technology", + "sublabel": "E: careers category [4]", "pos": [ 320, - 260 + 280 ], "size": [ - 200, + 240, 80 ] }, @@ -53,41 +63,171 @@ "id": "operations", "type": "backend", "label": "Operations", - "sublabel": "Example function", + "sublabel": "E: careers category [4]", "pos": [ 600, - 260 + 280 ], "size": [ - 200, + 240, + 80 + ] + }, + { + "id": "marketing", + "type": "backend", + "label": "Marketing", + "sublabel": "E: careers category [4]", + "pos": [ + 880, + 280 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "finance", + "type": "backend", + "label": "Finance & Accounting", + "sublabel": "E: careers category [4]", + "pos": [ + 1160, + 280 + ], + "size": [ + 240, + 80 + ] + }, + { + "id": "people", + "type": "backend", + "label": "HR & Administration", + "sublabel": "E: careers category [4]", + "pos": [ + 1440, + 280 + ], + "size": [ + 240, 80 ] } ], "connections": [ { - "id": "leadership-product", - "from": "leadership", - "to": "product" + "id": "management-product", + "from": "management", + "to": "product", + "label": "A: placement", + "variant": "dashed" }, { - "id": "leadership-engineering", - "from": "leadership", - "to": "engineering" + "id": "management-technology", + "from": "management", + "to": "technology", + "label": "A: placement", + "variant": "dashed" }, { - "id": "leadership-operations", - "from": "leadership", - "to": "operations" + "id": "management-operations", + "from": "management", + "to": "operations", + "label": "A: placement", + "variant": "dashed" + }, + { + "id": "management-marketing", + "from": "management", + "to": "marketing", + "label": "A: placement", + "variant": "dashed" + }, + { + "id": "management-finance", + "from": "management", + "to": "finance", + "label": "A: placement", + "variant": "dashed" + }, + { + "id": "management-people", + "from": "management", + "to": "people", + "label": "A: placement", + "variant": "dashed" } ], "cards": [ { "dot": "amber", - "title": "Test diagram \u2014 not a confirmed structure", + "title": "Not a verified employee roster — 2026-10-02", "items": [ - "All roles and relationships are illustrative.", - "Actual Eldorado teams and reporting lines remain to be defined." + "E = evidenced team/function; J = job-advertised; A = assumed.", + "All dashed department placements are planning assumptions.", + "Source numbers refer to the Structure page; vacancies do not prove occupancy." + ] + }, + { + "dot": "cyan", + "title": "Product", + "items": [ + "E: Order/Orders; Categories design [13,14]", + "E: Data Team / J: ranking role [9]", + "J: seller-platform domain [15]", + "A: Sellers & Operations squad" + ] + }, + { + "dot": "amber", + "title": "Technology", + "items": [ + "J: engineering management chain [6,7]", + "J: AI Architect — solo start [8]", + "J: IT Engineer; Technical Architect [8,10]", + "A: platform/reliability capability group" + ] + }, + { + "dot": "cyan", + "title": "Operations", + "items": [ + "E: Customer Support [11]", + "E: Trust & Resolution; Risk & Fraud [11]", + "J: operational QA directly to COO [11]", + "A: wider COO ownership/lead escalation" + ] + }, + { + "dot": "amber", + "title": "Marketing", + "items": [ + "J: Brand Lead directly to CMO [12]", + "E: Creative; SEO; PPC & Affiliate [12]", + "E: Influencer; CRM; community [12]", + "A: separate workstream boundaries" + ] + }, + { + "dot": "cyan", + "title": "Finance & Accounting", + "items": [ + "E: Finance team [5]", + "J: CFO hiring mandate [5]", + "A: FP&A; Accounting/Tax/Controls", + "A: Treasury / Payment Operations" + ] + }, + { + "dot": "amber", + "title": "HR & Administration", + "items": [ + "E: Talent Acquisition [16]", + "A: People Operations", + "A: Office / Administration", + "A: HR leadership reporting line" ] } ] diff --git a/docs/contribution/diagrams.md b/docs/contribution/diagrams.md index 32af7fe..20159fb 100644 --- a/docs/contribution/diagrams.md +++ b/docs/contribution/diagrams.md @@ -9,13 +9,13 @@ description: Author typed JSON diagrams and embed their local interactive viewer | Diagram type | Intended use | | --- | --- | -| Architecture | Components, boundaries and relationships; also suitable for this illustrative structure test | +| Architecture | Components, boundaries and relationships; also used for the evidence-labeled organization views | | Workflow | Processes, branches and approval gates | | Sequence | Participants and ordered messages | | Dataflow | Sources, processing and destinations | | Lifecycle | States and transitions | -The standalone viewer provides pan/zoom, node inspection, search/focus, relationship tracing, light/dark themes, and an export menu. Motion is opt-in. The Organization example exercises architecture mode; other diagram types use the same build interface but do not yet have portal-specific examples. Browser-dependent exports such as video are not acceptance-tested by this integration. +The standalone viewer provides pan/zoom, node inspection, search/focus, relationship tracing, light/dark themes, and an export menu. Motion is opt-in. The Organization views exercise architecture mode; other diagram types use the same build interface but do not yet have portal-specific examples. Browser-dependent exports such as video are not acceptance-tested by this integration. ## Author a diagram @@ -34,7 +34,7 @@ pnpm build ```mdx import ArchifyDiagram from '@site/src/components/ArchifyDiagram'; - + ``` Supply a text alternative below each diagram. The wrapper uses a local, base-path-aware iframe with a descriptive title, scripts and downloads enabled, and no same-origin or parent-navigation permissions. The Open full viewer button expands the diagram in a full-screen modal on the current page, with the same iframe sandbox. Close it with the Close button or Escape; focus returns to the opener. It does not open a new tab. The separate standalone HTML asset remains directly addressable and is not itself iframe-sandboxed, so publish only reviewed, trusted diagrams. Generated output is ignored by Git and rebuilt in CI. diff --git a/docs/organization/structure.mdx b/docs/organization/structure.mdx index b1ce824..dac41ca 100644 --- a/docs/organization/structure.mdx +++ b/docs/organization/structure.mdx @@ -1,19 +1,101 @@ --- title: Structure -description: Explore an illustrative organization diagram with the Archify viewer. -slug: /structure +description: Distinguish Eldorado’s publicly evidenced organization from advertised roles and planning assumptions. --- import ArchifyDiagram from '@site/src/components/ArchifyDiagram'; -:::note Illustrative integration example -This is **not Eldorado’s confirmed organization chart**. The roles and relationships below are test data demonstrating the diagram capability. Actual teams, reporting lines, and AI responsibilities will be defined separately. -::: +**Research snapshot: 2026-10-02.** This is a public-evidence reconstruction for AI strategy planning, **not a verified employee roster** or an internally approved organization chart. - +## What is known -Select a node to inspect it. Use the viewer’s search, zoom, theme, and export controls, or open the full viewer for more space. +Eldorado names **Vladas Jurkevičius — co-founder and CEO** and **Lukas Deksnys — co-founder and COO** on its official About page.[1] -## Text alternative +Its official careers site uses seven hiring categories: **Management, Product, Technology, Operations, Marketing, Finance & Accounting, and HR & Administration**. Those labels are directly evidenced; treating them as six peer departments beneath Management is a planning arrangement, not a published reporting hierarchy.[4] -The example connects **Example leadership** to three sample functions: **Product**, **Engineering**, and **Operations**. These links demonstrate structure; they do not assert real reporting relationships at Eldorado. +### Evidence legend + +- **E — Publicly evidenced:** a named leader, team, function or careers category explicitly appears in an official source. This does not establish every reporting relationship. +- **J — Job-advertised:** a vacancy describes a role, mandate or reporting line. The position may be unfilled or newly created. +- **A — Assumed:** a proposed grouping or missing team boundary used for planning, not a claim about Eldorado’s current structure. Dashed connectors identify assumed placements. + +## Department overview + + + +**Text alternative:** Management is shown above Product, Technology, Operations, Marketing, Finance & Accounting, and HR & Administration. All six placements beneath Management are assumed. The department names come from the careers taxonomy; the notes in the viewer identify evidenced teams and proposed subdivisions. This view does not assign every function directly to the CEO or COO. + +## Departments and teams + +The following separates **named teams** from **roles, capabilities and domains**. A function mentioned in a vacancy is not automatically a separately staffed team. + +| Department / function | Publicly evidenced teams, roles or domains | Assumed completion for planning | +| --- | --- | --- | +| **Management** | **E:** CEO Vladas Jurkevičius and COO Lukas Deksnys. **J:** CTO and CMO are referenced as reporting managers.[1][8][12] CFO is advertised.[5] No incumbent names are inferred for those three roles. | **A:** a leadership coordination layer across the six functions. Exact executive reporting lines, Board membership and decision rights remain unverified. | +| **Product** | **E:** Order/Orders team; Categories design team, with Boosting & Currency scope; Data Team appears in the ranking Data Scientist vacancy metadata. Data classification and product design evidence.[9][13][14] **J:** Sellers and Operations product-owner domain, including Seller Portal, integrations, onboarding, balances/withdrawals, invoicing and support tooling.[15] | **A:** treat Sellers & Operations as a cross-functional product squad for planning, not a proven standalone team. Do not duplicate Data as a separate peer department. | +| **Technology** | **J:** Head of Engineering → Group Engineering Managers → Engineering Managers → engineers. AI Architect reports to CTO and starts solo. Technical Architect is named as an infrastructure/security partner; IT Engineer is advertised for identity, device management and internal SaaS.[6][8][10] | **A:** CTO → Head of Engineering. Proposed shared platform/reliability and security capability groups, with staffing and reporting unverified. Do not turn AI Architect into an established AI department. | +| **Operations** | **E:** Customer Support, Trust & Resolution, Risk & Fraud. **J:** QA Specialist (Operations) reports directly to COO; separate support/resolution Team Lead mandates cover specialist teams.[11][17][18] | **A:** COO ownership of the wider Operations function and its team-lead escalation chain. Only the QA Specialist’s direct COO line is explicit in the reviewed sources. | +| **Marketing** | **J:** Brand Team Lead reports to CMO. **E:** the wider Marketing team names Creative, SEO, PPC & Affiliate, Influencer, and CRM; brand scope includes organic social, community and brand partnerships.[12] | **A:** model these named disciplines as planning workstreams under Marketing. Separate team managers, headcounts and each discipline’s direct CMO line are not established. | +| **Finance & Accounting** | **E:** Finance team / hiring category. **J:** CFO remit includes planning, reporting, cash/capital, tax, compliance, financial risk and payments; it describes partnership with CEO and Board, not an explicit reporting line.[5] | **A:** FP&A; Accounting/Tax/Controls; Treasury/Payment Operations as three capability groups. These are inferred subdivisions, not proven staffed teams. Financial risk is not the same thing as the Operations Risk & Fraud team. | +| **HR & Administration** | **E:** Talent Acquisition team / role category. **J:** full-cycle IT and non-IT recruitment, partnering with hiring managers.[16] | **A:** People Operations and Office/Administration alongside Talent Acquisition. Separate teams and the HR leader’s reporting line remain unverified. | + +The Sellers and Operations posting establishes a **product domain**, not a named Sellers department. Its mandate crosses seller-facing features, operational tooling and marketplace infrastructure.[15] + +## Reporting lines supported by vacancies + + + +**Read arrows as manager → role/team.** Solid **J** connectors are explicitly described in vacancies. The dashed **A** link between CTO and Head of Engineering is the only inferred link in this diagram. Separate rows are not connected because their upward reporting lines were not established. + +| Manager / leader | Role or team below it | Status and scope | +| --- | --- | --- | +| Head of Engineering | Group Engineering Manager | **J:** explicitly reports directly to Head of Engineering; the vacancy describes managing 4–5 Engineering Managers.[6] | +| Group Engineering Manager | Engineering Manager | **J:** explicitly named manager in the Engineering Manager vacancy.[7] | +| Engineering Manager | Software engineers | **J:** leads a team of around five engineers. This is the advertised span, not a count of all current engineering teams.[7] | +| CTO | AI Architect | **J:** explicitly direct; a new individual-contributor role, starting solo with a possible future team.[8] | +| COO | QA Specialist (Operations) | **J:** explicitly direct; independent quality work across Customer Support, Trust & Resolution, and Risk & Fraud.[11] | +| CMO | Brand Team Lead | **J:** explicitly direct; brand, organic social, community and brand partnerships remit.[12] | +| Customer Support / Trust & Resolution Team Leads | Their specialists | **J:** support/resolution leadership advert describes teams of 5–10 specialists; the resolution-specific advert also states 5–10. Their own upward manager is not stated.[17][18] | +| CTO | Head of Engineering | **A:** plausible technology reporting arrangement, retained only as a planning assumption. | + +Product Owner, Tech Lead and Product Designer are described as collaborating on product direction. That is evidence of cross-functional work, **not** evidence that one line-manages the others.[13][14] + +## What this means for AI strategy + +**Research interpretation, not an approved roadmap:** use the evidenced organizational owners rather than inventing one central AI department. + +- **Engineering enablement:** the AI Architect vacancy focuses on engineering output, adoption, standards and security under the CTO—not ownership of every business AI initiative.[8] +- **Marketplace intelligence:** Product/Data has an advertised ranking and recommendations remit, including experimentation and learning-to-rank.[9] +- **Operations quality:** operational QA explicitly includes auditing AI-handled support and LLM-assisted scoring; customer support leadership includes AI-assisted support and automation.[11][17] +- **Planning assumption:** coordinate these three areas with Product, Operations, Technology and Finance owners. Whether to create a cross-company AI steering group is a future decision, not a finding about current organization. + +## Limits and validation questions + +- **No complete internal chart was found in the reviewed public sources.** This is not a claim that none exists. Research prioritized official About, careers, vacancy and legal pages; it is not an exhaustive employee or vacancy census. +- **Job postings are time-bound recruitment evidence.** A vacancy can describe a future role or team. Names, staffing, budgets and every executive reporting line still need company confirmation. +- **No reliable total headcount is asserted.** The careers homepage itself contains both “150+” and “200+” descriptions; do not use either to derive department sizes.[2] +- **Legal entities are not departments.** The Terms of Service names GWD Processing FZCO, Eldorado Sales LLC and Halfway House OÜ collectively as Eldorado. This establishes contracting language, not a parent/subsidiary hierarchy or the employing entity of each team.[3] +- **Keep scope distinctions:** marketplace Risk & Fraud, financial risk, AI security, and corporate compliance may collaborate but should not be collapsed into one assumed reporting chain. + +Before using this as an operating model, confirm: **(1)** which advertised roles are filled, **(2)** executive and functional reporting lines, **(3)** product squad membership and engineering matrix, **(4)** ownership of Payments, Legal/Compliance and Data, and **(5)** the real team roster and capacity. Replace each **A** only when evidence is supplied. + +## Sources + +[1] https://www.eldorado.gg/about-us — Eldorado About us +[2] https://careers.eldorado.gg — Eldorado Careers homepage +[3] https://www.eldorado.gg/terms-of-service — Eldorado Terms of Service +[4] https://careers.eldorado.gg/jobs — Eldorado Jobs — official hiring categories +[5] https://careers.eldorado.gg/jobs/8394692-chief-financial-officer — Chief Financial Officer +[6] https://careers.eldorado.gg/jobs/8376024-group-engineering-manager — Group Engineering Manager +[7] https://careers.eldorado.gg/jobs/8290012-engineering-manager — Engineering Manager +[8] https://careers.eldorado.gg/jobs/8175478-ai-architect — AI Architect +[9] https://careers.eldorado.gg/jobs/8261309-data-scientist-offer-ranking-recommendations — Data Scientist (Offer Ranking & Recommendations) +[10] https://careers.eldorado.gg/jobs/8363463-it-engineer — IT Engineer +[11] https://careers.eldorado.gg/jobs/8358613-qa-specialist-operations — QA Specialist (Operations) +[12] https://careers.eldorado.gg/jobs/8450323-brand-team-lead — Brand Team Lead +[13] https://careers.eldorado.gg/jobs/8404928-product-designer-orders-team — Product Designer (Orders team) +[14] https://careers.eldorado.gg/jobs/8253165-product-designer — Product Designer +[15] https://careers.eldorado.gg/jobs/8389376-product-owner-sellers-and-operations — Product Owner (Sellers and Operations) +[16] https://careers.eldorado.gg/jobs/8487069-talent-acquisition-partner-junior-mid — Talent Acquisition Partner (Junior - Mid) +[17] https://careers.eldorado.gg/jobs/8381712-customer-support-team-lead — Customer Support Team Lead +[18] https://careers.eldorado.gg/jobs/8483510-trust-resolution-team-lead — Trust & Resolution Team Lead diff --git a/research/organization/README.md b/research/organization/README.md new file mode 100644 index 0000000..fad8bee --- /dev/null +++ b/research/organization/README.md @@ -0,0 +1,9 @@ +# Organization research — 2026-10-02 + +Public-evidence reconstruction, not an approved internal org chart. The canonical reader-facing report is `docs/organization/structure.mdx`. `sources.json` preserves retrieved URLs, access dates and verbatim excerpts checked against fetched page text with the grounded-citations evidence matcher. No private employee data or application forms were accessed. + +E = publicly evidenced names/categories/functions; J = job-advertised roles and reporting lines, not proof of occupancy; A = planning assumptions. The diagrams carry the same distinction. Department placement beneath Management is a model, not a proven reporting chain. Legal entities and hiring categories must not be conflated with departments. + +Coverage: official About, careers index and selected job detail pages plus legal Terms. The jobs index was not treated as an exhaustive personnel roster. Search-engine discovery was unhelpful (Google traffic challenge; Bing irrelevant results); all factual findings rely on directly fetched official sources. Exact headcount and unnamed incumbents are deliberately omitted. Current-role dates are access dates, not proof of appointment dates. + +Update source excerpts and access dates, revise the report and both diagrams together, then run `pnpm verify`, `pnpm typecheck`, `pnpm build`, `pnpm verify:build` and browser checks before publication. Revalidate recruitment evidence rather than treating an old vacancy as a permanent org fact. diff --git a/research/organization/sources.json b/research/organization/sources.json new file mode 100644 index 0000000..d31ef56 --- /dev/null +++ b/research/organization/sources.json @@ -0,0 +1,261 @@ +{ + "version": 1, + "sources": [ + { + "id": 1, + "url": "https://www.eldorado.gg/about-us", + "title": "Eldorado About us", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Eldorado.gg was founded by two Lithuanian co-founders, Vladas Jurkevičius (CEO) and Lukas Deksnys (COO).", + "added": "2026-10-02" + } + ] + }, + { + "id": 2, + "url": "https://careers.eldorado.gg", + "title": "Eldorado Careers homepage", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "A global team of 150+ professionals shaping the future of in-game commerce at Eldorado.gg", + "added": "2026-10-02" + }, + { + "text": "A team of 200+ professionals", + "added": "2026-10-02" + } + ] + }, + { + "id": 3, + "url": "https://www.eldorado.gg/terms-of-service", + "title": "Eldorado Terms of Service", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Together, GWD Processing FZCO, Eldorado Sales LLC and Halfway House OÜ are collectively referred to in this Agreement as “Eldorado,” unless otherwise specified.", + "added": "2026-10-02" + } + ] + }, + { + "id": 4, + "url": "https://careers.eldorado.gg/jobs", + "title": "Eldorado Jobs — official hiring categories", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Finance & Accounting (1)\nHR & Administration (1)\nMarketing (2)\nOperations (5)\nProduct (3)\nTechnology (9)\nManagement", + "added": "2026-10-02" + } + ] + }, + { + "id": 5, + "url": "https://careers.eldorado.gg/jobs/8394692-chief-financial-officer", + "title": "Chief Financial Officer", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "This is a key executive role with a broad mandate across financial planning, reporting, cash and capital management, tax, compliance, risk, payments and the Finance team.", + "added": "2026-10-02" + } + ] + }, + { + "id": 6, + "url": "https://careers.eldorado.gg/jobs/8376024-group-engineering-manager", + "title": "Group Engineering Manager", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "We're growing and looking for a Group Engineering Manager to lead an engineering group of several teams, manage 4-5 Engineering Managers, and report directly to Head of Engineering.", + "added": "2026-10-02" + } + ] + }, + { + "id": 7, + "url": "https://careers.eldorado.gg/jobs/8290012-engineering-manager", + "title": "Engineering Manager", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "We’re growing and looking for an Engineering Manager to lead a team of around five software engineers and report to a Group Engineering Manager.", + "added": "2026-10-02" + } + ] + }, + { + "id": 8, + "url": "https://careers.eldorado.gg/jobs/8175478-ai-architect", + "title": "AI Architect", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "We're creating a new role at Eldorado.gg: AI Architect, reporting directly to the CTO.", + "added": "2026-10-02" + }, + { + "text": "You'll start solo: this is an individual-contributor role on paper, with outsized influence in practice. No direct reports required from day one, but a mandate that touches the whole organization.", + "added": "2026-10-02" + }, + { + "text": "Own the security posture of AI usage across engineering, in partnership with Technical Architect on infra and security.", + "added": "2026-10-02" + } + ] + }, + { + "id": 9, + "url": "https://careers.eldorado.gg/jobs/8261309-data-scientist-offer-ranking-recommendations", + "title": "Data Scientist (Offer Ranking & Recommendations)", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Team\nProduct\nRole\nData Team", + "added": "2026-10-02" + } + ] + }, + { + "id": 10, + "url": "https://careers.eldorado.gg/jobs/8363463-it-engineer", + "title": "IT Engineer", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Own the joiner–mover–leaver process end to end;", + "added": "2026-10-02" + } + ] + }, + { + "id": 11, + "url": "https://careers.eldorado.gg/jobs/8358613-qa-specialist-operations", + "title": "QA Specialist (Operations)", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Our Operations teams - Customer Support, Trust & Resolution, and Risk & Fraud - are scaling fast, and each measures quality its own way.", + "added": "2026-10-02" + }, + { + "text": "We're creating a new role at Eldorado.gg: QA Specialist (Operations), reporting directly to the COO.", + "added": "2026-10-02" + }, + { + "text": "Audit AI-handled support conversations and root-cause failures into content, routing, or model issues;", + "added": "2026-10-02" + } + ] + }, + { + "id": 12, + "url": "https://careers.eldorado.gg/jobs/8450323-brand-team-lead", + "title": "Brand Team Lead", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "You will manage a team of several people and report to our CMO.", + "added": "2026-10-02" + }, + { + "text": "Lead and develop a high-performing team spanning brand, organic social, community and brand partnerships;", + "added": "2026-10-02" + }, + { + "text": "Collaborate closely with the wider Marketing team (Creative, SEO, PPC & Affiliate, Influencer, CRM) as well as Product, Data, and other cross-functional stakeholders.", + "added": "2026-10-02" + } + ] + }, + { + "id": 13, + "url": "https://careers.eldorado.gg/jobs/8404928-product-designer-orders-team", + "title": "Product Designer (Orders team)", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "We're growing and looking for a Product Designer to join our Order team.", + "added": "2026-10-02" + }, + { + "text": "Shape product direction as an equal stakeholder alongside the Product Owner and Tech Lead, owning the end-to-end design process for the order page, dispute flows, and broader post-purchase delivery experience;", + "added": "2026-10-02" + } + ] + }, + { + "id": 14, + "url": "https://careers.eldorado.gg/jobs/8253165-product-designer", + "title": "Product Designer", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "We’re growing and looking for a Product Designer to join our Categories design team.", + "added": "2026-10-02" + } + ] + }, + { + "id": 15, + "url": "https://careers.eldorado.gg/jobs/8389376-product-owner-sellers-and-operations", + "title": "Product Owner (Sellers and Operations)", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "You’ll own the seller platform domain — the systems and tools that power how sellers operate on Eldorado.", + "added": "2026-10-02" + }, + { + "text": "This includes Seller Portal and dashboards, direct seller integrations, onboarding and verification tools, balances and withdrawals, invoicing, and customer support tooling.", + "added": "2026-10-02" + } + ] + }, + { + "id": 16, + "url": "https://careers.eldorado.gg/jobs/8487069-talent-acquisition-partner-junior-mid", + "title": "Talent Acquisition Partner (Junior - Mid)", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Team\nHR & Administration\nRole\nTalent Acquisition", + "added": "2026-10-02" + } + ] + }, + { + "id": 17, + "url": "https://careers.eldorado.gg/jobs/8381712-customer-support-team-lead", + "title": "Customer Support Team Lead", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "We’re growing our Customer Operations function and looking for two experienced Team Leads to join our Customer Support and Trust & Resolution teams.", + "added": "2026-10-02" + }, + { + "text": "Explore AI-assisted support and automation opportunities;", + "added": "2026-10-02" + } + ] + }, + { + "id": 18, + "url": "https://careers.eldorado.gg/jobs/8483510-trust-resolution-team-lead", + "title": "Trust & Resolution Team Lead", + "accessed": "2026-10-02", + "quotes": [ + { + "text": "Lead, coach, and grow a team of 5-10 Trust & Resolution Specialists;", + "added": "2026-10-02" + } + ] + } + ] +} diff --git a/scripts/portal.test.mjs b/scripts/portal.test.mjs index 91f922c..2f75c55 100644 --- a/scripts/portal.test.mjs +++ b/scripts/portal.test.mjs @@ -59,11 +59,24 @@ test('Archify is pinned, licensed and rebuilt, not a remote embed', () => { assert(!wrapper.includes('target="_blank"')); assert(wrapper.includes('Close full-screen diagram')); }); -test('example is explicitly illustrative and contains valid connected nodes', () => { - const spec = JSON.parse(read('diagrams/organization-structure.architecture.json')); - assert(spec.meta.title.includes('Illustrative')); - const ids = new Set(spec.components.map(n => n.id)); - assert.equal(ids.size, spec.components.length); - for (const edge of spec.connections) assert(ids.has(edge.from) && ids.has(edge.to)); - assert(read('docs/organization/structure.mdx').includes('not Eldorado’s confirmed organization chart')); +test('organization research distinguishes evidence, advertised roles and assumptions', () => { + const page = read('docs/organization/structure.mdx'); + assert(page.includes('2026-10-02') && page.includes('not a verified employee roster')); + assert(page.includes('Vladas Jurkevičius') && page.includes('Lukas Deksnys')); + assert(page.includes('Assumed') && page.includes('Publicly evidenced')); + assert(!page.includes('Illustrative integration example')); + const ledger = JSON.parse(read('research/organization/sources.json')); + const citations = [...page.split('## Sources')[0].matchAll(/\[(\d+)\]/g)].map(m => Number(m[1])); + assert(citations.length > 10); + for (const id of citations) assert(ledger.sources.some(s => s.id === id && s.quotes?.length), `Missing evidence ${id}`); + for (const name of ['organization-structure', 'organization-reporting']) { + const spec = JSON.parse(read(`diagrams/${name}.architecture.json`)); + const ids = new Set(spec.components.map(n => n.id)); + assert.equal(ids.size, spec.components.length); + for (const edge of spec.connections) { + assert(ids.has(edge.from) && ids.has(edge.to)); + assert(edge.label.startsWith('J:') || edge.label.startsWith('A:')); + if (edge.label.startsWith('A:')) assert.equal(edge.variant, 'dashed'); + } + } }); diff --git a/scripts/verify.mjs b/scripts/verify.mjs index 46304da..42014f0 100644 --- a/scripts/verify.mjs +++ b/scripts/verify.mjs @@ -21,7 +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('Example leadership') && diagram.includes('node-engineering')); + assert(diagram.includes('A: placement') && diagram.includes('node-technology')); + assert(!diagram.includes('Example leadership')); + const reporting = read('build/diagrams/organization-reporting/index.html'); + assert(reporting.includes('AI Architect') && reporting.includes('A: assumed')); + const structure = read('build/organization/structure/index.html'); + assert(structure.includes('Vladas Jurkevičius') && structure.includes('not a verified employee roster')); + assert(!structure.includes('Illustrative integration example')); assert(!diagram.includes('/opt/data/'), 'No build paths in published diagrams'); const home = read('build/index.html'); assert(/]*>Eldorado Powered By AI<\/title>/.test(home));