Skip to content

Sprint May 5 to May 16 #31747

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
MichaelKutsch-ph opened this issue Apr 30, 2025 · 11 comments
Open

Sprint May 5 to May 16 #31747

MichaelKutsch-ph opened this issue Apr 30, 2025 · 11 comments
Labels
sprint Sprint planning

Comments

@MichaelKutsch-ph
Copy link
Contributor

Sprint Planning

List of incidents + any action items that haven't been scheduled yet

Team sprint planning

For your team sprint planning copy this template into a comment below for each team.

# Team ___

**Support hero:** ___

## OKR

1. OKR, status (red/yellow/green) and action points if yellow/red

## Retro

<!-- Grab the high and low priority items from last time and add whether that item was completed or not -->
- 

### High priority

-

### Low priority / side quests

-

@MichaelKutsch-ph MichaelKutsch-ph added the sprint Sprint planning label Apr 30, 2025
@MichaelKutsch-ph MichaelKutsch-ph pinned this issue Apr 30, 2025
@MichaelKutsch-ph
Copy link
Contributor Author

MichaelKutsch-ph commented Apr 30, 2025

Team InfrAllTheFun

Support:

Retro:

  • ✅ tiered storage live in EU 🎉
  • ✅ PPA signed 🎉-> let's take care of AWS networking and account setup (also considering all persistence that we're about to move)
  • ✅ RDS version and instance family upgrade 🎉
  • 🟡 CIDR overlap - almost done, some tech debt to clean up with US
  • 🟡 RDS proxy: test on dev. TLS is missing here, let's see how complex that is -> this will lead to better util of RDS readers
  • 🟡 Moving persons:
    • "manual" replication is not working because of permissions, using AWS Blue/Green deployments now -> replication is working there
    • prod-test also looks good
    • follow up with AWS to discuss migration approaches and take it from there
  • Argo DX: started with standardized notifications, but deprio because of AWS PPA + incidents around redis
    -> @MichaelKutsch-ph redis: will prio this topic now. It's resolved for now, but appears to be a ticking time bomb
  • check in with @thmsobrmlr : are we lacking observability (tracing, profiling?) and this is slowing devs down? Sounds like it and we know already that loki is not as helpful as it should be

topics from last time:

  • moving persons off postgres: test logical replication running on dev @danielxnj
  • fix CIDR overlap for new subnets @bciaraldi
  • Move over to s3 tiered storage on MSK (prod-us) @frankh
  • DX: argocd @MichaelKutsch-ph
    • deprio for AWS PPA, but mostly for incidents around redis
    • will prio this topic now. It's resolved for now, but appears to be a ticking time bomb
  • Find a replacement for loki (up for grabs)
OKR Infra

🏃Improve build times for posthog apps
💽 Splitting RDS
🔒 AWS Account and networking re-work

High priority

Low priority / side quests

  • observability: tracing, profiling? What can we use here that does not cost 2 devs salary

✅=finished 🟡=in progress 🔴=won't finish ⚪=not started

@pauldambra
Copy link
Member

pauldambra commented Apr 30, 2025

Team RePla(lex)y

Support hero:
@pauldambra

1 week work
1 week offsite (still work but means its a 1 week sprint)

Retro

## what we shipped

  • improvements to summarization, ready for user testing on individual recordings
  • re-up the playlist counting
  • fix a bunch of toolbar and clickmap and heatmap bugs
  • got confirmation the new posthog-recorder build fixes the longstanding chrome extension bug
  • split playlists into "collections" and "saved filters"

High priority

  • Many of our customers have lots of recordings, but struggle to find the "useful" ones.

    • ➡️set metrics (KPI) and add them to the dashboard @sortafreel
    • ✅ get first clients to test the summarization @sortafreel
    • ✅ get the first feedback @sortafreel
  • Make it super easy to see what filters have results to watch - "show me, don’t make me figure it out"

  • watch recordings from where they are

    • ➡️ a lot of people use persons as the entry point for recordings, want to improve that @veryayskiy
    • ➡️ better "not found" state for recordings @veryayskiy
      • e.g. TTL passed, or recording might be sampled, etc etc

Side quests and lower priority

