Today is my first day at ThoughtWorks.
This post is two things at once: a personal one, about how I got here from Grupo RBS in Porto Alegre, and an introductory one, because a lot of the people who have been asking me about this — friends at RBS, family and old friends back home in Natal — have never heard of ThoughtWorks and have politely wanted to know what I’m doing. I’m borrowing the shape of an on joining X piece a friend of mine wrote about another company; the sort that tells the personal story honestly while also explaining where you’re going to people who weren’t following the company themselves. Let me try.
Until last Friday I was at RBS, the media group in Porto Alegre, working on content platforms and the stack that runs them at scale. Two years there. A great team, a real product, things I’d shipped that I was still proud of. None of that was a reason to leave. It was a reason to stay.
What pulled me out wasn’t a search. A few weeks ago Paulo Caroli — someone I’d been crossing paths with around the Brazilian agile community since 2010, when I first watched him give a talk about card walls at Agile Brazil — sent me a message. ThoughtWorks Brasil was hiring; was I interested? I hadn’t been hunting; I hadn’t even been telling anyone I was. But I’d been close enough to ThoughtWorks, from the outside, for long enough that I read the message and answered before I’d really thought about it.
That part needs context, because most of the people asking me what TW is haven’t been on the side of the stage at the conferences where the answer was unfolding. For four years now, Porto Alegre had been where a lot of Brazilian agile was happening — talks, communities, the agile-rs meetings, the early Agile Brazil years — and ThoughtWorks people kept being the ones in the front of the room. The names that became familiar to me at those events were Caroli, Mariana Bravo, Hugo Corbucci, Francisco Trindade, Danilo Sato, Carlos Vilela, Phil Calçado — people I’d shake hands with at a meetup one month and watch deliver a keynote the next, the kind of small community where you learn and then teach and then learn again from whoever shows up next time. From outside Brazil, the same shape, but the names came through their books and talks: Martin Fowler, Jez Humble, Rebecca Parsons, Jim Webber, Neal Ford, Pat Kua. Almost everything I’d been reading about how good engineering teams actually ship — Refactoring, Patterns of Enterprise Application Architecture, Continuous Delivery, REST in Practice, Domain-Specific Languages, NoSQL Distilled, the Continuous Integration article, the Technology Radar twice a year, the microservices article Fowler and James Lewis published this past March — was something a ThoughtWorker had written down for the rest of us. The Agile Manifesto from 2001 had a TWer (Fowler) among its seventeen signatories. The company turns twenty-one this year — founded in Chicago in 1993 by Roy Singham; ThoughtWorks Brasil has offices in Porto Alegre and Recife. None of that summary is what I’d say to a TWer. This is the version I’d give my mother.
So when Caroli’s message came, the learning about the company part was already done. The question was different: did I want to walk in.
The thing I had to talk myself through was that, for the last two years, what I’d liked most about RBS was being close to a product and a team that stayed together long enough to actually live with what we built. Consulting, the way I’d seen it work before TW, can corrode that. Bodies by the hour, contracts that end, teams that scatter when the statement of work runs out. I had specific bad memories of that shape, and the idea of going back into it gave me pause.
A few conversations with Caroli and others at ThoughtWorks Brasil walked me back from the worry. The TW model isn’t bodies by the hour. Engineers stay on projects long enough for the work to mean something to them. Rotations between teams happen by design — for the engineer’s growth, not because the contract expired. And in Brazil specifically, the team had been investing real time into the local community (the same community I’d already been part of) — publishing, speaking, sponsoring meetups — building back, not extracting. The thing I’d been worried about wasn’t a thing here, and the thing I’d been quietly wanting — to be inside the conversation where the practices I’d been studying are actually made — was very real.
A couple of pairing sessions, a few interviews, and a number of long coffees with people I was already on a first-name basis with later, I wasn’t being recruited so much as invited into a room I’d been knocking on for the better part of a decade. That sealed it.
Today I started. My first project is with a big retailer out of San Francisco — I’ll be working from Porto Alegre, paired across an ocean and several time zones, on the kind of e-commerce work I hadn’t done before but was excited to. Full microservices, REST all the way through, test-driven down to the seams, an event-driven architecture with RabbitMQ and Kafka under it, running on Azure. The Fowler/Lewis article from March is in the foundations of how the team is set up; that timing isn’t a coincidence and I’m not pretending it is. International project, real customer-facing scale, paired with people I had every reason to expect to learn from.
So: that’s it. To the friends at RBS I’m leaving — thank you, and um abraço. To the friends and family back home in Natal who’ve heard me say the name ThoughtWorks for years without quite knowing what I meant — this is what I meant. The books and the names you’ve now seen above are theirs, and starting today I get to share a kitchen with the people behind them. And to anyone in the Brazilian community I’ve been part of since 2010 who’s been watching ThoughtWorks from outside too — see you at the next event, and if you’ve been thinking about it, ask. The water’s good.