Image: Kathryn Conrad & Digit (Better Images of AI), Creative Commons BY 4.0 License
Analyzing Job Posting Data to Investigate the African Labor Behind AGI Hype
*This investigation was supported by the Pulitzer Center’s Artificial Intelligence Accountability Network
Investigative reporting rarely follows a straight line. In the case of our Pulitzer-supported investigation into the mass recruitment strategies used by micro-tasking companies powering AI development, the ability to pivot repeatedly became essential to how we approached both the reporting and the data. That need for flexibility shaped not only how we collected and analyzed information, but also how we ultimately told the story.
At the time we started in late 2024, not much was known or being written about the opaque micro-tasking world. This opacity, we came to conclude, was by design.
Micro-tasking is similar to outsourcing, but in the AI economy, hundreds of thousands of digital workers — or “gig workers” — from around the world are tasked with refining the answers of models like ChatGPT and guiding them toward more sophisticated behavior. Their job is to correct errors, shape responses, and, apparently, “teach” the models how to perform. In some cases, these are specialists who hold graduate degrees ranging from physics to comparative literature. But as Joan Kinyua, one of the powerful worker voices in our story, aptly put it: “You can have a PhD, but you’re doing annotation, so you get paid like everybody else.”
Our investigation focused on Mindrift, a subsidiary company of the formerly Russian-owned tech giant, Toloka. In 2024, Toloka was identified by The Bureau of Investigative Journalism as having provided training data for the Russian government’s surveillance tech. Mindrift appeared to be recruiting continuously on LinkedIn, advertising hundreds of roles per day for what it called “AI tutors” and “AI trainers.”
“It all started with a screenshot,” recalls Arends. In reality, it was hundreds of screenshots. LinkedIn job postings from multiple micro-tasking companies were sent back and forth between the two of us on Signal, usually accompanied by comments about the sheer volume of “jobs” and ongoing questions about their legitimacy.
Arends had reported on the micro-tasking industry before for The Continent and had established relationships with some insider sources. All of the sources she spoke to, most on condition of anonymity, described long periods without any available work. It’s important to note here that Mindrift workers are not paid hourly but rather per accurately completed task. No tasks means no chance at earning.
Many considered themselves “lucky” and “fortunate” to have made it into the system at all, but a large majority of workers had waited months before receiving a single task. A small but significant portion of workers who had received tasks were blocked and kicked off the Mindrift platform with no notice and no explanation — some are owed money to this day.
Caffeine and Suspicion Go Hand-in-Hand