* ✅ add-on: research store recordings longer paid feature @annikaschmid 
* ➡️ RN - session timeout - stop of recordings (we have it in web) @veryayskiy 
* ➡️ Digest email @pauldambra 
OKRs 🟡
  1. OKR, status (red/yellow/green) and action points if yellow/red
  • 🚀 Goal 1: Get Alex 2 rocketing 2

    • it's great to have Alex 2 on the team... let's make it a success
  • 👩‍🔬 Goal 2: Find the needle in the haystack

    • Many of our customers have lots of recordings, but struggle to find the "useful" ones. We want to test and iterate on a bunch of different ideas to get customers to value faster.
    • Understand the needles that people are looking for using user interviews, data analysis and more
    • Better options for users to watch recordings from where they are (e.g. in funnels or experiments)
    • Some people are scared of filtering, some people have no patience for it - give them ways to avoid it
    • Make it super easy to see what filters have results to watch - "show me, don’t make me figure it out"

#30460

High priority

  • Many of our customers have lots of recordings, but struggle to find the "useful" ones.

    • set metrics (KPI) and add them to the dashboard @sortafreel
    • keep improving summaries with user feedback @sortafreel
  • Make it super easy to see what filters have results to watch - "show me, don’t make me figure it out"

    • show recordings in activity by time in the "figure out what to watch" tab @pauldambra
  • watch recordings from where they are

    • a lot of people use persons as the entry point for recordings, want to improve that @veryayskiy
      • we know about 6% of our traffic comes from the persons page
      • and about 2% from insights
      • we don't focus on those pages enough
      • let's use recordings and surveys and talking to people to figure out if there's something to optimise here

Side quests and lower priority

  • RN - session timeout - stop of recordings (we have it in web) @veryayskiy
  • Digest email @pauldambra
  • better "not found" state for recordings @veryayskiy
    • e.g. TTL passed, or recording might be sampled, etc etc
  • lazy load session recording in the SDK @pauldambra

@benjackwhite
Copy link
Contributor

benjackwhite commented Apr 30, 2025

Team CDP

OKR

  1. OKR, status (red/yellow/green) and action points if yellow/red

😍 OMG so many destinations
💖 Data pipelines UI sparks joy
🤑 Pricing thats works for everyone

Retro

  • 🟢 Get cyclotron backed by kafka working
    • Nearly deployed - hope to have it fully in use end of week
  • 🟢 Bring cyclotron fetch into node and add all of our protections that apply to normal hog processing @benjackwhite
    • Waiting on kafka based system to be deployed
  • 🔴 Migrate legacy plugins and zapier webhooks finally to CDP @benjackwhite
    • not done but only blocked by the above
  • 🟡 Co-ordinate more closely with team-messaging on the architecture @benjackwhite
  • 🟡 Implement the templates-in-db approach @meikelmosby
    • Taking a while as there is a lot of context building
    • Read part basically ready, focusing on making sure nothing breaks
  • 🔴 PoC out the AI generated destinations using Max AI to start with @meikelmosby
  • 🟢 Hook up the Segment destinations @MarconLP
    • Limited about of destinations ready to go.
    • Plan will be to manually test more one at a time
  • 🔴 Roll out site destinations (can we remove the opt in flag) @MarconLP

Low priority / side quests

  • figure out a way to test pixels in node @MarconLP
  • is there low hanging fruit to integrate hog function errors into the error tracking product? @meikelmosby
  • 🟢 Change the webhook template to by default throw on errors

High priority

  • Finally get plugins migrated to hog functions @benjackwhite
  • New HogFunction focused UI basis (to unblock all the bigger improvements) @benjackwhite
  • Get all running "non-custom" hog functions using DB templates in production @meikelmosby
  • Release (all?) Segment destinations @MarconLP (with @benjackwhite helping)

Low priority / side quests

  • Roll out site destinations (can we remove the opt in flag) @benjackwhite

@ioannisj
Copy link
Contributor

ioannisj commented Apr 30, 2025

Team Surveys

🟢=finished 🟡=in progress 🔴=won't finish ⚪=not started

Retro

Retro - Team Notes

