common.skipToContent

I'm Marcelo,QA Lead & Developer

Lead QA Automation Engineer & SDET @ Board International

I keep nearly 6,000 daily E2E tests honest on a canvas-rendered BI app, where there's barely a DOM to grab: fewer flaky runs, faster pipelines, and failures that explain themselves. AI is in the loop where it actually saves time — and out of it where it doesn't.

Author · Cypress on Dev.toMadrid, Spain

Portrait of Marcelo Costa

About me

Entertainment, consumer hardware, biometric KYC, enterprise BI, and Home Assistant — one job: making software and automations prove they work before users find out they don't.

Learn more

My work

Today that means leading the Madrid QA automation team at Board International — four engineers, an enterprise BI platform, and the Cypress architecture that has to hold on every release branch.

View frameworks

Follow me

Quick Impact Metrics

~6,000Cypress + TypeScript E2E tests running daily across active branches (Board)
6h → 3h20Backend parallel test execution time cut in half (Board)
25 → 8 minFull E2E suite cut from 25 to 8 min via API pre-seeding (Facephi)
30%Customer issues cut by 30% through hardware-in-the-loop stress testing (Nespresso)
Quality Improvements – E2E Testing2,000+ circular dependencies removed, instant test startup, and a custom AI-powered reporter with real-time step reporting (Board)

Work, stack & track record

Shipped apps, the automation behind the day job, and the roles that shaped how I test.

What I Do & Tech Stack

Serious test automation, AI-assisted delivery, and the full toolchain behind it.

What I test

E2E, API, performance, and mobile coverage at scale.

E2E & Unit Test Automation

Nearly 6,000 Cypress + TypeScript E2E tests on a canvas-based enterprise app, plus component & unit suites — BDD-readable and flake-resistant.

Cypress
Playwright
Jest (component/API)
Pytest
JUnit 5
TestNG
Puppeteer
Selenium
Page Object Model
Cucumber/ Gherkin

API Testing

Contract, REST & GraphQL validation with DB checks, mocks and stubs.

REST API
GraphQL
Postman / Bruno
API Stubbing (Cypress)
Mock Testing
SQL / Postgres
Supertest

Performance & Load Testing

k6 on the REST API layer; LoadRunner Cloud (TruClient/VuGen) for real-browser user journeys.

k6 load tests
LoadRunner Cloud
TruClient
VuGen

Mobile Testing

Native iOS/Android automation across devices and simulators.

Appium
Android Testing
iOS Testing
WebDriverIO

How I work

GenAI workflows, web & backend builds, APIs, languages, and scripting.

GenAI & Agents

AI-assisted, multi-agent workflows for E2E bug fixing.

Ollama
DeepSeek
Claude / Claude Code
Cursor
Codex / ChatGPT
Gemini
Multi-Agent Workflows

Web & Build Tooling

This site: Vite + React 19, i18n, routing, and a linted, hook-guarded codebase.

Vite
React Router
i18next
ESLint
Prettier
Stylelint
Husky (git hooks)

Backend & Data

FastAPI services backed by Postgres, migrations, and media processing.

FastAPI
Hasura
PostgreSQL
Neon Postgres
SQLAlchemy
Alembic (migrations)
ffmpeg
yt-dlp

APIs, Auth & Integrations

Third-party APIs and passwordless auth wired into personal projects.

Resend
Spotify API
Apple Music
YouTube Data API
Passkeys
Magic link

Programming Languages

Typed, maintainable test and tooling code across stacks.

TypeScript
JavaScript
Astro
React
Next.js
Python
Java
C (Doom engine)
Ruby
Swift
Tailwind

Shell & Environment

Scripting and local/CI runtime setup.

Bash/Zsh
WSL
Node.js
npm
Yarn
CMD
PowerShell

How I ship it

Pipelines, cloud hosting, nightly builds, and live reporting wired into CI.

CI/CD & DevOps

Pipelines, nightly builds, and dev → staging → production releases.

