Episode 1 57 min

Performance at Scale - With Danilo Velasquez

Key Takeaways from our conversation with Danilo Velasquez

Danilo Velasquez

Staff Engineer at Adevinta

In this kickoff episode of Señors @ Scale, host Neciu Dan sits down with Danilo Velasquez — Staff Engineer at Adevinta and longtime frontend performance obsessive.

Main Takeaways from my conversation with Danilo:

Tracking performance manually doesn’t scale. Danilo initially spent 4–5 hours each week gathering Lighthouse scores for dozens of pages. Automating that process with the Lighthouse Node API cut the task to 15 minutes and opened the door to real-time Prometheus integration. The result? A living dashboard that made performance a continuous conversation—not a one-time audit.

💡 Page ownership should align with team ownership. Danilo saw firsthand how abstract “domain boundaries” broke down when multiple teams had partial responsibility for the same pages. His solution: make each team responsible for its own application and page set. When ownership changes, move the code. It’s painful, but clear.

💡 Micro frontends led to micro-messes. In one system, they had 50+ frontend services powering a single feature. It looked modular on paper, but was impossible to maintain. Danilo now recommends grouping apps by team instead of slicing purely by domain—favoring practical boundaries over architectural purity.

💡 Old dependencies are a form of technical debt. Danilo advocates for building as close to the platform as possible—favoring native web components over frameworks when feasible. A five-year-old web component still runs today, but a five-year-old React app might be a minefield of outdated packages.

💡 Platform engineering is a force multiplier. Rather than shipping features directly, Danilo found more leverage in improving CI pipelines, optimizing DX, and standardizing tooling. Helping 10 teams ship better beats building a single product faster. It’s the clearest example of “scaling through others” in engineering.

💡 End-to-end tests are flaky for a reason—and it’s not just the tooling. Danilo points out that many e2e failures reflect real user bugs: delayed renders, missing elements, or race conditions. If your tests fail often, it might be telling you your frontend is too complex, not that Cypress is broken.

💡 Performance regressions should trigger incidents. In Danilo’s org, if a Web Vitals metric turns red, it’s treated like a production outage. That means war rooms, halted deployments, and dedicated fixes. It's a cultural shift: performance isn’t a “nice-to-have”—it’s infrastructure.

💡 Core Web Vitals data needs business context. Most teams track Web Vitals separately from conversion metrics—but that’s a missed opportunity. Danilo recommends wiring performance data into tools like Google Analytics to see if faster LCP actually improves sales, signups, or retention. Without that, you’re optimizing in a vacuum.

💡 Fonts can kill your LCP. One project had 12 separate font files for various weights and styles, all blocking the render. Switching to system fonts massively improved performance with zero user complaints. If users can’t tell the difference—but your metrics can—it’s worth rethinking your stack.

💡 The consent banner might be your LCP—and that’s okay. For EU users, the cookie/consent UI is often the first required interaction. Trying to hide or defer it might break compliance. Instead, Danilo suggests embracing it: load it early, strip down fonts, and make it snappy.

💡 Lighthouse results depend heavily on where and how you run them. Danilo discovered huge swings in scores when Lighthouse ran on shared cloud infrastructure vs. isolated VPS machines. To reduce variability, consider running it on dedicated, stable environments—especially if you’re gating PRs with performance checks.

💡 Long tasks? Try setTimeout(0). If your TTI or FID is struggling, Danilo recommends identifying heavy JS operations and wrapping them in a microtask with setTimeout. It’s a surgical fix—but it can yield major gains by unblocking the main thread faster.

💡 Mentorship isn’t about knowledge transfer—it’s about presence. Danilo believes the best mentors don’t just answer questions—they stick around, ask “why,” and help mentees think for themselves. That kind of leadership builds long-term capability, not short-term productivity.

Episode Length: 57 minutes of pure value

💡 More Recent Takeaways

Observability at Scale – With Erik Grijzen
Episode 13

In this episode of Señors @ Scale, host Neciu Dan chats with Erik Grijzen — Principal Software Engineer at New Relic — about building one of the first large-scale micro-frontend architectures, the rise of observability, and what technical leadership looks like across dozens of teams.

Accessibility at Scale – With Kateryna Porchienova
Episode 12

In this episode of Señors @ Scale, host Neciu Dan chats with Kateryna Porchienova — Senior Engineering Manager at Buffer — about her programming journey, the craft of animation, and why accessibility should be treated as a foundation of good engineering, not an afterthought.

Rails at Scale – With Adrian Marin
Episode 11

In this episode of Señors @ Scale, host Neciu Dan chats with Adrian Marin — founder of AVO and host of FriendlyRB — about Rails productivity, the magic of Ruby, and how the community continues to evolve through creativity and connection.

Vue at Scale – With Andreas Panopoulos
Episode 10

In this episode of Señors @ Scale, host Neciu Dan sits down with Andreas Panopoulos — Staff Software Engineer at Hack the Box and co-organizer of Vue.js Athens — to talk about scaling Vue in production, migrating to Nuxt 3, and the human side of engineering.

📻 Never Miss New Takeaways

Get notified when new episodes drop. Join our community of senior developers learning from real scaling stories.

💬 Share These Takeaways

Share:

Want More Insights Like This?

Subscribe to Señors @ Scale and never miss conversations with senior engineers sharing their scaling stories.