Leonardo Andrés Garcia Crespo

Leonardo Andrés Garcia Crespo

London, United Kingdom
Hire Leonardo
Scroll To View More
Leonardo Andrés Garcia Crespo

Leonardo Andrés Garcia Crespo

London, United Kingdom
Member since January 1, 2014
Leonardo is a lifelong fan of technology and is always trying to learn something new while keeping up to date with his favorite technologies. He has a very proactive personality, and he's always building something.
Leonardo is now available for hire
Portfolio
Experience
  • JavaScript, 6 years
  • Backbone.js, 3 years
  • Ruby, 3 years
  • Ruby on Rails, 3 years
  • Functional reactive programming, 2 years
  • Functional programming, 1 year
  • AngularJS, 1 year
  • React.js, 1 year
London, United Kingdom
Availability
Part-time
Preferred Environment
Command Line, Sublime Text, Browser
The most amazing...
...thing I've built is a wind forecast app with real-time visualization in charts that are highly interactive and customizable.
Employment
  • Full-Stack Developer
    SCVSoft
    2013 - PRESENT
    • Developed an internal suite of Gems that built up a framework to quickly develop internal tools. The suite went from authentication, to deployment, to look and feel and front-end components.
    • Led a team of 8 developers, working in 3 different internal tools at the same time.
    • Contributed back to a couple of open source projects both in bug fixing and bug detection as well as feature addition. Encouraged the team to do so as well.
    • Moved legacy tools with Rails 2 to full Rails 3 + asset pipeline + Angular apps, increasing responsiveness and overall performance along with code quality.
    • Contributed to the internal Puppet provisioning scripts and provisioned boxes for new apps.
    Technologies: Ruby on Rails, AngularJS, Capistrano, Puppet, MySQL, SMACSS, Twitter Bootstrap
  • Developer
    StudyBloc (via Toptal)
    2014 - 2014
    • Integrated Quill WYSIWYG editor with React into a reusable library.
    • Supported Math expressions and editor inside the WYSIWYG editor.
    • Supported source code with syntax highlighting in the editor as well.
    • Integrated the editor with the look and feel of the application.
    • Contributed back to Quill editor to fix bugs and propose improvements.
    Technologies: Javascript, React, Quill, MathQuill
  • Developer
    Soma (via Toptal)
    2014 - 2014
    • Built the entire new checkout workflow in Angular, making it a single page and with a way to easily configure the order of steps.
    • Increased the test quality of the product by increasing coverage and reducing usage of mocks in tests, and attempting to test the real thing as much as possible.
    • Participated in design discussions with the client, trying to find the best solution.
    • Contributed to an open source Ruby gem that the app used as an admin interface.
    • Contributed to make better documentation for the newcomers in the project, by documenting and expressing the business motivation of the core classes in the app.
    Technologies: Ruby on Rails, MongoDB, AngularJS
  • Full-Stack Developer
    SCVSoft
    2012 - 2013
    • Proposed the use of Backbone.js to create a rich UI with high interactivity.
    • Tuned the data fetching mechanism for real-time forecast info form dozens of wind farms from different clients.
    • Optimized queries and caching for most recent data visualization, with an acceptable latency in the client.
    • Encouraged intensive client side test coverage together with actual HTML and JS interaction.
    • Contributed to bug fixes on the Highcharts library that we used to draw the charts in the browser.
    Technologies: Ruby on Rails, PostgreSQL, Backbone.js
  • Web Developer
    Teracode
    2012 - 2012
    • Led a team of 3 developers all working remotely from different places in the world.
    • Created a Groupon-style app based on a Facebook app with high usage of the Facebook API.
    • Automated deployment via Ruby scripts to achieve "one click deploys".
    • Proposed usage of Backbone.js to achieve more interactive UIs that are also more maintainable.
    • Proposed usage of Github for development workflow and made lots of Code Reviews in the Pull Requests.
    Technologies: ASP.NET MVC, Backbone.js, Facebook API
  • Web Developer
    Teracode
    2011 - 2012
    • Moved the existing app from ASP.NET to ASP.NET MVC, thus increasing overall the performance of transferring the state over the wire.
    • Made the application update asynchronously with Ajax calls where it was necessary instead of full page refreshes.
    • Proposed several design improvements to the user workflow.
    • Increased testing coverage of existing application.
    • Improved NHibernate usage and thus improved overall app querying performance.
    Technologies: ASP.NET MVC, SQL Server
  • Developer - Co Founder
    Wisibee
    2010 - 2011
    • Founded my own company with a friend.
    • In charge of full development of the product--a site for design contests, similar to 99designs.
    • Learned about the start-up life cycle: incubated at a start-up accelerator
    • Worked with supporting multiple payment methods, like PayPal and a local payment gateway called MercadoPago.
    • Deployed the application, configured the boxes to run it, was in charge of the DB backups, and uptime.
    Technologies: ASP.NET MVC, MySQL, NHibernate
