Antonio Navarro

Senior Software Engineer, Distributed Systems

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

All in Bits

Senior Software Engineer, Core Team

Mar 2023 - Present

gno.land

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.

Protocol Labs

Senior Software Engineer, IPFS Stewards Team

Apr 2022 - Feb 2023

protocol.ai

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.

Molecula Corp.

Senior Software Engineer, Core Team

Sep 2020 - Jun 2021

molecula.com

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}

Lead Software Engineer, Data Processing Team

Sep 2016 - Nov 2019

sourced.tech

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.

StratioBD

Big Data Software Engineer

Feb 2014 - Sep 2016

stratio.com
  • Architected and developed large-scale, real-time data processing platforms and a Spark-based data lake for Santander Bank.

TECHNOactivity

Senior Software Engineer

Dec 2012 - Feb 2014

www.technoactivity.com
  • Architected a highly available, cloud-based REST API for a mobile payments solution licensed by the Central Bank of Spain.

Antena 3

Software Engineer

Oct 2011 - Dec 2012

www.antena3.com
  • Developed full-stack media applications for Antena 3 and other broadcasters (Ono, Disney+ channel, and others) across Android, Smart TV, and web platforms.

AT Sistemas

Software Engineer

Sep 2009 - Oct 2011

atsistemas.com
  • Developed full-stack Java enterprise applications for clients such as Mutua Madrileña and Franquicias Plus.

Sadiel Desarrollo de Sistemas

Junior Software Engineer

Jan 2009 - Sep 2009

ayesa.com
  • 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).