Antonio Navarro

Lead Engineer at Data Retrieval Team

About Me

I love my job. I’m always innovating and trying new technologies adapted to the project needs.

I am a restless and perfectionist person who enjoys teamwork and new challenges.

Actually managing a 5 people team and heavily programming in Go and Scala.

Projects

A project created by some of my colleagues and me on a hackathon. Now is one of the main company pillars.

gitbase, is a SQL database interface to Git repositories.

It can be used to perform SQL queries about the Git history and about the Universal AST of the code itself. gitbase is being built to work on top of any number of git repositories.

gitbase implements the MySQL wire protocol, it can be accessed using any MySQL client or library from any language.

src-d/go-mysql-server is the SQL engine implementation used by gitbase.

I am contributor and maintainer of this awesome project. I've implemented a lot of new functionality like the first version of the packfile writer with delta selection. I learned a lot with this project about low-level performance improvements and heavy profiling.

go-git is a highly extensible git implementation library written in pure Go.

It can be used to manipulate git repositories at low level (plumbing) or high level (porcelain), through an idiomatic Go API. It also supports several types of storage, such as in-memory filesystems, or custom implementations.

It’s being actively developed since 2015 and is being used extensively by source{d} and Keybase, and by many other libraries and tools.

Working directly with a great SAP team on their offices, we created a SQL distribution layer based on Apache Spark for his new in-memory database called Velocity. The project lately was renamed to SAP Hana Vora.

We started this project as a POC to show to management. After two weeks we had a working prototype able to create aggregations on top of Apache Spark Streaming with a small config file.

Stratio Sparta is the easiest way to make use of the Apache Spark Streaming technology and all its ecosystem. Choose your input, operations and outputs, and start extracting insights out of your data in real-time.

Experience

Source{d}

sourced.tech

Lead Engineer at Data Retrieval Team

Sep 2016 - Present

Source{d} looks to build the first AI that understands and writes code

StratioBD

stratio.com

Big Data Engineer

Feb 2014 - Sep 2016

  • Analysis, design, and coordination of the development of Stratio Admin, a platform to govern data management clusters, using Spring MVC, Jetty, Chef Server, Cassandra, ElasticSearch, Jclouds.
  • Real-time event processing platform developed based on Spark, using a CEP (Complex Event Processing) engine, Hazelcast, Kafka, Spark, Cassandra, MongoDB, and ElasticSearch.
  • Analysis, architectural design and development of a real-time data analysis application based on hypercubes. Technologies: Kafka, Spark, Cassandra, MongoDB.
  • SAP Hana Vora SparkSQL layer development, implementing queries push down, distributed aggregations, versioning and performance improvements.
  • Document design to implement data lakes at Santander bank,
  • Data Lake implementation and first use case doing data cleaning techniques to normalize data, data versioning, metadata, etc. using Spark, Spark SQL, Spark Mllib, Cloudera, etc for Santander bank

TECHNOactivity

www.technoactivity.com

Senior Software Engineer

Dec 2012 - Feb 2014

Analysis and architectural design of a fully distributed, highly available, cloud-based REST API which forms the core of a mobile payments processing solution licensed by the Central Bank of Spain.

Project’s technological highlights including:

  • Use of agile project management and tracking solutions such as JIRA and GreenHooper.
  • Continuous integrations tools, such as Nexus and Jenkins.
  • Cloud deployment workflows based on Amazon Web Services.
  • Low-level monetary transactions management with redundancy, error prevention, and detection.
  • Behavior analysis based on rules engine employed as part of proprietary fraud detection and prevention system.
  • Batch execution of automated banking operations in the background.
  • Interactive API documentation generation using Swagger.
  • Administration backend based on the Play Framework.

Antena 3 (Paradigma Tecnológico)

www.antena3.com

Software Engineer

Oct 2011 - Dec 2012

  • Analysis and development of Android Second Screen application, ANT 2.0 V2.
  • Development of “Modo salón”, an Antena 3 application designed for TiVo devices, using Java, Maven, and Junit.
  • Development of “Actibva” (stock market and news viewer) for LG TVs, using Java, SOAP, REST, Object Oriented Javascript and Jquery.
  • Development of an audio and video transcodification application with REST API, using Maven, Spring, Spring Security, Jersey, Junit, Velocity, Jetty and MongoDB.
  • Modular developments and troubleshooting for web and CMS solutions for Antena 3, Onda Cero and Europa FM, using Spring, Maven, GWT, Tomcat 6, Lucene and Hibernate.

AT Sistemas

atsistemas.com

Software Engineer

Sep 2009 - Oct 2011

  • Enterprise application development using Java, Struts 1, Spring, Spring MVC, Maven, Artifactory and Tomcat 6.
  • Use of agile development methodology applied through Scrum.
  • Participation in projects for Mutua Madrileña (Intranet) and Franquicias Plus web portal.
  • Use of application management and continuous integration solutions such as Hudson and Sonar.

Sadiel Desarrollo de Sistemas

ayesa.com

Junior Software Engineer

Jan 2009 - Sep 2009

  • Enterprise application development using Java, Struts 1 and 2, JSF, Spring, Lucene, Ant, Maven, Artifactory and Tomcat 4/5/6.
  • ORACLE / PLSQL database programming using TOAD as a management tool.
  • Participation in projects for “Junta de Andalucía” (eGovernment), “Agencia Andaluza del Agua” and “Nuevo Plan de Vivienda 2009”.

Education

IES Mar de Cádiz

Desarrollo de Aplicaciones Informáticas

2006 - 2008