×
Juan de Dios Herrero Pérez

Juan de Dios Herrero Pérez

Computer Science Engineer / Specialized in Ruby and Javascript

Spanish, English

Background


About

About

Born and raised in Antequera (Málaga). I'm a technology enthusiast and also a gamer, I love to play Basketball!

Work Experience

Work Experience

  • Team Lead - Web Development / Team Lead - Web Backend Development

    Jan, 2015 - Present

    Acting as a Team Lead in BetVictor allowed me to grow more in my career as I was given more responsibility not just for me but also for a whole team. I kept working on different projects for BV web application and always was involved in the most critical ones like those belonging to big sport events. I also focused a lot on improving diffeerent processes that eased a lot the working experience for all the team. All this while managing as well non development related aspects like the hiring process, mentoring, performance reviews...

    • Application development with Ruby on Rails using TDD

    • Task requirements analysis, design, implementation and testing of applications

    • Always in charge of the web development part for time sensitive projects related to big sport events like Eurocup or Worldcup, they always were delivered on time

    • Always focused on scalability and performance, proper usage of caching mechanisms was always a must. (Action caching, Fragment caching, proper usage of HTTP caching headers...)

    • Investigation and implantation of new technologies that fit our projects, as an example, I lead the migration of the old Backbone application to React

    • Development of internal tools to ease complex or time consuming processes, from an Electron app which reduced the time required to prepare business reports from almost a day to 10 minutes, to several Gitlab CI pipeline jobs that automated code quality tasks, release procedures...

    • Proposed and implanted Cypress functional testing tool for our automatic regression processes which is triggered directly as part of our pipelines

    • Participated in the migration of our app from a B2C to a B2B model

    • Responsible for the interviewing and hiring process of new team members

    • Active on code reviews, conducted workshops to present ideas and implementation proposals for the rest of the team

    • Provide help to junior developers (mentorship)

    • Management of development teams (performance reviews, 1 on 1...)

  • Ruby and JS Developer

    Apr, 2014 - Jan, 20159 months

    My movement to BetVictor meant my first interaction with an international environment, it helped me to fully interact in English for work related matters and also my first interaction with an own product instead of the consultancy model. I adapted pretty fast to the position and started to took responsibilities that didn't belong to it but nobody was doing, that and also the lack of leadership by that time within Web team allowed me to be quickly promoted to Team Lead

    • Application development with Ruby on Rails, using TDD

    • Task requirements analysis, design, implementation and testing of applications

  • Principal Developer

    Jan, 2013 - Apr, 20141 year 3 months

    This was mainly a continuation of Nuatt after it was bought by Razorfish, after the movement, I was given more responsibilities, even though I still was developing with RoR, I started being more involved on system designing tasks and helping team members on different aspects, like training, pair programming...

    • Application development with Ruby on Rails using TDD

    • Support project managers in terms of task estimations

    • Task requirements analysis, design, implementation and testing of applications

    • Provide help to junior developers (mentorship)

  • Analist / Ruby and JS Programmer

    Mar, 2011 - Jan, 20131 year 10 months

    Working at Nuatt could be considered my first professional job. There I learned Ruby on Rails and Javascript and collaborated in a huge variety of projects. It is when I started to know about concepts like TDD, SOLID principles, refactoring... It was a small consultancy company where the projects where very fast paced, so that also helped me to be able to manage expectations in terms of timings and deadlines.

    • Development of desktop web and mobile applications (mainly Ruby on Rails)

    • CMS development for the company using MongoDB and Liquid templating language.

    • http://www.metrobilbao.net Bilbao subway new website, lead developer

    • http://www.goldenmanager.com Football manager, lead developer

    • http://www.alumnieste.com Asociación Alumni ESTE de la Universidad de Deusto

    • http://www.racc.net/ RACC Móvil

    • http://munaypa.medicosdelmundo.org/ Médicos del Mundo (voluntariado)

  • Web Developer

    Jan, 2009 - Dec, 200911 months

    • Web portal development for the 'Facultad de Ciencias de la Actividad Física y el Deporte (FCCAFD) Universidad de Granada' (http://deporte.ugr.es)

Skills

Skills

  • General

    Git

    Bash

    Docker

    Kubernetes

    Gitlab CI

    Redis

    Memcached

  • Ruby

    Rails

    Rack

    Bundler

    Rspec

    Cucumber

    Sidekiq

    Devise

    Paperclip

  • Javascript

    ES6

    Webpack

    Babel

    React

    Redux

    Jest

    Mocha

    Angular

    Backbone

    Underscore

    JQuery

  • Programming paradigms

    Object Oriented

    Functional

  • Programming methodologies

    TDD

    BDD

  • OS

    OSX

    Unix

    WSL

  • Editors

    Visual Studio Code

    Atom

    Vim

    Rubymine

Education

Education

  • Computer Scientist, Engineer, University of Granada 'ETSIIT'

    Jan, 2003 - Jan, 2010

    Different programming languages

    Different programming paradigms

    Database's design

    Wide knowledge about OS

    Wide knowledge about computer's and network's structure

    Wide knowledge about compilers

    Team working

    Good self-learning abilities

    Proactivity

  • Development of interactive services via a web interface, Course, University of Granada 'Centro de formación continua'

    Jun, 2004 - Jul, 2004

    PHP programming

    DBMS MySQL

  • Web design and programming, Course, University of Granada 'Centro de formación continua'

    Jun, 2004 - Jul, 2004

    HTML

    Javascript

    CSS

  • Java web services, Course, University of Granada 'Centro de formación continua'

    Jun, 2009 - Jul, 2009

    Java web services

    WSDL

    XML

  • iOS5 development, Course, Campus de Imagina Formación (http://www.campus.imaginagroup.com/)

    Apr, 2012 - Jun, 2012

    Objective-C

    Xcode

Volunteer Work

Volunteer Work

  • Open Source contribution, discourse/discourse

    Jun, 2015 - Jul, 2015

    • https://github.com/discourse/discourse/pull/928

    • https://github.com/discourse/discourse/pull/975

    • https://github.com/discourse/discourse/pull/1159

    • https://github.com/discourse/discourse/pull/982

    • https://github.com/discourse/discourse/pull/973

    • https://github.com/discourse/discourse/pull/980

  • Open Source contribution, fetlife/rollout

    Jun, 2015 - Jul, 2015

    • https://github.com/fetlife/rollout/pull/80

  • Open Source contribution, plataformatec/devise

    May, 2013 - Jul, 2013

    • https://github.com/plataformatec/devise/pull/2401

  • Open Source contribution, tscolari/mobylette

    Apr, 2013 - Apr, 2013

    • https://github.com/tscolari/mobylette/pull/26

Interests

Interests

  • Sports

    BasketballPádel
  • Videogames

    PS5Nintendo SwitchPCEscape from TarkovEve Online
  • Movies

    Sci-FiHorror