What could've been better

  • lots of support and issues on SDKs as always @ioannisj
  • the above but a bit more than usual this sprint @marandaneto
  • had to drop my sprint task to investigate and address all issues @marandaneto

What went well

Retro - Tasks

High priority

Low priority / Side quest

Mobile replay and Mobile SDKs

Goals

Click to expand quarterly goals

High priority

Mobile replay and Mobile SDKs

Low priority / Side quest

@daibhin
Copy link
Contributor

daibhin commented Apr 30, 2025

Team Error Tracking

@daibhin 2 non-offsite days
@oliverb123 3 non-offsite days
@hpouillot off 1 day

Retro

✅ Make decision RFC on JS package structure @hpouillot
✅ Add platform display and filter to issues @hpouillot
✅ NuxtJS documentation & NextJS in-app docs

🟢 Make it easier to search for issues (Correctly instrument PH error tracking) @daibhin

  • Added team context to help searching for exceptions.
  • Plugin server & frontend done, need to remove tracking from Django

🔴 Improve the Python SDK & Django integration @daibhin
🔴 Finish GitHub integration & external issue creation @daibhin

  • Chose to work on JS SDK runtime support stuff instead
  • Rules took a lot longer than expected (Properties to HogQL expression, HogVM stl methods & non-editable taxonomic filter all took longer than expected)

🟠 Custom server side issue grouping @oliverb123

  • Above now resolved, just need to ship it. Olly currently looking at customers Vercel fluid compute issue

🟠 Fix issues uploading larger source maps (21MB limit)

  • Decided to add to CLI warnings & documentation

OKR

✅ Launch with pricing

Be the default choice for the languages we support

🟢 Make it easier to integrate
🟢 Improve product quality
🟢 Build advanced features for larger customers

High priority

@hpouillot

  • Workspace migration for posthog-js repo
  • Event selection on issue page

@daibhin

  • GitHub JWT authentication flow
  • Clientside filtering rules

@oliverb123

  • CLI warnings & better docs for source map uploading
  • Release auto assignment
    • Write docs for assignment rules

@mariusandra
Copy link
Collaborator

mariusandra commented Apr 30, 2025

Team DevEx

OKR

  • 👷 Build the "Product OS"
    • 🟢 New layout and "file-based" project view. Almost done
    • ⚪ Nested nodes within nodes Notion style
    • 🟡 Every product is able to export operations (backend) and widgets (components) => AI, notebooks etc.
    • 👷 Shortcuts and suggestions
    • ⚪ Permissions
    • ⚪ Keep iterating on shared UI components. Split out Lemon UI and Lemon Components.
  • ⏱ Improve dev tooling in PostHog
    • 🟡 Roll out "product folders" for all teams
    • ⚪ Convert E2E tests to playwright
    • ⚪ Tests take 5-10min max
    • ⚪ Standardize dev tooling (vscode, flox, docker, self hosted)

Retro

Last issue

High priority

One week sprint plus offsite.

  • All reported user feedback on the project tree
    • Global "move to"
    • Breadcrumb bugs
    • Messaging campaign created in unfiled
    • Add people's faces.
    • Dropdown design matching the rest of the site
    • Deleting cohorts
    • Deleting objects doesn't delete from tree
  • Filtering the product tree by user, type and other metadata
  • Shortcuts - behind a new flag tree-view-products
  • Tree view: standardize columns through manifest.tsx files.
  • Fix subtle bugs with "recents", "project", "save to" and "move to" by splitting the tree logic into shared data and separate instance logics.
  • Remove actual index/listing pages from the navbar, move remaining products into a folder

Low priority

  • Pinning
  • History / activity log

@pl
Copy link
Contributor

pl commented Apr 30, 2025

Team Ingestion

Retro

  • 🟢 Improve defensive measures for ingestion @PostHog/team-ingestion
  • 🟢 Investigate discrepancies between Blobby V1 and V2 session recordings @pl
  • 🟢 / 🟡 Continue persons migration @pl
  • 🟡 Investigate event duplication @nickbest-ph
  • 🟡 Investigate removing capture django @eli-r-ph

