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

Projects & tools

All repositories ↗
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 Engineer

Senior C++ backend engineer; promoted to Staff in 2024. Working on reliability, performance, and design of cloud-storage backend components.

2015 — 2022Proinelca Power · Control & Software Engineering

SCADA, industrial protocols, automation software and technical leadership.

2012 — 2015DotX Control Solutions · Control Engineer

Wind energy, industrial optimization, fault detection and embedded control.

EducationMSc Systems & Control · TU Eindhoven

BSc 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.


Get in touch

Let's talk engineering.

Interested in C++ infrastructure, performance, developer tooling, or thoughtful system design? Find my code and professional background below.