Chinh (lelouvincx) / Weekly Report - 2026-W17

Created Mon, 25 May 2026 00:00:00 +0000 Modified Mon, 25 May 2026 06:02:25 +0000
2214 Words
  • Weekly Report — Apr 20 – Apr 26, 2026 (friday mode)

  • Work

  • Internal

  • DONE Calendly data pipeline reporting layer scoped (DAT-283)
    • Following the merge of dbt #853 (approved last week), captured the full reporting-layer plan in journals/2026_03_19.md covering Source / Staging / Domain / Mart / Deprecated / Fixed layers.
    • New canonical mart: mart_growth__calendly_bookings (view → fct_calendly_bookings, grain = event × attendee × rep) and mart_growth__calendly_events (table → dim_calendly_events).
    • Deprecated (enabled: false): mart_growth__demo_calls, mart_growth__onboarding_calls, mart_core_business__demo_call_bookings, dom_calendly__demo_call_bookings, dom_calendly__onboarding_call_bookings.
    • Fixed: mart_core_business__sales_leads now joins dom_calendly__bookings directly on attendee_email_domain (resolves the 88% drop in call-booking leads found last week).
    • Next: update Holistics BI Model / Dataset / Dashboard to align with the new layer (Ampcode thread).
  • WAITING Review PR CircleCI for anh Dong (prefect #397 / DAT-579 — sub-task of DAT-578 CircleCI pipeline revamp)
  • NOTE DAT-556 dbt test failure root cause analysis (Ampcode)
    • Failing test: unique_map_identities_zendesk_hubspot_zendesk_organization_id. Zendesk org 900032617243 (1win.pro) maps to 2 HubSpot companies because 1win.pro appears in all_domain_names of both HubSpot 5855457913 and 18891852445.
    • Root cause: IN UNNEST(all_domain_names) join in itg_mappings__zendesk_tenant.sql (and similar integration-layer joins) creates fan-out whenever a domain appears in multiple HubSpot companies. Originated from DE-187 phase 1 (PR #812).
    • Impact: 16 tenants across ~10 companies; affected customers: Correlation Risk Partners, Cruisebound, 1win.
    • Decision: leave the test failing for now and address as part of the broader DE-187 resolution (canonical customer_skey work). Not yet actioned due to sick leave.
  • NOTE dbt deprecation policy clarified (Ampcode thread)
    • Phase 1: deprecate in code. Phase 2: remove the .sql file. Phase 3: drop the table.
    • Don’t sit between phase 2 and 3 — AML models reference BQ physical names; removing the .sql only stops refresh, leaving the table with stale data and silently misleading consumers. Either keep the wrapper alive or drop the table entirely.
  • NOT STARTED (carry-over) MRR exchange rate work (DAT-576) — manager P1 from W16 1-on-1; not started due to sick leave + holiday week. Will pick up next week.
  • NOT STARTED (carry-over) Lead Funnel by Sales Motion (DAT-560) — added Ampcode (Holistics PR) reference; still blocked on Calendly BI rollout.
  • Presales

  • DONE Basata follow up on light/dark theme — completed Apr 21 (Slack, Ampcode)
    • anh Huy posted the consolidated workaround to Taha (Basata) on Apr 21:
      • Gap 1 (no theme context in embed payload): Basata duplicates the dashboard into 2 versions (light + dark); Basata app reads the user’s theme preference and renders the matching embed.
      • Gap 2 (Sankey + dynamic markdown don’t adapt): standard charts via per-theme color palettes; Sankey via custom CSS; dynamic markdown gets per-theme CSS in each dashboard. anh Huy offered to impersonate and apply the Sankey fix.
    • Caveat communicated: dashboard header + zoom section can’t be customized via CSS yet (rendered at the Holistics layer); use case forwarded to PMs for the longer-term embed-payload theme support.
  • NOTE Communication observation: in two recent enterprise conversations I offered to do hands-on work and got silence in return.
    • Showbie (Slack thread): Harsha asked about parent-child filtering, Param Fields, and pivot-by-question for a Looker → Holistics rebuild. I confirmed all three are supported, sent doc links, and offered to log in and build the pivot example for him. No reply.
    • Basata (Slack thread): anh Huy proposed the dual-dashboard workaround and offered to apply the Sankey CSS fix via impersonation. No reply yet.
    • I don’t know how to best communicate with these kinds of users — possibly the offer of “I’ll do it for you” reads as too forward, or they need time to absorb. Worth raising in next 1-on-1.
  • Duty Support

  • DONE Review AI sharing dashboard for Aurora — completed Apr 23 (moved to Backlog/Done)
    • Confirmed Hieu’s dashboard is feasible to share as spreadsheet but not yet ready to consume — needs polishing before delivery.
    • Aligned with the commercial decision: Vincent (CEO) clarified the in-app AI usage dashboard is free for all customers; what’s being sold is data sync/export to Aurora’s own systems (S3 preferred, Google Sheets secondary). Targeting enterprise compliance, security auditing, 7+ year retention.
    • Final delivery format pending Nam’s email to Aurora. AI team (Phuong/Tien/Dat) owns separate in-app monitoring; data team scope is bounded to current ClickHouse data.
    • Prior art: SweetSpot Slack thread — same pattern.
    • UPDATE — deal deferred Email thread between Nam (Holistics) and Weiping (Aurora), Apr 20–23 (Slack file):
      • Nam pitched the $10,200/year “Usage and AI Data Monitoring Transfer Sync” (S3 delivery, scope: conversation time/ID, user ID, prompts + AI replies, token usage per user).
      • Aurora pushed back: hard to justify $10,200/year given the in-app AI usage analytics is on the Holistics roadmap for the next 1–2 quarters. Counter-proposals: monthly manual data dumps OR a read-only user on a read-only replica of the backend DB.
      • Both sides agreed to revisit when Holistics has more concrete AI usage data.
      • Implication for data team: no immediate delivery work needed. The Aurora-specific AI conversation dashboard (Hieu’s) can stay on hold; focus shifts to AI team’s in-app analytics rollout. Keep the dashboard ready in case the conversation reopens.
  • Docs

  • NOT STARTED (carry-over) Add demo video for local development docs — moved to journals/2026_05_25.md (will scope after the holiday). Slack 1, Slack 2.
    • NOTE Follow-up DM with Khai To on Apr 23–24 (Slack DM):
      • Demo direction: lead with the outcome demo (like lightdash does — show power first); push step-by-step setup into the docs.
      • Khai’s MCP for local metric queries is on staging13, not yet prod. He’ll demo it (skill + MCP combo) once I’m back from holiday.
      • Estimated cadence: “probably 2 weeks after holiday” — aligns with the demo-video scoping push to mid-May.
  • Personal / Tooling

  • DONE Set up Drata and remove Vanta — Apr 23 (Slack, Notion guide).
    • Triet announced the Vanta → Drata migration to all engineering on Apr 23. Required steps: acknowledge all policies, install + register Drata agent, complete Security Awareness Training and HIPAA Training. Keep Vanta installed until further notice. Two-week deadline.
  • DONE Tax checking — Apr 23 (Slack).
    • HR (Nhu Nhu) asked everyone to install Etax Mobile and check 2025 PIT finalization status before her leave. Verified own status: single-source income at Holistics → finalization successful, no follow-up needed.
  • DONE Set up CLI client for Cloudflare R2 upload — Apr 27 (Ampcode). Closes the loop on the auto-upload-to-R2 setup for Logseq media.
  • NOTE Considering migrating emergency savings out of 1Long — no longer trust its reliability for emergency funds.
  • DECIDED Google One downgrade: keep current plan. Linh and my younger brother still rely on it, so the per-user value justifies the cost. Closes the W16 open question.
  • Learning & Notes

  • LEARNING Don’t play games at night after 6PM — they always extend into late-night sessions. Restrict to morning / early afternoon. Caused the cold that wiped out Mon–Wed.
  • READ “Ask for no, don’t ask for yes”
    • Instead of “Hey boss, can we install action X?”, say “Hey boss, I’m going to install action X to solve XYZ. Will take care of it Monday unless I hear differently.”
    • Shifts cognitive load: gives the manager an opt-out window without blocking your progress, while you still own the framing of the problem and the solution.
    • Tone matters — needs to be calibrated to the person and what they actually want to know (e.g., size of the problem, downstream risks). Worth practicing on smaller decisions first.
    • The tips category on mooreds.com reads like a senior engineer sharing small craft-level tips that LLM searches don’t surface — reminder to keep cultivating non-LLM reading sources.
  • NOTE Need to deliberately seek out blogs / RSS feeds rather than defaulting to LLM search inside Logseq. The signal/noise from a curated human writer is different from an aggregated answer.
  • NOTE Trip to [[Trip - Bàu Sấu 04/2026]] — Ghibli-like landscape, dry-season trail (no mosquitoes/floods), good leg training (~6km/day) and digital detox (no signal). Will return next year, possibly during rainy season for a different experience.
  • Next Week

  • P1 — Must Do
    • Internal: Start MRR exchange rate work (DAT-576) — build dim_exchange_rates with live rate ingestion. Carry-over, manager P1.
    • Internal: Pick up DAT-555 follow-up captured in journals/2026_04_27.md.
    • Internal: Update Holistics BI Model / Dataset / Dashboard for the new Calendly mart layer (DAT-283).
    • Internal: Resolve DAT-556 dbt test failure (root cause already analysed Apr 22).
    • Internal: Close out CircleCI PR review feedback loop with anh Dong (prefect #397 / DAT-579).
  • P2 — Should Do
    • Internal: Lead Funnel by Sales Motion (DAT-560) — unblock once Calendly BI layer is rolled out. Carry-over since W14 (4 weeks).
    • Internal: Clean up BI layer for job queue dashboards (delete WIP 3.0, migrate v2 / Report Monitoring to 4.0).
    • Internal: Increase data freshness — impersonation lookup more frequent than daily (DAT-499). Manager P3.
    • Docs: Draft scenario for local development demo video, then sync with anh Huy Vu / Dat. Carry-over.
    • Teaching: Find a football dataset for Duc Anh.
  • P3 — Nice to Have
    • Internal: Contribute to Holistics skills and internal-skills repos.
    • Presales: Read Modeling Patterns docs.
    • Personal: Self-reflection + CV update. Research alternatives to 1Long for emergency savings.
  • Holiday note: Thu Apr 30 and Fri May 1 are public holidays in Vietnam (Reunification Day + Labour Day) — plan light work Mon–Wed and rest/play Thu–Fri.
  • Career & Personal Consulting

  • Progress Review (Start / Stop / Keep)
    • Keep: When energy was low, you still chose the highest-leverage tasks (Basata follow-up, Aurora dashboard review, CircleCI review round 1) and let the rest slip rather than dragging everything to half-done. That’s healthy triage.
    • Keep: Capturing the dbt deprecation policy as a reusable note (3-phase rule). These small principles compound — they prevent future “stale table” landmines and give you something concrete to teach Thuan / juniors.
    • Start: Treat illness as a hard stop, not a soft pause. You felt off from Monday and pushed until Wednesday before resting. Sleep + early stop on Mon would likely have salvaged Tue/Wed. Build a rule: if you feel off two days in a row, stop on day two.
    • Stop: Late-night gaming on weeknights — you already self-identified this as the root cause. The LEARNING note is good; pair it with a concrete trigger (e.g., laptop closes at 22:00 on weeknights).
  • Workload observations
    • This was a low-output work week by design (illness + trip), and that’s fine. The bigger risk is that two of last week’s manager-priority items (MRR exchange rate, BI cleanup) are now zero-progress carry-overs. Next week is also short (2 holidays); be realistic about scope.
    • The “Ask for no, don’t ask for yes” article is timely — your carry-over list is growing, and proactive framing (“I’ll start MRR Mon, will course-correct based on Friday review”) would reduce review-cycle latency.
  • Personal well-being
    • Trip to Bàu Sấu was a real reset — physical movement (6km/day) + no signal + nature is the right antidote to context-switching fatigue you flagged in W16.
    • Health: the cold is a signal. Sleep > productivity. Seven days of recovery cost roughly the same time as four nights of better sleep would have prevented.
  • Career development
    • Carry-over is becoming a pattern (MRR, Demo video, DAT-560, DAT-524). Consider a hard rule next week: any item carried over 3+ weeks gets a forcing function — either start it on a specific day, or formally backlog it. Avoid the “always-on but never-done” zone.
  • Customer communication signal (Showbie + Basata)
    • Both threads end with us volunteering hands-on work (“I can build the example”, “we’ll apply the CSS via impersonation”) and the customer going quiet. Two non-mutually-exclusive hypotheses worth testing:
      • (a) Decision delay — they need time to socialize internally; silence is “not yet”, not “no”. Action: send a soft check-in 3–5 days later instead of waiting indefinitely.
      • (b) Perceived push — “I’ll do it for you” can feel like over-reach for users who want autonomy. Action: try framing as a self-serve doc + offer (“here’s the recipe; happy to pair if helpful”) rather than “I’ll do it”.
    • Either way, a follow-up cadence rule (e.g., 3-day silent → ping; 7-day silent → close loop with PM) prevents these from becoming permanent open loops.
  • Maximize Your Recovery: Sleep, Stress, and Illness — Huberman Lab episodes on sleep and recovery. Useful given this week’s illness pattern; pair with the gaming-curfew commitment.
  • How to Write a One Pager — Wes Kao. Good companion to “Ask for no, don’t ask for yes” — both are about framing decisions for busy stakeholders. Applies to your MRR / Calendly status updates.
  • dbt deprecation patterns discussion — search “deprecate model” / “remove model”; community patterns confirm the 3-phase rule you derived this week.
  • Atomic Habits — environment design chapters — relevant for the no-late-night-gaming rule. Behaviour change is easier with environment changes (e.g., move console out of bedroom) than willpower.
  • Cal Newport — Deep Work / time-blocking — supports the Focus Days experiment from W16. With 3 effective workdays next week (Mon–Wed before holiday), time-blocking matters more than usual.
  • “Never Split the Difference” by Chris Voss — relevant for the Showbie/Basata “silence after offer” pattern. Specifically chapter on calibrated questions and the “no” answer bias (links nicely with the “Ask for no, don’t ask for yes” article).
  • Wait But Why — “How to do battle with the procrastination monster” — pair with the carry-over forcing-function rule. Long carry-overs often have a procrastination root, not a priority root.