Skip to content

Commit a5d019e

Browse files
Ground ML platform and career pages
1 parent 31743a4 commit a5d019e

10 files changed

Lines changed: 3340 additions & 2022 deletions

_articles/freelance-data-engineer.md

Lines changed: 257 additions & 273 deletions
Large diffs are not rendered by default.

_articles/machine-learning-bootcamp.md

Lines changed: 356 additions & 328 deletions
Large diffs are not rendered by default.

_articles/mlops-certification.md

Lines changed: 276 additions & 271 deletions
Large diffs are not rendered by default.

_articles/mlops-courses.md

Lines changed: 259 additions & 313 deletions
Large diffs are not rendered by default.

_wiki/a-a-testing.md

Lines changed: 138 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -9,61 +9,162 @@ related:
99
- Power Analysis
1010
---
1111

12-
## Definition and Scope
12+
A/A testing is an experiment-platform validation technique. A team splits
13+
traffic into two or more groups and shows every group the same product
14+
experience. Then it checks whether assignment, exposure logging, metrics, and
15+
analysis behave as if nothing changed.
1316

14-
A/A testing splits traffic into groups that receive the same experience. The
15-
purpose isn't to test a product change. It's to check whether randomization,
16-
assignment logging, tracking, and analysis behave as expected before a team
17-
trusts A/B results.
17+
In the DataTalks.Club archive, A/A testing sits between
18+
[event tracking]({{ '/wiki/event-tracking/' | relative_url }}),
19+
[product analytics]({{ '/wiki/product-analytics/' | relative_url }}), and
20+
[A/B testing]({{ '/wiki/a-b-testing/' | relative_url }}). It doesn't answer
21+
whether a feature works. It answers whether the experiment system is trustworthy
22+
enough to test a feature.
1823

19-
In the archive, A/A testing is a platform trust practice between
20-
instrumentation and experimentation. If the system can't produce balanced groups
21-
and comparable metrics when nothing changed, teams shouldn't use it to judge
22-
real product changes.
24+
[Jakob Graff]({{ '/people/jakobgraff/' | relative_url }}) gives the clearest
25+
definition in
26+
[Product Analytics and A/B Testing at 27:52]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}).
27+
He describes an A/A test as a traffic split where both groups see the exact same
28+
thing. A planned 50/50 split might become 60/40. One identical group might also
29+
appear to convert far better than the other. In either case, the team should
30+
look at randomization, tracking, and analysis before trusting later experiments.
2331

32+
## Common Definition
2433

25-
## Recurring Archive Themes
34+
A common archive definition is: A/A testing validates the experiment system
35+
under a no-treatment condition. The expected outcome isn't perfect equality.
36+
Users still differ, and random noise remains. The system should produce balanced
37+
assignment, comparable metrics, and explainable variation.
2638

27-
A/A tests reveal assignment problems. Jakob Graff warns that a planned 50/50
28-
split becoming 60/40 means the traffic splitter or triggering logic needs
29-
investigation before any A/B conclusion is credible.
39+
Jakob's discussion of experimentation infrastructure gives the practical version
40+
of that definition.
3041

31-
A/A tests also reveal metric and tracking problems. If both groups see the same
32-
experience but conversion rates diverge beyond plausible noise, the team should
33-
look for instrumentation bugs and biased defaults. Missing assignment events or
34-
analysis mistakes may also explain the gap.
42+
At 24:44 in
43+
[Product Analytics and A/B Testing]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}),
44+
Jakob says the traffic splitter must randomize on the right unit. Teams may use
45+
a user ID, session ID, or cookie. At 27:52, he says teams should track the app's
46+
call to the splitter. They should also track whether the app receives a sensible
47+
assignment. Bad connection handling can bias the test if offline users all fall
48+
into the same default group.
3549

36-
The practice applies to third-party tools too. The archive notes that external
37-
experimentation platforms can still produce untrusted splits, so teams should
38-
validate them instead of assuming the dashboard is correct.
50+
## Guest Emphasis
3951

40-
A/A intuition helps explain p-values. Later in the same episode, Jakob asks how
41-
likely it would be to see the observed uplift in an A/A test, where no
42-
treatment exists.
52+
The archive has one direct A/A-testing discussion, so the disagreement is mostly
53+
about emphasis across adjacent experiment topics.
4354

44-
## Episode Evidence
55+
Jakob treats A/A testing as a trust-building step for
56+
[experimentation]({{ '/wiki/experimentation/' | relative_url }}) platforms. In
57+
[Product Analytics and A/B Testing at 30:05]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}),
58+
he says teams should run simple tests first. Teams should use a single decision
59+
metric and avoid strange product logic that makes assignment hard to track.
4560

46-
These episodes give the strongest evidence:
61+
Other podcast discussions focus more on what happens after the platform is
62+
trusted. [Rishabh Bhargava]({{ '/people/rishabhbhargava/' | relative_url }})
63+
connects A/B tests with production ML rollout and shadow mode in
64+
[From Analytics to Production ML at 28:42]({{ '/podcasts/production-ml-mlops-and-data-team-building/' | relative_url }}).
4765