Unplanned

  • 🟢 Review and clean up defensive measures in ingestion @nickbest-ph @eli-r-ph
    • Make env variables for overflow, dropping, person processing consistent across the board
    • Add dynamic event ingestion restriction config
  • 🟢 Optimize person processing by adding a read cache @pl
  • 🟢 Improve observability @PostHog/team-ingestion
  • 🟢 Get up to speed on hiring @pl

Discussion

OKRs

  • 🟡 Fix property definitions service
  • 🟢 Finish moving to capture-rs
  • ⚪ Develop ownership of ingestion incidents
  • 🟢 Improve infrastructure for deployments

High priority

  • Switch off blobby v1 @pl
  • Understand performance issues with persons with large number of distinct IDs @nickbest-ph
  • Continue work on moving to capture-rs @eli-r-ph

@timgl
Copy link
Collaborator

timgl commented Apr 30, 2025

Team Clickhouse

Support:

Retro:

High priority

CH:

  • 🟡 Prop defs to CH -> RFC @tkaemming @bciaraldi
    • Made progress on inference side of things -> confident we'd be able to do it in SQL functionally
  • 🟡Testing antalya @Daesgar -> we've gathered some data on antalya, we know how to set it up, we know what the current issues are. Most important thing is to get the partitioning scheme and the compaction frequency (we lose cache on compactions).
  • 🔴 Continue: Get started with upgrade clickhouse version @tkaemming -> a lot of the failing queries are funnel queries so will ping product analytics to have a look at this.
  • ✅ Explore thread/cpu limits for clickhouse, define priorities (idea: make SQL queries low prio, API Queries high prio - take it from there) @tkaemming @orian
  • ✅ Check / improve Ingestion-rate @Daesgar -> ephemeral columns don't work, they break mutations. For now there are two alternatives: wait for reshard of US or use a map.

Infra:

Low priority / side quests

OKR CH
  • Query Observability and Performance Improvements
  • Make ClickHouse ops easy
  • Use Altinity Antalya in production for events

High priority

  • Prop defs to CH -> RFC @tkaemming @bciaraldi
  • Have partitioning and schema ready for iceberg @Daesgar
    • Write a job that takes last full day of data from clickhouse, moves it to iceberg, with materialized columns
  • Adding team deletes dagster job @Daesgar

Low priority / side quests

  • Continue: Get started with upgrade clickhouse version @tkaemming
  • Have a look at which other materialized columns we can get rid of @tkaemming

✅=finished 🟡=in progress 🔴=won't finish ⚪=not started

@andehen
Copy link
Contributor

andehen commented May 5, 2025

Team experiments

Support

@andehen fist week
@jurajmajerik second week

OKR's

🟡 All new experiments use the new query engine
⚪ Add frequentist method + other requested features
🟡 Implement a fair and transparent pricing model
⚪ AI-Powered experimentation workflow

Retro

Rodrigo:

  • Support:
    • Cleared queue of old and new escalated tickets.
  • Bug Fixes:
    • Fixed an experiment creation bug that was preventing users from manually migrating experiments.
    • Mayor refactor of the MDE Calculator to fix three reported issues. Some extra tidying too.
  • Query Perf:
    • Added some observability to the query engine. Need to add more.
  • Takeaways:
    • Support was intensive and there was a lot going on, so it took me a couple of days to get the hang of prioritization (when everything is of high importance…).
    • I got into deep parts of the backend to answer some questions, so it was a nice learning experience.
    • Feeling better about domain knowledge, but the impostor syndrome still creeps in when I get asked something I need to research.

Anders:

  • Soft launch of the new engine
    • ~200 opt-ins so far. Yesterday (29th) ~10% of new experiments created were on the new engine. ~20 new opt-ins per day.
    • New engine related objects found in the “New engine” folder in the project tree
  • Large UI component refactor
    • Splitting up the large DeltaChart component to make it easier to maintain
  • UI fixes
    • Loading spinner
    • Many small UI glitches fixed
    • Show funnel raw stats in results view
  • Query performance
    • No low hanging fruits, increased timeout for now. Only happens for customers with very large volumes of data on long experiment durations
  • Easter holiday 🎉

Annika:

  • Made some progress with pricing, asked for input from exec how to deal with pricing for cost vs pricing to undercut cheapest competitor. Meeting with Raquel today to get an update
  • Next sprint I am off (vacation & offsite), I will pick this up again once I am back

