# Marcello Oliveira > Marcello Oliveira is a Brazilian software engineer and Engineering Team Lead at Deel, where he leads AI product engineering and ships LLM features to production, from the model call to the interface. He previously built software at Amazon, Coinbase and XP Inc., and is a three-time ACM ICPC South America finalist. Personal site and blog of Marcello Marques de Oliveira (Marcello Oliveira), Engineering Lead · AI Product Engineering. Every story exists in English and Brazilian Portuguese (under /pt/), and each one has a plain Markdown version at the same path with a .md extension. ## About - [About](https://mrcll.me/about/): who Marcello Oliveira is, career at Deel, Amazon, Coinbase, XP Inc. and Social Miner, education and ICPC record - [Now](https://mrcll.me/now/): what he is doing now, leading AI product engineering at Deel ## Work - [Work](https://mrcll.me/work/): overview of selected work - [Taking LLM features from demo to production at Deel](https://mrcll.me/work/deel-llm-in-production/): How Marcello Oliveira’s team at Deel ships LLM features: rules engine, validated structured output, internal AI service, observability and E2E tests. - [Soma, XP’s design system](https://mrcll.me/work/soma-design-system/): Soma, the XP Inc. design system: multi-theme, technology-agnostic and multi-platform, with Marcello Oliveira as technical lead in 2020. - [Arsenal: a micro-framework for micro-frontends](https://mrcll.me/work/arsenal-micro-frontends/): Arsenal, a micro-frontend framework Marcello Oliveira built at XP Inc. on Webpack Module Federation. Deliveries got about 40% faster. - [Chameleon: CSS-in-JS for web components](https://mrcll.me/work/chameleon-css-in-js/): Chameleon, CSS-in-JS for Stencil web components built at XP Inc.: Shadow DOM, shared stylesheets, caching; about 8x faster at runtime theming. ## Stories - [Prompt injection is our generation’s XSS](https://mrcll.me/stories/prompt-injection-is-our-xss.md): There is no textContent for a model: what XSS and XSRF teach about prompt injection, and why the defense moves from input to privilege. - [We’re bad intuitive statisticians. So are LLMs.](https://mrcll.me/stories/bad-intuitive-statisticians.md): Monty Hall, a hostel in Foz do Iguaçu, and what temperature and top-p really do to an LLM’s next token. - [0.1 + 0.2 and someone’s salary](https://mrcll.me/stories/floats-and-salaries.md): Why money is never a float: IEEE 754 bits, payroll drift and rate rounding, shown one payslip at a time. - [Tokens are compression: what Shannon explains about your AI bill](https://mrcll.me/stories/tokens-are-compression.md): Shannon entropy, tokenizers and your AI bill: type any text and watch information, tokens and cost move together. - [From Q-learning to LLM agents](https://mrcll.me/stories/q-learning-to-llm-agents.md): From a Q-learning maze to LLM agents in production: in an agent, the reward is the design. - [Running code on other people’s sites](https://mrcll.me/stories/running-code-on-other-peoples-sites.md): One tracking pixel, three sites, and what it takes to run your code as a guest on someone else’s website. - [Progressive enhancement for AI-generated UI](https://mrcll.me/stories/progressive-enhancement-ai-ui.md): Progressive enhancement for AI-generated UI: ship the core without the model and feature-detect the AI layer. - [Why I wrote my own renderer](https://mrcll.me/stories/why-i-wrote-my-own-renderer.md): bradom: six rendering strategies written from scratch, from innerHTML to Virtual DOM and tagged templates, to make one tooling choice. - [The Northeast and the Brasileirão](https://mrcll.me/stories/northeast-brasileirao.md): Northeastern clubs in the Brasileirão: 44,006 km of travel for Fortaleza against 11,992 for São Paulo clubs in 2023. - [Fibonacci of 10¹⁸ in 84 multiplications](https://mrcll.me/stories/linear-recurrences-log-time.md): Fibonacci of 10^18 in 84 matrix multiplications: linear recurrences in logarithmic time. - [How many swaps until it is sorted?](https://mrcll.me/stories/counting-inversions.md): Counting inversions with Bubblesort and Mergesort, and why the same count compares two rankings. - [Counting without enumerating](https://mrcll.me/stories/digit-dp.md): Digit dynamic programming and the tight flag: counting numbers with a digit property without enumerating them. - [Cut it into √n pieces](https://mrcll.me/stories/root-decomposition.md): Square-root decomposition for range queries, from my first talk at the first Code Camp IFPB/ACM. - [Brasileirão 2023, the most titles on the pitch](https://mrcll.me/stories/brasileirao-2023-titles.md): The 2023 Brasileirão started with 65 national titles on the pitch, the most in the points era since 2003. ## Optional - [Full text of the site](https://mrcll.me/llms-full.txt): every page and story in Markdown, English and Portuguese - [Stories in Portuguese](https://mrcll.me/pt/stories/): the same stories in Brazilian Portuguese - [RSS](https://mrcll.me/rss.xml), [RSS em português](https://mrcll.me/pt/rss.xml), [JSON Feed](https://mrcll.me/feed.json)