Funnily enough, we never took any photos together, but we did drink a lot of coffee together. Coffee is a big part of our “company culture.” Here we are having Turkish coffees during a long layover in Istanbul on our way to ZEG Fest in Tbilisi. Image: Kathryn Cleary.
As our Signal chat continued to grow rather feverishly with screenshots of job postings, we realized there was a clear disconnect between what the online recruitment activity suggested and what workers on the inside were actually experiencing.
At this stage, we had no dataset and no technical plan. We only had a hypothesis: recruitment itself might be a strategic and financially beneficial move for these companies, regardless of whether jobs or paid work ever materialized for digital workers. That’s because large-scale recruitment can function as a signal to prospective clients. “It’s a matter of optics,” according to Antonio Casilli, one of the many independent researchers we consulted throughout our research. It suggests readiness, scale, and capacity, even when work is intermittent or unavailable, a practice that we describe in our story as “labor hedging.”
While Mindrift never explicitly uses this term, it makes no secret about this strategy being central to its business model on their blog. And everyone waiting for work? They sit, refreshing their computer screens, in what the company calls a “talent pool.”
Reframing Job Recruitment as Data Sourcing
Rather than treating job postings as background noise or mere context, we began to see them as a data source that could be observed, measured, and collected over time. We asked basic reporting questions: What locations were these companies advertising work in? How frequently were roles posted, removed, or reposted? What information stayed the same across postings, and what changed?
This reframing allowed us to investigate recruitment behavior without relying on company cooperation or access to internal hiring documents. Job postings are public-facing artifacts, and when collected over time, they can reveal patterns about how companies present and sell themselves to prospective workers and clients.
Neither of us came into this investigation as experienced data journalists. The scale of what we were seeing went beyond standard spreadsheet analysis and instead required learning new technical skills as the investigation unfolded. Finding data was not the hardest part. Getting it all in one place, sustainably and ethically, was.
We initially experimented with scraping LinkedIn job postings using third-party tools such as the sales prospecting platform PhantomBuster (according to PhantomBuster, scraping LinkedIn is technically illegal, however, we were acting in the public interest). This allowed us to gather an early snapshot of Mindrift’s recruitment activity and understand a bit about the scale. Even this initial dataset showed that the company was posting hundreds of jobs each week, often with repeated titles and copy-paste descriptions.
PhantomBuster, however, had significant limitations and was not suitable for long-term, systematic data collection. The potential legal implications were cumbersome. Using PhantomBuster as a tool often resulted in official warnings from LinkedIn directly as the platform had picked up on the scraping. To avoid this, we used a proxy, and scraped less frequently and for shorter periods of time. However, this was neither sustainable nor fruitful for long-term data collection.
With support from the Pulitzer Center’s Data and Research Team, particularly Federico Acosta Rainis and Kuek Ser Kuang Keng, we pivoted to a more robust data collection approach as well as creating visuals. When exploring Mindrift’s job postings on LinkedIn, we identified Workable, a third-party applicant tracking system used to host Mindrift’s original job advertisements — when you clicked on the “apply” button in LinkedIn, it took you to a Workable page — and began collecting job posting data directly from there on a daily basis. This shift allowed us to monitor recruitment activity over time rather than relying on static snapshots that we would later attempt to string together. Each posting contained structured data such as a job title, description, location, requirements, and a unique job ID.

