English Español

Andrés Villarreal

face

Software Developer

I'm a pragmatic web developer and software engineer. I'm passionate about the web, frontend technologies, and the open source ecosystem.

CV

A Short Introduction

I've been programming since I was 12 years old. What I have learned so far can be summarized as "the less code the better".

However, we live in the real world, so I have learned to cope with gigantic codebases and have gotten used to spending hours debugging through strange code written before I even graduated from high school.

In my spare time, I enjoy making and listening to music, playing old video games, and working on my own side‑projects. I'd love to show you all my music but no one ever seems to ask...

Personal Information

Name
Andrés Villarreal Cordero
Nationality
Costa Rican
Address
Heredia, Costa Rica
EĀ­mail
andres@villarreal.co.cr

Languages

Spanish (first language), and English (advanced).

Professional Experience

SecureLink: 2014 - current
  • Maintained an enterprise software application.
  • Designed and implemented new features.
  • Improved the stability of our existing codebase by creating automated tests and refactoring.
  • Documented existing software and processes to facilitate knowledge sharing with team mates and new hires.
  • Modernized the application's frontend by introducing tools like NPM into our workflow.
  • Designed and developed an internal dashboard to view customer usage information.
Growth Acceleration Partners: 2012 - 2014
  • Designed, developed, and maintained web applications that made use of the LAMP stack.

Academic Preparation

UCenfotec: 2011 - 2017

Software Development Associate's Degree

Colegio Yurusti: Graduated on 2010

High School Diploma

Skills

I am skilled in

  • Working, communicating, and assisting my teammates in order to develop high quality software solutions.
  • Developing web applications using technologies such as:
    • HTML
    • CSS: Sass, Bootstrap, Foundation
    • Client-side JavaScript: AngularJS, jQuery, React, Flux
    • Server-side JavaScript: Express, Meteor
    • PHP: Symfony, Zend Framework, Laravel, Silex, CakePHP, Doctrine
    • Java: Struts, Spring, Hibernate, Spring Boot, Tomcat, JUnit, Freemarker
    • Relational Databases: PostgreSQL, MySQL, sqlite
  • Leveraging software configuration, development, and other tools such as:
    • Source Control: Git, Subversion
    • Automation and Deployment: NPM, Grunt, Composer, Maven, Ant
    • IDEs / Editors: IntelliJ Idea, Atom, Eclipse, Netbeans, Vim
    • Continuous Integration: Jenkins
  • Usage of operating systems:
    • Linux (Ubuntu, Debian, CentOS)
    • Microsoft Windows
    • OSX, macOS

I want to improve my skills in

  • Linux System Administration
  • Free And Open Source Software
  • Mobile Development: iOS, Android

Projects

  • "Password Passthrough" Wordpress plugin - I made this Wordpress plugin for a company I worked at since they needed this very specific feature. However, I thought it could be useful to other people so I put it on the Wordpress plugin repository. Now it has over 100 active installs.

Other projects

I have built a few CRUD apps at work, school, and also a few command-line programs that I've incorporated into my daily workflow. If you take a look at my Github, you'll notice there are a lot of oddball projects that I've stopped working on. This is usually because I try to come up with silly projects in order to learn a new programming language or framework.

The projects below are projects I built on my own in my spare time. They are not your typical software application, but more like something I enjoyed programming purely for fun.

glxy glxy snake snake GLXY (for Android) GLXY (for Android) pixelshooter pixelshooter