Phase 1 Architecture & Delivery Plan
Consumer-first real estate intelligence for The Pearl Island, Doha.
Scope, complexity, cost, team — for Jim's decision.
Prepared
Evgeniy Dubskiy — ERARTA FZE
Updated
May 2026
Region
GCP me-central2 · Doha
Authority
Tamleek Plus PRD v1.0
Confidential — mutual NDA in force (ERARTA FZE, signed 2026-05-06)
Not for distribution without Jim Briggs written consent
Slide 02 — What we are building
Two surfaces. One data layer. Consumer-first.
Consumer experience and agent workspace ship together — neither works without the other. The Pearl Island only at launch.
Consumer experience
Free at launch
Search · Listing Valuation Tool · Intelligence Card
Sale-primary, rental yield-derived
Agent workspace
QAR 499 / seat / mo
Building profiles · HITL queue · Card review
Broker license verified vs Aqarat on first login
Investor off-market
QAR 2,500–3,500 / mo
PDF deal memo · Email delivery only · No dashboard UI
"Phase 1 is a consumer-first real estate intelligence platform powered by MoJ sale data, agent-maintained building intelligence, and yield-derived rental context. Consumer experience is the north-star. Agent workspace is what makes it trustworthy. Neither works without the other. Build this. Ship it. Prove the quality gates. Then expand."
— PRD v1.0 §15 (binding)
Phase 1 target outcomeTargetStatus framing
Consumer users in genuine decision context5Quality gate
Paying broker seats≥ 3Primary revenue
Paying investor subscribers≥ 2Gated subscription
Daily report recipients≥ 20Free email
Pearl buildings with approved Intelligence Cards≥ 20Drafter gate
Slide 03 — Architecture
Five layers on a single governed data platform
All compute in GCP me-central2 (Doha) — mandatory for Qatar PDPPL Article 13 data residency.
Applications
Consumer web Agent workspace WhatsApp Task OS (Phase 2) B2B Intelligence API (Phase 2)
Intelligence — Phase 1 subset
Assessment Drafter (Gemini 2.0 Flash) Anchor Confidence Engine Daily Report Generator text-embedding-005 (tiebreaker) Graph RAG (Phase 2)
GCP Data Platform — me-central2
BigQuery (system of record) Cloud SQL Postgres (T-class PII) Firestore (hot cache) Cloud Run Pub/Sub Cloud Scheduler Document AI Custom Extractor Firebase Auth + Custom Claims
Data Sources — Tier 1 Core (governing)
MoJ Weekly Bulletin Agent Building Profiles Aqarat Broker Registry PSA / QCB REPI Google Maps Platform Portal listings (enrichment only) Aqarat Lease Records (T2, conditional)
Trust + Control Plane (cross-cutting)
Source Registry PDPPL Vault (vault_id FK) HITL Queue Audit Logs (1yr+)
Day-one infra deliverable
Qatar-egress proxy VM
Compute Engine in me-central2, static Qatari IP.
Replaces remote desktop into Jim's machine.
Dual use: production MoJ scraping + developer VPN.
Three-ID system (replaces QPID)
  • listing_id — raw record, at ingestion
  • property_cluster_id — probabilistic unit grouping
  • market_anchor_id — benchmark context
