About Me
Software Engineer specializing in decentralized systems and large-scale data processing. My expertise lies in building distributed data pipelines and processing systems. I build robust and scalable Web3 applications in Go, specializing in solving complex data storage challenges.
Experience
Gno.land is a platform for writing smart contracts in Gnolang (Gno), an interpreted version of Go.
- Refactored the blockchain indexer, making it run 10x faster and turning it into a key part of the Gno.land block explorer.
- Built and released a new GraphQL API used by over 80% of the platform's partners (10+ teams).
- Improved the GraphQL API by adding a new filtering system based on user requests, allowing for complex, SQL-like searches.
- Set up automated performance benchmarking with dashboards to detect and fix regressions.
- Created gno-by-example.com, modeled on gobyexample.com, to drive adoption by providing working examples where none existed before.
Kubo (go-ipfs) is the earliest and most widely used implementation of IPFS.
- Maintained the IPFS Go ecosystem and added new features to its canonical implementation, Kubo.
- Improved the Kubo routing system to allow composing routing implementations per use case.
- Implemented and refined the Resource Manager, simplifying its user-facing API.
Pilosa is an open-source, distributed bitmap index that dramatically accelerates continuous analysis across multiple, massive data sets.
- Refactored cluster management from Gossip to Raft using etcd for distributed consensus, making the cluster operate reliably where it previously did not.
- Designed and prototyped a new generic SQL interface and new data storage formats.
Source{d} looks to build the first AI that understands and writes code.
- Implemented low-level git functionality (LRU object cache, delta object generation).
- Managed a 5-person team.
- Developed a new SparkSQL data source for gitbase, supporting expression pushdown.
- Maintained OSS projects like go-git, go-mysql-server, and gitbase.
- Architected and developed large-scale, real-time data processing platforms and a Spark-based data lake for Santander Bank.
- Architected a highly available, cloud-based REST API for a mobile payments solution licensed by the Central Bank of Spain.
- Developed full-stack media applications for Antena 3 and other broadcasters (Ono, Disney+ channel, and others) across Android, Smart TV, and web platforms.
- Developed full-stack Java enterprise applications for clients such as Mutua Madrileña and Franquicias Plus.
- Developed enterprise applications using Java EE for public sector clients.
Projects
A torrent client that exposes files as a standard filesystem for on-demand downloading.
- Architected and built the system solo as a personal project; reached 1.1k+ GitHub stars and 10k+ Docker pulls.
- Implemented a FUSE layer to present torrents as a filesystem for seamless integration with other apps.
A gqlgen plugin that auto-generates filter input types for GraphQL schemas.
- Built a gqlgen plugin to auto-generate reproducible, nested filter inputs for any GraphQL schema backed by key/value databases.
- Designed filters to operate over a key range so queries stay performant without a SQL index, using a @filterable directive and extras like MINMAX range extraction for pre-filtering.
The primary and most widely-used Go implementation of the Interplanetary Filesystem (IPFS).
- As a core steward of Kubo, the reference IPFS implementation, shipped key improvements including its routing composition system and the Resource Manager.
A generic and extensible SQL engine in Go that parses and optimizes queries for custom data sources.
- Contributed to the core SQL engine, focusing on query parsing, optimization, and the interface for custom data sources.
- Helped establish the project, later adopted and maintained by the Dolt team.
A highly extensible, pure Go implementation of Git.
- As a core maintainer, I implemented major features, including the first version of the packfile writer with delta selection.
- Drove significant performance improvements through low-level profiling and heavy optimization.
A SQL database interface, using the MySQL wire protocol, to query Git repositories.
- Co-created the project during a company hackathon; it later evolved into a main pillar of the company’s technology.
- Designed and implemented core features to query Git history and code ASTs using SQL.
A distributed SQL query layer based on Apache Spark for SAP's in-memory database.
- While at StratioBD, collaborated directly with the SAP team to design and build the core Spark-based SQL layer for the product.
Education
IES Mar de Cádiz
Higher Vocational Training in Software Development (Desarrollo de Aplicaciones Informáticas)
2006 - 2008
More About Me
I enjoy building things, from programming microcontrollers for quadruped robots and MIDI devices to creating music with synthesizers. I’m also an avid hiker and a former competitive roller hockey player.
Languages: Spanish (native), English (full working proficiency).