Azure DevOps
GitHub
GitHub Actions
Git
Docker
ArgoCD
Vercel
Cloudflare
Nightly Builds

Cloud & Hosting

Edge deploys and object storage across Cloudflare, Vercel, and Render.

Render
Vercel
Cloudflare R2
Cloudflare Tunnel
Wrangler

Test Reporting

Live HTML reports, Allure dashboards, and coverage summaries.

Allure Reports
Mochawesome
Playwright HTML
k6 HTML reports
Newman HTML
Jest Coverage

How I lead

Engineering management, QA process strategy, mentoring, and team empowerment.

Team Leadership & Strategy

People management, QA strategy, agile delivery, mentoring, and cross-functional alignment.

Team Mentoring
QA Process & Strategy
Agile & Scrum
Sprint Demos
KPIs & Delivery Metrics
Stakeholder Alignment
Hiring & Onboarding
Azure Boards (sprints)
Azure Wiki (docs)

Recent Experience

Last 5 roles — SDET & QA Manager

5 roles
  1. Board International

    Lead QA Automation Engineer

    May 2025 – Present | Madrid, Spain

    • Lead quality for an enterprise BI & planning platform — .NET REST API, Angular front end with a canvas-rendered UI, and an in-memory OLAP engine over SQL sources — covered by nearly 6,000 Cypress + TypeScript E2E tests running daily in Azure DevOps.
    • Modernized the entire E2E architecture and stack with Cypress best practices, as a Cypress Ambassador: removed 2,000+ circular dependencies and refactored Webpack bundling so Cypress starts instantly (down from 60s).
    • Rolled out a custom, AI-powered reporter tailored to the team's and CI's needs, with Step Decorators that pinpoint CI failures in seconds.
    • Performance testing on two layers: k6 against the REST API, and LoadRunner Cloud (TruClient/VuGen) for real-browser user journeys.
    • Manage and mentor the Madrid QA Automation team (4 engineers); sprints, documentation and pipelines run in Azure DevOps.
  2. Facephi

    Senior QA Engineer

    Feb 2024 – Apr 2025 | Madrid, Spain

    • Architected greenfield E2E test suites with Cypress, Playwright, and TypeScript for identity verification and biometric onboarding SaaS.
    • Cut regression runs from 25 to 8 minutes, and automated camera/OCR document verification in CI to replace an hour of manual testing with a 1-minute run.
    • Integrated Mailosaur APIs to reliably intercept and validate one-time passwords (OTP) and magic links in automated CI pipelines.
  3. Nespresso IoT (Hired through Keapps)

    QA Manager

    Feb 2023 – Feb 2024 | Madrid, Spain

    • Managed a team of 8 QA testers across manual testing and automated test execution.
    • Defined defect triage criteria, testing KPIs, and expanded living documentation across mobile and firmware teams.
    • Led hardware-in-the-loop testing for the Nespresso iOS and Android apps connected to physical Vertuo smart machines over BLE and Wi-Fi.
  4. Apple (Hired through Cognizant)

    Siri Automation Tester · Locale Lead · Manual Tester

    Oct 2020 – Feb 2023 | Madrid, Spain

    • Maintained and monitored the Unified Siri Test (UST) framework in Swift and XCTest, debugging automated pipeline failures across iOS and macOS.
    • Brazilian Portuguese Locale Lead: mentored 3 testers in ML voice evaluation and vetted bug reports before engineering escalation.
    • Conducted in-depth testing across the Apple ecosystem to improve conversational AI pass rates for speech recognition, dialog flow, and text-to-speech.
  5. Electronic Arts

    Localization QA Tester

    May 2017 – Sep 2020 | Madrid, Spain

    • Tested Brazilian Portuguese localization across flagship console and mobile titles, including FIFA, Battlefield, and Star Wars.
    • Validated on-screen copy, audio cues, and legal text directly on target consoles to prevent release-blocking certification bugs.
    • Logged and verified 200+ defects across console and mobile releases, collaborating directly with international development teams.