QPID formally deferred to Phase 3 per PRD §15
Not in Phase 1
QPID · B2B API · ADK multi-agent · BigQuery Graph · AVM · Lusail / West Bay · Mortgage processing · Native mobile · Consumer premium · Investor dashboard UI
Slide 04 — Current prototype audit
What exists today: a Proof of Intelligence, not a product
Live FastAPI demo on Railway, audited 2026-05-11. Concept validated. Production architecture still to build.
What works — real data, just queried
MoJ records8,654 tx
Date rangeJan 2025 — Feb 2026 (14 mo)
Municipalities · districts18 · 167
Avg deal value3.12M QAR
Avg PSM (all stock)27,367 QAR/m²
The Pearl Island44,188 QAR/m² · 1,106 tx
Tests passing63 unit · 13 integration · 7/9 E2E
API endpoints live19
What carries over (preserves Jim's investment)
  • 8,654 MoJ records → BigQuery raw.moj_transactions
  • PSM-aggregation SQL → BQ Scheduled Query
  • 10%-below-market threshold — matches PRD §8.3
  • ROI / yield formula — net yield correct per PRD §9.3
  • Investor profile schema → consumer/investor model
  • SSE "Agent Thinking" UX — reuse for Drafter live status
D1 gate — likely viable for common buckets. The Pearl Island shows 1,106 transactions over 14 months. At a 6-way sub-precinct split this averages ~150-200 per subzone — encouraging for mainstream categories (Porto Arabia × 1-2BR, Viva Bahriya × 2-3BR). Once split by bedroom count, thin tail buckets (Fox Hills × 4BR × villa, Qanat Quartier × studio) may fall below the ≥5 threshold and need Branch B fallback. Pivot table needed before claiming the gate is closed — Week-1 BigQuery query against raw.moj_transactions.
What is broken / out of specSeverity
Four different Pearl PSM values coexist in the DB: 13,947 (AI Analyst SQL using ILIKE '%Pearl%' AVG of all property types) · 44,188 (chart, by district) · 58,164 (listings, district="The Pearl") · 62,285 (applied to mis-tagged "Doha" Pearl listings). 3.16× spread — data governance failure, not benchmark tuning. Critical
No subzone anchoring · No Three-ID system · No confidence levels (every verdict "100/100") High
No Assessment Drafter (match-reasons templated, not LLM-generated) High
Hosted on Railway — violates PDPPL Article 13 for any real PII. Must move to me-central2 before consumer launch. Compliance
Auth = shared HTTP Basic password · No Firebase · No broker license check vs Aqarat RE-Law
Google Maps API key returned by /api/config — exposed to any authenticated client. Rotate. Security
Listings are Polish-language LuxuryEstate scrapes — won't pass Qatar consumer UX UX
No agent workspace · No off-market pipeline · No daily report · No HITL queue Scope gap
Slide 05 — Source governance
Only Tier 1 Core sources may govern verdicts
Section 2 Supremacy (PRD §2): any source not in PRD §2 is invalid on its face. Verdicts, confidence labels, cited comparables — Tier 1 Core only.
SourceTier & RoleWhat it can doPhase
MoJ Weekly Bulletin T1 Core Governs sale benchmarks, transaction volume 1A
Agent Building Profiles T1 Proprietary Governs building intelligence — proprietary moat 1A
Aqarat Broker Registry T1 Enrichment Broker authentication only 1A
PSA · QCB REPI · Google Maps · Schools T1 Enrichment Context, no verdict changes 1A
Portal listings (scraped) T5 Enrichment Listing velocity, asking/sold spread — enrichment only 1A stretch
Aqarat Lease Records T2 conditional Building rental benchmarks IF unit-level schema confirmed 1B conditional
MoJ REGIS · Kahramaa · CGIS T3–T4 Blocked Do not engineer against in Phase 1 Phase 3
Binding rule (PRD §1)
Only Tier 1 Core sources determine product verdicts. Enrichment sources add context — they do not change a confidence label or create a cited claim.
Agent Building Profiles — the moat
No public scraper can replicate this. HITL-maintained by licensed Pearl brokers. Every profile is human-reviewed before a building gets an Intelligence Card.
Source Promotion Protocol
Tier 2 → Tier 1 promotion requires: data agreement + schema review + 30-day quality assessment + bilateral co-founder sign-off. A recorded human decision, never a code change.
Slide 06 — The Pearl decomposition
6 sub-precincts · broker-validated yield matrix
All Pearl buildings mapped to a sub-precinct. Yield matrix populates only after validation with ≥3 Pearl brokers.
Sub-PrecinctGross Yield RangeLaunch MidpointConfidence
Porto Arabia 5.2 – 5.8% 5.5% High
Viva Bahriya 5.5 – 6.0% 5.75% High
Medina Centrale 5.8 – 6.2% 6.0% Medium
Qanat Quartier 5.5 – 6.0% 5.75% Medium
Abraj Quartiers 6.0 – 6.5% 6.25% Medium
Fox Hills 6.5 – 7.2% 6.85% Low — validate first
Yield formula (Phase 1A): Annual Rent = Median_PSM(subzone, bedrooms) × Area_sqm × Yield_Midpoint(subzone)
Displayed as monthly range ±10%. Labeled DERIVED until Phase 1B Aqarat data is confirmed.
Anchor confidence hierarchy
  • HIGH Building (≥3 leases) — Phase 1B only
  • PROBABLE Subzone (MoJ ≥5 tx) — Branch A
  • LOW Zone (MoJ ≥10 tx) — Branch B, range only
  • DERIVED Yield-derived, no comps
  • UNKNOWN Verdict suppressed
Confidence suppression rule
Enforced at the data layer, not the UI layer. When anchor_level = zone or yield_derived, the Drafter verdict paragraph is suppressed.
D1 gate update
With 1,106 Pearl transactions in the prototype DB across 14 months, Branch A (subzone primary) is highly likely viable. Confirm with one BQ query Week 1.
Slide 07 — Scope by workstream
Five tracks · graded by complexity, not by week
Phase 1 timeline is "build as we go" per Jim's direction. What matters is which workstreams carry the most engineering risk — they need senior attention, peer review, and quality gates.
Foundation
Low
GCP project setup · IAM · Workload Identity Federation · BigQuery + Cloud SQL schema · Pub/Sub topics · Cloud Scheduler crons · Terraform IaC · me-central2 region pinning
Data pipeline
High
Qatar-egress proxy VM (production scraper + dev VPN) · MoJ Bulletin ingest · Document AI ar-QA fine-tuning (≥92% accuracy target) · Listing normalization · Cluster matching (Three-ID assignment) · Anchor computation · Yield derivation BQ Scheduled Query
AI / Assessment Drafter
High
Drafter prompt v1 against golden card set · 75% agreement merge gate · Auto-rollback on production agreement drop · Confidence suppression rules at data layer · text-embedding-005 for tiebreaker · Gemini 2.0 Flash via Vertex AI
Product surface
Medium
Consumer experience (React, 3-column workspace per PRD Visual 2) · Search + Listing Valuation Tool + Intelligence Card · Agent workspace (admin UI, HITL queue, building profile form) · Off-market submission form + WeasyPrint PDF · Daily report HTML email pipeline
Compliance + Security
High
PDPPL Article 13: T-class field separation · vault_id FK pattern · CMEK on Cloud SQL · T-class never in BigQuery (continuous trip-wire test) · RE-Law 22/2017: Aqarat broker license check at first login · Firebase Custom Claims · workspace ACL · Security baseline: Cloud Armor · VPC Service Controls · IAP-only SSH · audit logs 1yr+
Production Quality Plane (cross-cutting)
Medium
Observability (Grafana + Prometheus + Loki) · QA agent for PRs and live infra · GA4 + privacy-safe analytics · Playwright E2E suite as merge gate. See next slide.
Slide 08 — Production quality plane
Four systems that turn a demo into a product
Neither PRD nor SoftKraft brief specify how the platform stays operable after it ships. This is the gap. These four systems are non-negotiable for Phase 1.
Observability — Grafana stack
Prometheus on every Cloud Run service · Loki for structured JSON logs · OpenTelemetry traces · Grafana dashboards · Telegram alerts in @ErartaServicesBot
Dashboards: Pipeline health · Drafter quality (75% gate live) · Consumer surface p50/p95 · Broker workspace activity · Business KPIs for Jim
Critical alerts: Drafter agreement < 75% (auto-rollback) · HITL backlog > 48h · DocAI confidence drop > 5pp
Pattern reused from Luna · Zer0 · Aidi production stacks
Testability — QA agent
Two layers: PR QA agent (per-commit diff review) + Infra QA agent (daily live audit)
PR layer: Schema · IAM · Firestore rules · Drafter prompt diff vs golden cards · BQ Row Access Policies · source registry promotion checks. Emits qa:pass / needs-work / review labels + Telegram.
Infra layer: All services in me-central2? · Any T-class in BigQuery? · Proxy VM IP unchanged? · CMEK rotation SLA? · Drafter prod version matches tagged?
Replaces ~10-15h/month of Evgeniy's review time
Analytics — Google Analytics 4 + PostHog backup
GA4 on consumer surface · self-hosted PostHog/Plausible on me-central2 for broker workspace (compliance-sensitive data stays in Qatar)
Event taxonomy designed against PRD verdict thresholds:
intelligence_card_view (slug, anchor_level, verdict) · verdict_clicked (drilldown to comparables) · consult_broker_clicked (handoff to broker workspace = monetization loop) · daily_report_opened

Privacy: IP anonymization · no PII in dimensions · PDPPL Art. 22 consent banner · T-class fields never sent
E2E test suite — Playwright as merge gate
Pytest + pytest-playwright + pytest-asyncio (stack already validated in prototype: 7/9 PASS)
Mandatory flows (block launch if failing):
• Consumer search → card view → anchor_level + verdict suppression
• Consumer ROI calc — all mortgage scenarios match PRD §9.3
• Broker workspace login + Aqarat license claim check
• Building Profile form → HITL queue → no card until approval
Drafter golden card eval ≥ 75% — this is the merge gate
• Off-market PDF generation + email delivery
• Daily report cron + Gemini commentary coherence
PDPPL trip-wire: try inserting T-class into BigQuery → must be denied
Slide 09 — Tech stack
Stack locked by PRD §6.1 — these are not choices
The region (me-central2, Doha) is mandated by Qatar PDPPL Law 13/2016 Article 13. All components follow from this constraint.
ComponentChoiceRationale
RegionGCP me-central2 DohaPDPPL Article 13 data residency — non-negotiable
WarehouseBigQuerySystem of record. Analytics + vector search + ML in one engine.
ComputeCloud Run + Cloud SchedulerStateless, scale-to-zero, inspectable
Event busPub/SubNative GCP. Connects all pipeline stages.
Operational DBCloud SQL PostgresHITL queue, auth, subscription state, audit logs
Hot cacheFirestorePre-assembled Intelligence Cards. Low-latency consumer reads.
Doc extractionDocument AI Custom ExtractorMoJ Arabic PDF. ar-QA locale. Target ≥92% accuracy on price/sqm.
LLMGemini 2.0 Flash (Vertex AI)Assessment Drafter. Temperature 0.3. Price/performance.
Embeddingstext-embedding-005Building-name similarity. HITL tiebreaker only.
AuthFirebase Auth + GCP IdentityCustom claims. Broker license verification on first login.
BackendPython 3.12 + FastAPIAlready in prototype. Carries over.
FrontendReactMigration from prototype static HTML/JS
Critical BQ constraint (PRD §6.2)
BigQuery Continuous Queries cannot use UDFs, EXISTS subqueries, recursive CTEs, external tables, or materialized views.

Yield derivation and anchor aggregations run as Scheduled Queries, not CQs.
Proxy VM dual use
Compute Engine e2-medium, static Qatari IP.
Prod: Squid HTTP proxy for Cloud Run MoJ scraper.
Dev: Tailscale subnet router — Evgeniy, Monika, Igor access MoJ portal without Jim's desktop.
SSH via IAP only.
PromptOps discipline
Drafter prompt versioned with semantic versioning. Eval against 5-card golden set on every merge.

Merge blocked if agreement < 75%.
Auto-rollback if running rate drops.
Slide 10 — Compliance
Two laws. Non-negotiable. Built into data model.
Compliance is enforced at the data layer — not UI flags, not developer self-discipline. QA agent monitors live infra for violations continuously.
Qatar PDPPL Law 13/2016 — Article 13
QAR 1,000,000 – 5,000,000
All personal data must be processed on Qatar-territory infrastructure.
This is why all compute is in me-central2 (Doha) — not a preference.
T-class (PII) fields — implementation
Field classStorageBigQuery
P — Public BQ + Firestore Allowed
S — Sensitive Cloud SQL (RLS) Role-gated
T — PII Cloud SQL CMEK
vault_id FK only
NEVER in BigQuery
T-class: buyer/seller names, tenant PII, landlord personal details — pseudonymized at ingestion via vault_id FK pattern.
RE Brokerage Law 22/2017
Agent workspace accessible only to actively licensed brokers.
On first login: license number verified against Aqarat registry.
License status written to Firebase Custom Claims.
All workspace routes check claims.broker_license_active == true.
Expired license = instant workspace lockout, no manual override.
Security baselines
  • Secrets in Google Secret Manager — never git, never CI logs
  • Workload Identity Federation for GitHub Actions — no JSON keys
  • Cloud Armor in front of public endpoints with MoJ-derived data
  • VPC Service Controls for me-central2 BigQuery datasets
  • Cloud Audit Logs retained 1 year minimum, weekly review
  • SSH to VMs via IAP only — no public port 22
  • Continuous PDPPL trip-wire test in E2E suite
Slide 11 — SoftKraft vendor audit
Who SoftKraft is · what they have shipped · what is first-time territory
Public research compiled 2026-05-11 from SoftKraft's own site, their Clutch profile, and LinkedIn. Three guardrails recommended before commitment.
Company snapshot
Founded2015
HQBielsko-Biała, PL
Team (own claim)50+ engineers
Team (Clutch verified)10-49
Clutch rating4.9/5 · 24 reviews
Hourly rate$50-99/h (Clutch)
Project minimum$10,000+
Clients60+ · 70% USA
Leadership
  • Marek Petrykowski — CEO
  • Błażej Kosmowski — CTO
  • Mateusz Gołuch — Head of Service Delivery
  • Justyna Kopeć — Operations Manager
  • Tomasz Bąk — Product Manager
Tamleek team — confirm before signing
  • Michał Nowak · PM
    6 yrs PM + 1 yr QA, Kraków. Mid-level, not in published leadership. OK for Phase 1, no escalation channel through him.
  • "Monika" · AI Engineer (per brief)
    A "Monika Sadlok" appears on softkraft.co — but as a DevOps engineer, not AI. Critical: confirm full name + AI/ML background before Phase 1 sign-off.
What SoftKraft has actually shipped (verified)
  • eBillity (2025): AI microservice — time-tracking parsing, Python + APIs
  • Paperplanes (2024-now): AWS migration + Dagster ETL
  • SaaS MVP for data analytics (anonymized client, 2023-now)
  • Tech stack: Python · React · AWS-heavy · DevOps · BI dashboards
First-time territory for Phase 1
PRD §6.1 requirementPublic evidence
GCP me-central2 productionNone — all reviews AWS
Vertex AI / Gemini 2.0 FlashNone published
Document AI Arabic (ar-QA)None — no Arabic NLP
BigQuery production scaleNone — listed but no case study
Qatar / MENA projectZero
PDPPL / data-residency workZero
They are competent and well-reviewed — but this stack and region are first-time territory, not a repeat pattern.
Three guardrails before commitment
  • Confirm Monika's identity, role, AI specialization — if she is DevOps not AI, the 200-250h estimate is doubly suspect
  • Evgeniy is technical reviewer on Document AI accuracy, Drafter prompts, PDPPL design — Erarta covers SoftKraft's weakest areas via LUNA / ZER0 / AIDI experience
  • Scope-clarity contract — D0.2 must state which PRD features are inside 200-250h vs deferred. No silent scope reduction.
Slide 12 — Data Engineer role
What the Data Engineer owns · do we still need an AI Engineer?
Jim's instinct to hire a dedicated Data Engineer is correct. The data pipeline is the platform foundation — without it, no Drafter, no Intelligence Cards, no product. But the AI Engineer role does not disappear; it narrows.
Data Engineer owns (Phase 1) — all pipeline workstreams
WorkstreamComplexity
Qatar-egress proxy VM · Day-1 prerequisite
All MoJ/Aqarat traffic must originate from Doha IP. GCE + nginx tunnel.
Medium
MoJ Bulletin ingest
Weekly PDF download → Document AI Custom Extractor ar-QA → BigQuery write
High
Listing normalization + Three-ID assignment
Source registry · dedup · listing_id + property_cluster_id + market_anchor_id
High
Anchor computation pipeline
BQ Scheduled Query: median PSM per sub-precinct × type × bedrooms × trailing 12m
High
Yield derivation
gross_yield · net_yield_ltr · net_yield_str per anchor — BQ pipeline
Medium
Geo-enrichment batch
Schools · transit · F&B density · flood zone — Cloud Run batch
Medium
Daily report pipeline
Aggregate signals → Cloud Scheduler → Firestore → consumer app
Medium
Infrastructure-as-code
Terraform: Cloud SQL CMEK · Cloud Run services · Pub/Sub · IAM · GCS
Medium
Skills required: BigQuery · Cloud Run · Cloud Scheduler · Pub/Sub · Cloud SQL Postgres · Document AI Arabic tuning · Python 3.12 + FastAPI · Terraform GCP · PDPPL T/S/P classification guidance from Evgeniy
Monika — role mismatch

SoftKraft proposed Monika as the AI engineer. Based on public LinkedIn: DevOps / cloud background, no visible LLM or prompt-engineering work. DevOps ≠ PromptOps. She would be productive on infra tasks only — not on Drafter quality or the evaluation harness.

Do we still need an AI Engineer?

Yes — but the scope is narrower and more specialist than "AI engineer" implies:

  • Assessment Drafter prompt engineering (Gemini 2.0 Flash · ar/en bilingual · structured JSON output)
  • Golden card set — ≥5 reference cards per sub-precinct × property type
  • Evaluation harness — 75% agreement gate on every merge · auto-rollback
  • PromptOps: semantic versioning · A/B testing · Vertex AI prompt registry
  • Drafter quality monitoring — running rate dashboards · regression detection

This is not data engineering. It requires LLM eval methodology and Qatar RE appraisal domain knowledge — not AWS DevOps experience.

Recommended split
  • Data Engineer (Evgeniy's candidate) — owns all 8 pipeline workstreams above. Covers 60–70% of total Phase 1 engineering effort.
  • PromptOps (Evgeniy, fractional) — Drafter prompts + golden cards + 75% gate. Feasible in Phase 1: Erarta already runs Gemini Flash in Luna.AI, Zer0, and Aidi.
  • Fallback: junior PromptOps hire at Week 3–4 if Evgeniy's CTO load exceeds capacity.
  • Monika: if retained — scope to infra / DevOps support only. Not Drafter, not AI.
Slide 13 — Team & structure
Four team configurations · Jim chooses
SoftKraft CTO Brief (May 2026) recalibrates the original 2-engineer PRD baseline. Four options now that a dedicated Data Engineer hire is on the table.
ConfigurationEngineering teamTotal laborSpeedRisk
A — All SoftKraft, 2 FTE PRD baseline SoftKraft data + SoftKraft product engineer · Monika 50% on AI · Michał PM ~480-800h Fastest Polish summer holidays · single vendor lock-in
B — Hybrid SoftKraft data engineer · Erarta product engineer (TBD named) · Monika 50% AI · Michał PM ~480-800h Fastest Erarta engineer must be named · multi-vendor coordination
C — SoftKraft single AI-assisted engineer Brief's actual proposal One AI-assisted engineer (Monika? Igor?) · Michał PM lighter touch 200-250h (brief)
290-480h (bottom-up scope check)
Slower calendar Single point of failure · "build as we go" · Monika role mismatch risk
D — DE hire + Erarta CTO Jim's preferred path Evgeniy's DE candidate (pipeline) · Evgeniy CTO/Tech Lead · Michał PM · Evgeniy covers PromptOps fractional DE 300–400h · Evgeniy 50h/mo Parallel data + AI tracks No SoftKraft single-point-of-failure · Erarta coverage on three critical paths: data, PromptOps, PDPPL
Honest disclosure: Scenario D includes Evgeniy's DE candidate and an Evgeniy CTO retainer. Both are in Erarta's commercial orbit. Jim should evaluate on engineering quality and risk mitigation against the first-time-territory gaps in the SoftKraft audit, not on Erarta's financial interest.
Brief's labor math vs PRD baseline: brief proposes 200-250h for one AI-assisted engineer (20-25h/wk × 10-12 wk). PRD baseline is 480h (2 engineers × 6 weeks). That is a 2.0-2.4× reduction. A bottom-up scope check across the brief's own migration table gives 290-480h minimum. SoftKraft sits below this floor.

AI productivity evidence (2025-2026): Microsoft 2025 field study +26% completed tasks. METR 2025 open-source −19% for experienced developers with AI. DORA 2025: throughput up and instability up. 2.0-2.4× labor reduction is not a normal AI-assistance outcome. The brief likely implies (a) hidden scope reduction, (b) more prototype-code reuse than admitted, or (c) underpricing of hardening, review, and rework. Jim should ask SoftKraft which.
Slide 14 — Cost
Four configurations · honest ranges
Rates are working assumptions; SoftKraft fixed-price quote at D0.10 supersedes. GCP run-rate identical across all four. Evgeniy CTO retainer terms TBD.
A — All SoftKraft, 2 FTE
~EUR 95–103K
2 FTE × 400h × EUR 90/h + Monika 50% + Michał PM + GCP + legal
B — Hybrid
~EUR 85–95K
SoftKraft data + Erarta product (EUR 70/h, requires named engineer)
C — SoftKraft single AI-assisted
~EUR 25–55K
200-250h brief / 290-480h scope check · Monika role mismatch risk
D — DE hire + Erarta CTO Jim's path
~EUR 55–80K
Evgeniy's DE candidate + Erarta CTO retainer + Michał PM + Evgeniy covers PromptOps
Line itemA — All SoftKraftB — HybridC — SingleD — DE + CTO
Data Engineer 400h × €90 = €36K 400h × €90 = €36K included 350h × €80 = €28K (candidate)
Product / AI Engineer 400h × €90 = €36K 400h × €70 = €28K included Evgeniy fractional (in CTO retainer)
Combined engineering (C only) 200-480h × €90-110 = €18-53K
Evgeniy CTO retainer $8K/mo × 3mo + bonus = ~€25K
Michał — PM 120h × €75 = €9K 120h × €75 = €9K 80h × €75 = €6K 80h × €75 = €6K
Labor subtotal ~€94K ~€86K €24-59K ~€59-72K
GCP run-rate (2.5-3 months) $300-700 $300-700 $300-700 $300-700
Legal + Quality Plane setup €3-8K + 30-50h €3-8K + 30-50h €3-8K + 30-50h €3-8K + 30-50h
Grand total ~€99-105K ~€91-97K ~€30-65K ~€65-82K
* Rate basis: EUR 90/h = top of SoftKraft Clutch band ($50-99/h). EUR 80/h for Evgeniy's DE candidate is an assumption until CV reviewed. EUR 110/h for Monika defensible only as specialist AI premium — role mismatch makes this moot. SoftKraft fixed-price quote at D0.10 supersedes labor-rate math.
* Scenario D vs C: D costs more (~€65-82K vs €30-65K) but has dedicated pipeline ownership, no single-point-of-failure, and Erarta coverage on three critical first-time-territory tracks.
* Phase 1B (Aqarat Branch A activation): +~25-40% across all scenarios if it triggers.
* Evgeniy CTO retainer: Scenario A terms $8K/mo, Scenario B1 $5K/mo + 1.5-2% equity — see separate retainer proposal.
Slide 15 — Commercial model
Broker subscriptions are Phase 1 primary revenue
Consumer monetization is Phase 2. Phase 1 proves the product works for brokers — that's what pays for Phase 2.
SurfaceModelPriceLaunch targetPhase
Consumer experience Free QAR 0 5 real users, genuine decision context 1
Broker / agency workspace Subscription QAR 499 / seat / mo ≥ 3 paying seats 1
Investor off-market memo Gated QAR 2,500–3,500 / mo ≥ 2 paying investor subscribers 1
Daily market report Free email ≥ 20 recipients 1
Consumer premium intelligence Future TBD 2
B2B Intelligence API Future Enterprise 2
Mortgage / transaction referral Future 2+
Phase 1 minimum revenue at launch (if all targets hit):
QAR 499 × 3 seats = QAR 1,497/mo broker + QAR 3,000–7,000/mo investor
This is not the point of Phase 1. The point is proof that brokers will pay and consumers will use.
Why QAR 499 / seat
Anchored to broker commission economics (single Pearl transaction = tens of thousands QAR commission).
QAR 499 = <0.5% of one deal.
Validation: survey first 10 subscribers post-launch for willingness-to-pay data.
Phase 2 triggers (not Phase 1)
  • Consumer premium — sufficient usage to gate premium intelligence
  • B2B API — first paying enterprise customer committed
  • WhatsApp full OS — agent workflow patterns validated from Phase 1
  • Native mobile — responsive web patterns validated
  • Lusail / West Bay — Pearl operational for 90+ days
Quality gates — launch condition
Operational gate first: 10 listings × 2 brokers → 8 of 10 cards must pass review.

Consumer gate second: 5 real users in genuine decision context.

Both gates must pass. No synthetic substitutes.
Slide 16 — Risks & what we need from Jim
Phase 0 must close before any build starts
Invoice settlement is the formal trigger. Phase 0 discovery runs in parallel so no calendar time is lost.
Jim's action items
  • Provision Tamleek GCP organization in me-central2 Evgeniy needs org owner + dev project Editor before any infra work
  • The Pearl reference dataset (70 towers per CTO Brief) Hard blocker: alias-table seeding, district normalization, three-PSM-values fix
  • Three Pearl brokers committed for D3 Yield Matrix validation
  • MoJ legal opinion from Qatari counsel Required before consumer experience publishes derived intelligence
  • Aqarat outreach status — schema delivery ETA for D2
  • Workspace accounts on final domain (tamlickplus.com or alt)
  • GCP cost ceiling / billing alert
  • Finalize NDA jurisdiction (UAE Courts vs Qatar Courts)
  • Choose team configuration A / B / C / D — see Slide 13
  • Rotate the leaked Google Maps API key in /api/config
High severity risks
High
Document AI <92% accuracy on MoJ Arabic PDFs
Annotate 20 samples before training. HITL queue mandatory. Do not skip.
High
Assessment Drafter <75% agreement at first eval
Begin prompt drafting against golden cards early — not at end.
High
Aqarat delivers aggregate only (D2 Branch B)
Phase 1A is a complete product. Phase 1B is upside, not critical path.
High
Scenario C single-engineer fails (sick / blocked / leaves)
Mitigation: weekly check-in with Michał. Erarta on standby for product track.
Medium
Brief 200-250h estimate vs 290-480h bottom-up scope check
Ask SoftKraft to disclose: scope reduction or AI-productivity assumption?
Medium
Polish summer holidays — SoftKraft capacity drop
Capacity calendar at Phase 0 kickoff. Hybrid B option mitigates on product track.
Medium
Invoice not settled — Phase 1 build delayed
Phase 0 discovery + GCP provisioning runs in parallel; no calendar lost.
Medium
Railway prototype mistaken for production-ready
Migration to me-central2 is a Phase 1 launch precondition (PDPPL Art. 13).