Alberto Rico

I turn data into websites

I'm a full-stack developer focused on data dashboards and geospatial displaying of KPIs, fond of design and UX for the web, mobile and desktop.

Face

About me

I'm Alberto Rico Ibáñez. I was born in 1988 in Madrid, Spain

I've been coding websites since before I even had an internet connection. Since then, I've been studying and keeping up to date with many front end technologies, building projects both for work and for fun, many of them available on my Github repository .

I'm very fond of UX and designing with the end-user in mind, making their jobs or their use of my websites faster and easier. I've even designed some assets such as logos and icons for the companies I've worked in.

Even though I focus on Javascript and HTML, I keep trying and learning other programming languages such as Python and Swift. Coding and designing is my passion, no matter how. It's all about the resulting product.

I'm currently working for Weplan Analytics , a Big Data startup based in Madrid, where I'm the Lead Full-Stack developer and designer. In my job, in addition to coding, I manage a team of three, and collaborate closely with data scientists, DevOps, and marketing teams.

Front-end skills

My focus as a developer is mainly on browser based websites and webapps, ranging from static "corporate" websites to fully modular dashboards.

I've specialized in data visualization techniques and tooling and KPI dashboards, building advanced and performant map related visualizations, turning "boring" JSON data into useful graphs and maps.

Before coding
After coding

In my day to day I use many technologies, frameworks and libraries both open source and commercial, and build my own as the projects need them. Some of the front-end technologies I'm most familiar with are the following:

Javascript ES6

Javascript ES6

My day to day programming language, for frontend and backend

HTML5

HTML5

I take advantage of many HTML5 APIs for browsers and use semantic tags

CSS3

CSS3

Taking advantage of modern flexbox utilities and multiple CSS3 enabled capabilities

SCSS

SCSS

CSS but cleaner and more powerful with use of imports and variables

VueJS

VueJS

The MVC framework for most of my projects, fast, fun and powerful

jQuery

jQuery

For oldschool projects without an MVC framework, I've been using jQuery from the start

Bootstrap

Bootstrap

CSS framework that I use as base for many projects, building upon it.

Highcharts

Highcharts

For graphic representation of KPIs, powerful library that I use day to day

LeafletJS

LeafletJS

The best open source mapping library. I built a custom layer on top of it for my use cases

Mapbox

Mapbox

The power of Leaflet enhanced with WebGL rendering. Great for 3D mapping

DeckGL

DeckGL

WebGL enabled data viz, used for 3D mapping. Handles lots of data

Pug

Pug

Powerful and clean templating engine that uses JS for conditional rendering, imports and more

Vue logo I started using MVCs framework with AngularJS (Angular 1). Some time after I started looking at React, but I finally focused on VueJS, due to its powerful capabilities and its wonderful performance. My knowledge in Vue extends to all its ecosystem, including Vuex , Vue Router , Vue CLI , Vite and Nuxt , and have created many Vue components for use in any projects.

You can check some of my front end projects by going to the Web projects tab. I'll add more soon, as I never stop building sites!

I've created some NPM packages, in order to better maintain Javascript ES6 code shared by multiple projects (even for NodeJS, not just for browsers), and to contribute to Open Source and help whoever might find what I coded useful. You can check some of them in the Packages tab.

Back-end skills / tooling

Coding in Javascript has allowed me to delve in back-end tasks such as:

  • Building servers
  • Coding scripts
  • Web scraping
  • Building CLI tools

These are some of the frameworks and tooling I use as I build backend microservices or servers, both for Docker or for serverless Lambdas:

NodeJS

NodeJS

My runtime of choice for out-of-the-browser projects, servers or scripts

Express

Express

Framework that I use to build most web applications with as a backend

Django

Django

For Python-programmed servers, taking advantage of Django's great ORM

Gulp

Gulp

As my toolkit for tasks automation such as building JS, CSS, etc

Docker

Docker

To deploy projects as containers using Docker and docker-compose

Serverless

Serverless

For projects running as Serverless applications (AWS Lambdas)

Webpack

Webpack

For building and transpiling Javascript code, I use Webpack day to day

Yarn

Yarn

A fast and safe Javascript package manager that I use everyday

Furthermore, I've taken certified courses on database management and querying, as part of my training in the MEVN stack (MongoDB, Express, Vue and Node). As part of this training, I gained knowledge and experience in:

  • Managing and deploying a database using Docker or natively
  • CRUD operations
  • Maintenance scripting
  • Better indexing and performance strategies
  • Aggregating, big data computing directly on DB

Since then, I've expanded my use to SQL databases. Some DBs I use on a day-to-day basis are:

MongoDB

MongoDB

The NoSQL database I use, both through ORMs such as Mongoose, or directly using the Native Drivers

PostgreSQL

PostgreSQL

For its performance and GIS capabilities, the best SQL db, used via TypeORM or Prisma

Redis

Redis

For fast caching purposes, a great database that I use for auth, and much more

AWS Athena

AWS Athena

For Big Data queries, handling GBs of data in seconds, contributing to a NodeJS library

Desktop apps / Mobile apps

Fantastic Javascript frameworks such as React Native or Electron have enabled me to code software for desktops (Windows, macOS and linux) and for mobile, mainly Android and iOS. With my knowledge of both front end and backend, I've designed powerful apps that take advantage of the power of the desktop and access to file system.

The tools I've worked with are mainly:

Electron

Electron

For desktop apps, making them as performant and native-looking as possible

React Native

React Native

For mobile apps, taking advantage of the full React Native ecosystem and capabilities

Vue Native

Vue Native

Vue library that compiles to React Native, for its ease of use compared to React syntax

Expo

Expo

To easily deploy and distribute React Native apps, as well as using Expo's SDK features

Get in touch

You can check my online dev presence and contact me in the contact tab. I'd love to hear from you!