Experience
  • ActiveRecord::Futures Gem (Other amazing things)
    https://github.com/leoasis/activerecord-futures

    A Ruby Gem that enables ActiveRecord to execute multiple queries in a single round trip.

  • Makery.js (Other amazing things)
    https://github.com/leoasis/makery.js

    JavaScript library for creating objects for testing "factory-style". API inspired by Machinist, a Ruby Gem.

  • Fnky.js (Other amazing things)
    https://github.com/leoasis/fnky

    A just for fun functional library for JavaScript that allows you to create functors, applicative functors, and monads among other things.

  • elempleo.com (Development)
    http://elempleo.com

    One of the first projects I ever worked on. A job searching portal that is used by millions of people in Colombia and other countries. Developed with ASP.NET.

  • Amplified (Development)
    http://amplifiedapp.com/

    Personal project. Makes sharing rehearsals within your band easier. Allows to organize your rehearsals and comment on rehearsed songs while listening to them. Developed with Ruby on Rails, Backbone + React, PostgreSQL.

  • Challenge Accepted (Development)

    SCVSoft contest that required the competitors to pass 5 challenges by resolving them either in Ruby or JavaScript, and send the code to an API via POST and a user token. We developed that API using Ruby with the Cuba framework, and stored the data in Redis.

  • JS Conf UY (Other amazing things)

    Gave a Talk in the JS Conf Uruguay about using Functional Reactive Programming with a library called Bacon.js

  • Meetup.js - Javascript Meetups in Buenos Aires (Other amazing things)
    http://www.meetup.com/Meetup-js/

    One of the founders of the Javascript Meetups in Buenos Aires, currently running meetups every month. Both participating in organization and also giving talks from time to time

  • React.js View State Management Tutorial (Publication)
    One of the biggest and most common problems in front-end web development is state management. A developer is constantly focused on keeping the state object in sync with its view and the DOM representation. Users can interact with the application in many ways and it's a big task to provide a clean transition from one view state to another. We will see how using React JavaScript library can help us reduce application complexity and offload UI transitions from our application.
  • React.js Best Practices and Tips by Toptal Developers (Publication)
    This resource contains a collection of React.js best practices and React.js tips provided by our Toptal network members.
  • Leonardo is a mentor in the Toptal Global Mentor’s Program. This program is a partnership between Toptal and General Assembly to provide high quality mentorship for students from minority and low income backgrounds who are looking to begin their careers as professional software engineers. Leonardo shows commitment to diversity in tech by mentoring a General Assembly student every week for a year, covering everything from coding tips and tricks to advice on making it in the industry.
Skills
  • Languages
    Ruby, JavaScript, SQL, C#, HTML5, SASS, CSS3, Haskell
  • Frameworks
    Ruby on Rails, ASP.NET MVC, Express, Cuba, AngularJS, Twitter Bootstrap, ZURB Foundation, Sinatra
  • Libraries/APIs
    Backbone.js, React.js, Rivets, Immutable.js, Backbone.Marionette, AngularUI, Highcharts, GitHub API, Facebook API
  • Tools
    Campfire, GitHub, Git, Chrome Developer Tools, SVN, Trello, Atom, Sublime Text, Apache Solr, VirtualBox
  • Paradigms
    Agile Software Development, Object-oriented Programming (OOP), Functional reactive programming, Concurrent Programming, Functional programming, Event-driven Programming
  • Platforms
    Mac OS X, Linux, Windows 7, Ubuntu, Windows 8
  • Storage
    NoSQL, PostgreSQL, SQL Server, MySQL, MongoDB, Memcached, Redis
Education
  • Bachelor's degree in Systems Engineering
    Buenos Aires University - Buenos Aires, Argentina
    2002 - 2011
I really like this profile
Share it with others