This sprint

Rodrigo:

  • Features and Bugs (in no particular order):
    • Cleanup Stats Version on the Frontend.
    • Add query execution progress to the metric’s delta chart and the exposure graph.
    • Fix the funnel metric “zero steps” bug.
    • Reduce coupling in the UI. We’ve been talking about this, and the MDE Dialog is a great candidate for refactoring to understand what we need from the UI. Some ideas to explore:
      • Pure components (easy to test and change).
      • Less coupling with Kea Logics for state (reduce duplication of code and remove React anti-patterns).
      • Explicit side effects (Kea Loaders/Listeners) via hooks.
  • Research
    • Query Observability: Identify opportunities to either add new observability or leverage existing metrics. The end goal would be to have a useful experiments dashboard for monitoring.

Anders:

  • Support
  • Bugs / features
    • Fix “unique users” estimation in MDE
    • Automatically refresh exposure graph when criteria is edited
  • Traveling to Mexico! 🎉

Annika:

  • Vacation 🎉

@dmarticus
Copy link
Contributor

dmarticus commented May 5, 2025

Team Frickin' Let's Actually Go! (FLAGs)

Retro

Theme: Rolling flags to more traffic, tuning `local_evaluation`, hiring a new person!!

Last sprint: #31278

What went well

New hire new hire!!

What could've gone better

  • Some tricky cohort bugs came up and I wasn't able to address them during support heroics
  • Didn't finish support old /decide fields for flag so rollout for flags is halted for now. That's top priority.
  • TODO

This sprint

Theme: Support legacy /decide response fields for /flags, scale up infra to support wide rollout, and roll new flags everywhere; improve local_evaluation,

High Priority

Low Priority

  • Look into how competitors instrument feature flags
  • [ ]

Support

  • 05/05 - 05/08: @haacked
  • TBD following week bc mexico

Time Off

@haacked on 05/09

Q2 2025 Objectives

(Details here)

  • 🟢 Flag Stability, Consistency, and Resiliency
  • ⚪ Behavioral Cohort Targeting
  • ⚪ AI IDE Integration

@robbie-c
Copy link
Member

robbie-c commented May 7, 2025

Team Web Analytics

OKRs

  • 🟡 Make Cookieless mode production-ready

    • Add batching to redis calls
    • Fix associating unidentified users who have allowed cookies
  • 🟡 Page reports

    • Iterate UX based on feedback after general release
    • Error tracking cross-sell
  • Marketing analytics

    • Get ad spend data from 2-5 data warehouse connectors (most likely Google Ads and CSV files, then other ad platforms that we can dogfood)
    • Build out the 80/20 of marketing analytics insights, e.g. total revenue and spending per channel and per campaign
    • Show GSC data via the API or batching with no filters
  • Query performance

    • Add sampling to web vitals
    • Experiment with pre-aggregating query results
    • Improve sessions table join
  • HogQL virtual fields

    • Add support for person initial channel type
    • Experiment with how to add e.g. CPA (average for channel) as a virtual person property

Retro

Support hero: @robbie-c

High priority

  • @lricoy 🟡 use pre-aggregated query performance tables for web_overview and web_stats queries
  • @jabahamondes 🟡 keep working on the active hours component to add more dimensions
    • (we decided not to add more dimensions, but make an insight instead)
  • @robbie-c
    • 🟢 Add property mangling to posthog-js (reduces bundle size by 13.5%!)
    • 🟡 Fix issues with cookieless mode counting unique users

Side quests

This sprint

Support hero: @robbie-c

High priority

  • @lricoy continue working on dagster jobs for pre-aggration
  • @lricoy move some of the web analytics queries to using pre-aggregation
  • @jabahamondes continue working on the new insight for CalenderHeatMap (name TBD)
  • @robbie-c Continue fixing issues with cookieless mode counting unique users
  • @robbie-c Batch redis operations in cookieless implementation

Note: we're not actively on page reports to focus on query performance, but are collecting feedback for when we switch back to this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
sprint Sprint planning
Projects
None yet
Development

No branches or pull requests