Curriculum Vitae

Personal Information

Full name: Javier Sánchez-Marín Martinez
Date of Birth: 21 March 1987
Citizenship: Spanish
Residence: Spain, Barcelona
Email: javiersanchezmarin@gmail.com
Website: vieron.net
Languages: English (advanced), Spanish and Galician (native)

Work Experience

Senior Frontend Engineer @ New Relic

  • Building complex Single Page JavaScript Applications.
  • Writing isolated and shareable UI components.
  • Solving rendering/scrolling performance issues handling huge datasets.
  • Tweaking implementations to get browsers performing 60fps animations.
  • Designing and implementing Modular CSS Architectures for Applications and UI Components.
  • Designing and implementing strategies for releasing, versioning, distributing and consuming shareable UI Components and JavaScript or CSS libraries.
  • Setting up production asset bundling and build pipelines.
  • Building tools to automate tasks and speed up the development process.

Senior Frontend Engineer @ Ducksboard

  • Building and open-sourcing gridster.js, a JavaScript library for building drag-and-drop multi-column grids.
  • Writing a complex Single Page JavaScript Application visualizing real-time data.
  • Building visualizations and components from design specifications to pixel-perfect functional UIs.
  • Refactoring inherited CSS and implementing a Modular CSS Architecture.
  • Unit testing and integration testing using qunit and Selenium.
  • Working directly with the marketing team implementing A/B testing in the UI.

Frontend Engineer @ The Cocktail

  • Building, documenting and delivering modular UIs for huge websites, for the most relevant insurance, banking, and retail companies in Spain.
  • Building accessible, semantic and Progressively Enhanced UIs, using modular JavaScript and CSS architectures, and latest techniques degraded gracefully for older browsers like IE6+.
  • We leaded Responsive Web Design in ecommerce in Spain, with well-known brands like Women Secret and Telepizza.
  • Coding appealing and unfeasible HTML email templates supporting a wide variety of email clients, including older ones (Outlook 2007+).

Frontend Engineer @ Freelance

Advising and building entire user-facing UI's for companies like Vogue Spain or Sal y Laurel.

Frontend Developer & Visual Designer @ Dnoise

Working as an hybrid between Designer and Frontend developer. Designing stationary and promotional campaigns for print, while also coding the UI of small companies websites.

OSS and Side Projects

Polyshaper

OS X application to easily create triangulated artwork from any image in some clicks. It is built with web technologies and packaged into a desktop app using Electron.

I built the whole product; coding, branding, design, marketing...

css-docs

Styleguide/Documentation generator for UI Components. Build living style guides by parsing annotated source code in JavaScript and CSS files.

svg2css

JavaScript tool that helps building CSS or Sass Icon Systems using SVG sprites with automatic color customization handled trough a configuration file.

I also wrote grunt-svg2css to use it with Grunt.

gridster.js

While working at Ducksboard I wrote gridster.js, an open-source JavaScript library for building drag-and-drop multi-column grids.

It became very popular, having 6000+ stars in Github and being used by big companies like Spotify or Fitbit.

Education

Digital Design Degree @ Istituto Europeo di Design

Here is where I learned how important Design is, and where I became a passionate about it, and specially about typography.

I spent three years learning visual design foundations, typography, composition, color theory, motion graphics...

Today I'm still designing occasionally.

Skills

JavaScript

  • Single Page JavaScript Application development using React + Redux, and Backbone in the past.
  • Visualizations and interactive tools in Canvas and SVG using d3, Raphael, Fabric.js and EaselJS.
  • Authoring JavaScript modules in ES5/6. CLI tools, doc generators, libraries, UI components...
  • Building smooth animations using velocity.js, GSAP, TweenJS, CSS Animations, CSS Transitions...
  • Experienced with tooling and the frontend ecosystem.

CSS

  • Building UI Frameworks with a huge amount of UI Components.
  • Designing Modular CSS Architectures, and implementing them.
  • CSS Grid Systems in all the ways possible usin floats, display table, inline-blocks, flex... and with all kind of tricks (last/first-child, negative margins, box-sizing...)
  • Implementing any kind of icon solution (png sprites with fallback, fonts, svg sprites, svg symbols...).
  • Authoring Compass plugins, Sass mixins, and multiple CSS tools.

Other

  • Debugging/profiling and rendering performance using Chrome Dev Tools.
  • OpenSource projects (authoring, versioning, releasing, contributing, documenting)
  • Unit testing and integration testing with Selenium.
  • Desktop application development using electron and node-webkit.

Technologies & Tools

Below the technologies I'm more experienced working with.

  • CSS, JavaScript, HTML5 APIs (Drag&Drop, FileReader, GeoLocation, FullScreen...), SVG, Canvas, HTML5.
  • Webpack, npm, browserify, requirejs, grunt, gulp, bower.
  • Babel, Sass, PostCSS (autoprefixr, easings, mq-packer...).
  • Redux (redux-saga, redux-thunk, redux-form, devTools...), React, Backbone, lodash/underscore.
  • Karma, Enzyme, Mocha, Chai, Sinon, Travis CI, Jenkins, Sauce Labs.
  • Sketch, Illustrator, Fireworks, Photoshop, After Effects...