48-
- [Product Analytics and A/B Testing](https://datatalks.club/podcast.html),
49-
24:44-27:52, explains traffic splitters and assignment tracking. It also
50-
covers offline users defaulting into one group and monitoring around
51-
experimentation infrastructure. Source:
52-
`../datatalksclub.github.io/_podcast/ab-testing-and-product-experimentation.md`.
53-
- [Product Analytics and A/B Testing](https://datatalks.club/podcast.html),
54-
27:52-32:39, defines A/A testing as showing the same experience to both
55-
groups, then checking split balance and metric comparability.
56-
- [Product Analytics and A/B Testing](https://datatalks.club/podcast.html),
57-
47:44-50:12, uses A/A test logic to explain p-value intuition to product
58-
stakeholders without leading with formal hypothesis-test language.
66+
[Aleksander Molak]({{ '/people/aleksandermolak/' | relative_url }}) places
67+
randomized experiments inside a broader
68+
[causal inference]({{ '/wiki/causal-inference/' | relative_url }}) toolkit in
69+
[Causal Inference for Machine Learning at 26:16]({{ '/podcasts/causal-inference-for-machine-learning/' | relative_url }}).
70+
Those episodes assume the experiment result can be interpreted. Jakob's A/A
71+
point comes earlier in the chain. First prove that the measurement and
72+
assignment system can produce a sane null result.
73+
74+
## Experiment Validation
75+
76+
A/A testing validates the mechanics inside an A/B test:
77+
78+
- the traffic splitter returns stable assignments
79+
- the product applies the assignment consistently
80+
- the exposure event is logged at the right moment
81+
- the analysis reads the same assignment that the product used
82+
- the primary metric behaves similarly across identical groups
83+
84+
Jakob's
85+
[27:52 discussion]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }})
86+
is especially practical because it includes failure modes. If an app defaults
87+
offline users into Group A, the control group is no longer comparable to the
88+
treatment group. If an external platform promises a 50/50 split but returns
89+
55/45, the dashboard result needs investigation before the product team acts on
90+
it.
91+
92+
The same idea applies to third-party and in-house systems. At
93+
[23:54]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}),
94+
Jakob compares external tools with building a traffic splitter with engineers.
95+
At 30:05, he says the first real experiment should stay simple. A/A testing is
96+
part of that same sequence: remove platform uncertainty before adding product
97+
uncertainty.
98+
99+
## Metrics
100+
101+
A/A tests are useful only when the team understands the metric it's checking.
102+
103+
Jakob distinguishes noisy metrics from stable ones in
104+
[Product Analytics and A/B Testing at 33:23]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}).
105+
Revenue per install can jump around. Click-through rate may be easier to
106+
interpret. An A/A test that looks different across groups may reveal a bug. It
107+
may also reveal that the metric is too noisy for a short experiment.
108+
109+
This is why A/A testing connects to [Metrics]({{ '/wiki/metrics/' | relative_url }}).
110+
The primary metric should match the rollout decision, and supporting metrics
111+
should help diagnose what moved. In Jakob's framing, teams should choose one
112+
decision metric before the test. If they look at too many metrics after the
113+
fact, they make it easier to mistake noise for a finding.
114+
115+
## Instrumentation
116+
117+
A/A testing is also an instrumentation check. The product needs to log who was
118+
assigned, when the assignment happened, and whether the user actually saw the
119+
experience being tested. Those events should follow the same rules the team uses
120+
in its [tracking plan]({{ '/wiki/tracking-plans/' | relative_url }}).
121+
122+
Jakob explains the instrumentation risk in
123+
[Product Analytics and A/B Testing at 24:44]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}).
124+
Teams may randomize by user, session, or cookie. The analysis must use the same
125+
unit. If product code assigns by session but analytics aggregates by user, an
126+
apparently balanced A/A test can still hide ambiguous exposure logic.
127+
128+
## Power Analysis
129+
130+
A/A testing doesn't replace [power analysis]({{ '/wiki/power-analysis/' | relative_url }})
131+
because the two checks answer different questions. A/A testing checks whether
132+
the platform behaves under no treatment. Power analysis checks whether a planned
133+
experiment has enough observations to detect the effect size the team cares
134+
about.
135+
136+
In
137+
[Product Analytics and A/B Testing at 37:44]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}),
138+
Jakob explains how teams can estimate test duration. They use metric
139+
distribution, expected impact, and daily traffic. A short A/A test can catch
140+
obvious assignment failures. It can't prove that every future A/B test has
141+
enough sample size for a small product effect.
142+
143+
## Product Analytics
144+
145+
For [product analytics]({{ '/wiki/product-analytics/' | relative_url }}), A/A
146+
testing protects decision quality. Product managers and analysts will eventually
147+
ask whether a treatment improved conversion, retention, or revenue. They may
148+
also ask whether it improved engagement.
149+
If the no-treatment system already creates unexplained differences, those later
150+
answers are weak.
151+
152+
Jakob also uses A/A testing as an explanation tool. At
153+
[47:44 in the same episode]({{ '/podcasts/ab-testing-and-product-experimentation/' | relative_url }}),
154+
he explains p-values through a no-treatment comparison. The practical question
155+
is how likely the observed uplift would be in an A/A test where both groups saw
156+
the same thing. That framing helps stakeholders understand significance without
157+
starting from formal hypothesis-test language.
59158

60159
## Related Pages
61160

62-
Useful adjacent pages:
161+
Use these adjacent pages to place A/A testing in the broader experiment stack:
63162

64163
- [A/B Testing]({{ '/wiki/a-b-testing/' | relative_url }})
65164
- [Experimentation]({{ '/wiki/experimentation/' | relative_url }})
66165
- [Metrics]({{ '/wiki/metrics/' | relative_url }})
67166
- [Power Analysis]({{ '/wiki/power-analysis/' | relative_url }})
68167
- [Evaluation]({{ '/wiki/evaluation/' | relative_url }})
69168
- [Tracking Plans]({{ '/wiki/tracking-plans/' | relative_url }})
169+
- [Event Tracking]({{ '/wiki/event-tracking/' | relative_url }})
170+
- [Product Analytics]({{ '/wiki/product-analytics/' | relative_url }})

0 commit comments

Comments
 (0)