Our dataset included information such as the job title, advertised location, department, description, requirements, and benefits, all of which were included with each job posting. Image: Courtesy of Kathryn Cleary and Marché Arends
As the dataset grew, so did the technical challenges. To work through these, Cleary used ChatGPT as a learning and troubleshooting tool while analyzing the data in Python. While she lacked any prior experience writing or running code, she knew that Python would allow the analysis to be done more efficiently and accurately at scale. In practice, ChatGPT functioned much like consulting a technically experienced colleague, helping explain unfamiliar concepts, structure scripts, and diagnose errors when code inevitably failed.
Before running the final analyses used in the published story, we reorganized the dataset so individual data points, such as years of experience, department, and job type, were separated into their own columns. This allowed us to test specific reporting questions more precisely. The scripts used for the final analysis, along with their outputs, were reviewed and cross-checked by the Pulitzer Center’s Data and Research team.
As the dataset grew, so did the technical challenges. To work through these, Cleary used ChatGPT as a learning and troubleshooting tool while analyzing the data in Python. While she lacked any prior experience writing or running code, she knew that Python would allow the analysis to be done more efficiently and accurately at scale. In practice, ChatGPT functioned much like consulting a technically experienced colleague, helping explain unfamiliar concepts, structure scripts, and diagnose errors when code inevitably failed.
Before running the final analyses used in the published story, we reorganized the dataset so individual data points, such as years of experience, department, and job type, were separated into their own columns. This allowed us to test specific reporting questions more precisely. The scripts used for the final analysis, along with their outputs, were reviewed and cross-checked by the Pulitzer Center team.
Cleaning the Data and Identifying Patterns
An early mistake we made involved manually aggregating job titles, which introduced too much interpretation and obscured meaningful similarities between roles. Many job postings appeared repetitive or identical, and it was tempting to collapse them immediately. Instead, we preserved what initially looked like messiness, including near-identical titles, repeated descriptions, and postings with identical timestamps. When we grouped jobs based on identical titles, requirements, and descriptions, a clearer pattern emerged. Of the 5,770 job postings we analyzed, there were only 238 unique job titles. Grouping by identical requirements and descriptions reduced this further to 144 distinct job groupings. In practical terms, thousands of postings appeared to represent a much smaller number of underlying roles.
One of the clearest patterns to emerge from the data was recruitment churn. Roles were frequently removed and reposted, sometimes with little or no substantive change. Because we collected data once per day, we documented methodological limitations carefully.
Individual job lifecycles were not statistically significant on their own. What mattered was the overall volume and similarity of postings, which created a convincing illusion of scale.
We also deliberately avoided complex statistical modeling. Instead, we focused on aggregation that could be clearly explained, such as posting volumes over time, spikes in recruitment activity, and simultaneous posting patterns.
This was an editorial choice as much as a technical one. If we could not clearly explain what a chart or output showed, we assumed readers would struggle too.
With guidance from the Pulitzer Data and Research team, we used Flourish to visualize the data narratively. The click-through format allowed readers to follow recruitment behavior and job churn step by step. The final visual uses individual dots moving across a blank space to show how jobs were grouped and regrouped. Achieving the same clarity with static charts would have been far less intuitive.
Throughout the investigation, data analysis ran alongside continuous reporting. Emerging patterns were supported with worker interviews, publicly available information from Mindrift’s website and social media channels, and interviews with independent researchers.
Transparency, Limits, and Disclosure
Throughout the investigation, we maintained a clear record of what the data could show, what it suggested, and what it could not prove.
We are explicit about our use of AI-assisted tools because methodological transparency matters. For us, these tools functioned as learning infrastructure rather than analytical shortcuts. They expanded what we were able to do without replacing editorial judgment or reporting rigor.
While the data methodology ultimately supported the published investigation, the process itself was far from smooth. It was messy at times, and heavily dependent on mentorship and support from the Pulitzer Center. Arends made a habit of asking people to poke holes in the investigation from the very beginning, including during the pitching process. The data work followed the same pattern. It was full of holes until roughly six months before publication, which meant nearly eight months of uncertainty before the patterns finally held.
Connecting the Dots: Job Postings to Exploited Labor
Ultimately, we decided to publish when we did because we believe this work will happen in chapters. But we also published out of respect for the countless digital workers who were brave enough to share their stories with us. It’s not an easy thing to do when Non-Disclosure Agreements and overt threats abound.
For both of us, human-centered investigations are the most impactful kind of investigations and we tried to cultivate meaningful, transparent and balanced relationships with sources who we knew wererisking whatever pennies they had managed to earn to help us tell this story.
We see our investigation as a marriage between the human story and the story hidden in the data. It was a valuable learning process for both of us and we have a much clearer understanding of how to use data not as an end in itself, but as a reporting and storytelling tool that amplifies an incredibly important message: AI does not exist in isolation, neither does it fall from the sky; it is built on the backs of exploited workers from the Global South who are treated as disposable.
It feels fitting, then, to end on Joan Kinyua’s words that close the published story as well: “The conversation should not be about whether AI will replace us, it should be about whether we will finally be recognized as co-creators of the AI future.”
Kathryn Cleary is an investigative journalist and communications professional with a passion for health, human rights, and social justice. Originally from the United States, she holds a bachelor’s degree in journalism from Rhodes University in South Africa. Cleary was the recipient of a Regional Vodacom Journalist of the Year Award for data journalism in 2019, the overall winner of the 2020 Isu Elihle Awards for child-centered reporting in Africa, and the recipient of a Distinguished Alumni Award from Rhodes in 2022.
Marché Arends is a Cape Town, South Africa-based investigative journalist with a focus on systemic inequality within communities of the Global Majority. Her work has appeared in Africa Uncensored, The Continent, The Africa Report, Semafor Africa, The Daily Maverick, and elsewhere. Arends was part of the 2025 cohort of Pulitzer Center AI Accountability Fellows and produced the investigation, Fuelling the AGI Hype: The Recruitment Playbook to Land Big Tech Contracts, published in Africa Uncensored.
