Scroll To View More
Federico Pereiro

Federico Pereiro

Leiden, Netherlands
Member since December 14, 2014
Federico is a full stack JavaScript developer and open source contributor. He works remotely with international customers, specifying, implementing, and provisioning web applications. His focus is in developing radically simple systems for solving complex problems.
Federico is now available for hire
  • IP2
    Node.js, Redis, HTML5
  • Pixowl
    Node.js, Redis, Elasticsearch, Docker
    Node.js, Redis, MongoDB, AWS, AngularJS
  • JavaScript, 8 years
  • Functional Programming, 7 years
  • CSS, 7 years
  • Vim Text Editor, 7 years
  • Git, 5 years
  • Unix, 5 years
  • Redis, 5 years
  • Node.js, 5 years
Leiden, Netherlands
Preferred Environment
Xubuntu, Vim, Guake, Node.js, Redis, Chrome
The most amazing...
...thing I've done is to design a set of JavaScript DSLs to create the different parts of a web application.
  • Senior Back-end Developer
    2017 - 2017
    • Designed and implemented a set of standalone servers to interact with physical entertainment attractions.
    • Created a set of functional web admins to manage data and configure the aforementioned servers.
    Technologies: Node.js, Redis, HTML5
  • Lead Back-end Developer, DevOps
    2014 - 2016
    • Undertook a complete rewrite of the Node.js back-end, which was completed successfully under significant time pressure.
    • Set up provisioning, monitoring, and automation for a successful worldwide launch of a new mobile game.
    • Rewrote the file system module of the application, solving most reliability and performance issues.
    • Maintained and expanded the code and infrastructure to support additional features and multiple games.
    Technologies: Node.js, Redis, Elasticsearch, Docker
  • Programmer, DevOps
    2013 - 2013
    • Wrote development stories to help set priorities for the development team.
    • Developed large sections of the back-end logic (including a REST endpoint to support an autocomplete for geographical information).
    • Set up provisioning, monitoring, and automation for the infrastructure.
    Technologies: Node.js, Redis, MongoDB, AWS, AngularJS
  • Programmer, DevOps
    2012 - 2013
    • Debugged and added features to Rails and Erlang applications.
    • Handled stress testing of existing applications using Node.js.
    • Deployed, automated, and monitored tasks for applications running on AWS.
    Technologies: Rails, Erlang, Node.js, Redis, Puppet, Unix
  • Technology Lead
    2011 - 2012
    • Handled functional analysis of the platform.
    • Organized the transition from the old version of the platform to a new one, helping find the team and organizing development.
    Technologies: PHP, Node.js
  • Financial Analyst, Developer
    Darwin Inversiones
    2009 - 2010
    • Designed tools for rapid information retrieval from diverse data sets with public company information.
    • Designed and implemented a macro for retrieving, organizing, and presenting financial information from Capital IQ.
    • Designed and implemented a macro for taking a set of internal spreadsheets and updating them with information from Capital IQ.
    Technologies: Capital IQ, Visual Basic
  • GotoB (Development)

    I designed and wrote a minimalist framework for writing the front-end of a web app.

    It employs object literals for representing HTML/CSS, an event system with a coupled store for redrawing views, and the Myers diff algorithm to autoamtically implement changes in the DOM.

  • Lith (Development)

    A tool for generating HTML and CSS with JavaScript object literals.

    Nothing is certain, except for death, taxes, and having to write your own HTML/CSS.

    In the face of this inevitability, I developed a solution that allowed me to do it without leaving JavaScript and without concatenating strings of HTML. The trick is to use a DSL for mapping object literals to HTML/CSS.

  • Astack (Development)

    Yet another async tool.

    I developed a library for dealing with asynchronous functions without callback hell. The trick it employs is using arrays of functions and arguments as a way to express and pass a sequence of computations from function to function.

  • Çiçek (Development)

    A Node.js HTTP/HTTPS server.

    Irked by the lack of defaults and the need for non-trivial configuration that you need to create a web application using Express.js, I decided to write my own zero-config web server, learning quite a few things in the process.

  • Declarative Programming: Is It A Real Thing? (Publication)
    In a nutshell, declarative programming consists of instructing a program on what needs to be done, instead of telling it how to do it. This approach involves providing a domain-specific language (DSL) for expressing what the user wants. This DSL shields users from messy low-level constructs while still achieving the desired end-state. While declarative programming offers advantages over the imperative approach it replaces, it’s not as straightforward as it may seem. In this comprehensive article, Toptal Freelance Software Engineer Federico Pereiro outlines his experience with declarative tools and explains how you can make declarative programming work for you.
  • Languages
    JavaScript, CSS
  • Libraries/APIs
    Node.js, jQuery
  • Tools
    Git, Vim Text Editor
  • Paradigms
    Functional Programming
  • Platforms
  • Storage
    Redis, MongoDB
  • B.A. degree in Business Administration
    Universidad Torcuato di Tella - Buenos Aires, Argentina
    2003 - 2009
  • B.A. degree in Political Science
    Universidad Torcuato di Tella - Buenos Aires, Argentina
    2003 - 2008
I really like this profile
Share it with others