Staff Software Engineer · Madrid, Spain
Building software that holds up under pressure.
I'm Juan Gonzalez Burgos. I work on C++ backend systems where performance, reliability, and careful engineering matter. Over 14 years, I've built software across cloud storage, industrial automation, control systems, and open-source developer tools.
Selected open source
C++ · Qt · OPC UA · SQL
QUaServer
An OPC UA server SDK for Qt/C++ built around open62541. It includes extensible address-space APIs and examples for historizing data and events using SQLite. A long-running exploration of practical library design, data modeling, and industrial protocols.
C++ · WebAssembly · JavaScript · HTML
PID Tuner
An interactive browser-based PID tuning application combining a C++ numerical engine compiled to WebAssembly with a JavaScript/HTML frontend. Users can import experimental data, visualize system responses, and tune controller gains without installing desktop software. This open-source project is archived and no longer maintained.
C++ · Qt · Concurrency
QDeferred
Asynchronous programming helpers for Qt applications, focused on expressing background work and cross-thread interactions through reusable abstractions.
Python · GDB · Diagnostics
GDB Dynamic Logging
A Python extension for GDB that adds configurable dynamic logging to native application debugging, capturing runtime expressions and context without rebuilding the target.
C++ · Qt · Crash diagnostics
QCrashHandler
A compact integration of Breakpad-style crash handling with Qt/C++ applications. It reflects my interest in actionable diagnostics and resilient native software.
C++ · Qt · Security interfaces
QJsonWebToken
JWT functionality packaged for Qt/C++, with an emphasis on integrating a widely used token format into native applications.
Professional background
Systems thinking, from control rooms to cloud backends.
My early work in control engineering and industrial automation shaped the way I approach software: understand the system, measure its behavior, and design for failure as well as success. Today I bring that approach to performance-sensitive backend infrastructure.
I enjoy taking ownership of complex codebases, tracing hard production issues, improving observability and performance, and helping teammates navigate technical trade-offs.
2022 — PresentMEGA · C++ Backend / Staff Software EngineerSenior C++ backend engineer; promoted to Staff in 2024. Working on reliability, performance, and design of cloud-storage backend components.
2015 — 2022Proinelca Power · Control & Software EngineeringSCADA, industrial protocols, automation software and technical leadership.
2012 — 2015DotX Control Solutions · Control EngineerWind energy, industrial optimization, fault detection and embedded control.
EducationMSc Systems & Control · TU EindhovenBSc Electronics & Telecommunications · Tecnológico de Monterrey.
Engineering perspectives
What I care about
Understand before optimizing
Profilers, reproducible benchmarks and real workloads are more useful than intuition alone. Performance engineering starts by identifying what actually matters.
Make failures diagnosable
Crash capture, carefully designed diagnostics, and thoughtful debugging tools reduce the distance between production incidents and actionable fixes.
Design for maintainability
Good abstractions make systems easier to evolve. I value explicit trade-offs, clear interfaces and code that another engineer can confidently own.
These are principles drawn from my engineering practice, not automatically generated articles. More detailed, evidence-backed technical write-ups may follow.