Bernat Martinez Vidal, Software Developer in Barcelona, Spain
Bernat Martinez Vidal

Software Developer in Barcelona, Spain

Member since March 2, 2018
Bernat is a technology enthusiast with years of experience consulting in both big and small enterprises. He's passionate about what he does and is always willing to learn and take on new challenges. Bernat has a positive, can-do attitude and a clear understanding of his responsibilities and business goals.
Bernat is now available for hire

Portfolio

  • EY (via Toptal)
    Azure, Docker, SQL, WebSockets, Git, Styled-components, TSLint, Webpack...
  • ERNI
    EventStore, SQL, WebSockets, Git, Less, TSLint, Webpack...
  • Social Games Online (CIRSA)
    MongoDB, REST, Less, Git, AngularJS, Webpack, Nightwatch.js, Jest, Phaser.io...

Experience

Location

Barcelona, Spain

Availability

Part-time

Preferred Environment

iOS, Windows, WebStorm, VS Code, Git

The most amazing...

...thing I’ve developed is a real-time trader in the agricultural business with reactive extensions (and event sourcing in the server).

Employment

  • Senior Software Engineer

    2018 - 2020
    EY (via Toptal)
    • Helped EY to build a new application from the ground-up to streamline the ingestion of data and the auditing process.
    • Served as a full-stack developer at EY using Node.js and TypeScript on the back end and ES7, React, and Redux on the UI (both were my sole responsibility).
    • Worked on an agile team integrating my work with other parts of the application and with other EY services.
    • Creating continuous integration (CI) and continuous delivery (CD) pipelines using Docker swarm and Azure.
    • Achieved all deadlines and expectations for the project.
    Technologies: Azure, Docker, SQL, WebSockets, Git, Styled-components, TSLint, Webpack, Redux, React, TypeScript, JavaScript
  • Senior Software Engineer

    2016 - 2018
    ERNI
    • Helped develop a risk management system and a real-time trading system for an agribusiness company. We used event sourcing for time-tracking purposes, high availability, and to be fully auditable. The server side was developed with .NET and CQRS. The project lasted about a year. CI was implemented (Jest, TSLint, Cucumber) and a partial CD with a private Npm registry.
    • Developed an Electron application with TypeScript and React.js using a DDD approach to the front-end. Communication with the server was done with RxJS over WebSockets.
    • Led the internal front-end community for ERNI and the open front-end community meetup at Barcelona. Spoke at a few of the sessions and worked with the other subject matter experts to help achieve a better level of quality in the sessions.
    • Contributed to the development of a back-office application to manage fees, prepayments, credit notes, and invoices. Used TypeScript with React.js and Redux.
    • Developed an app to create a catalog of applications on demand; used Node.js, TypeScript, React, and Redux.
    Technologies: EventStore, SQL, WebSockets, Git, Less, TSLint, Webpack, Domain-driven Design (DDD), Electron, Jest, RxJS, Redux, React, TypeScript, JavaScript
  • Head of Development

    2014 - 2016
    Social Games Online (CIRSA)
    • Built the first MVP from scratch for an intra-entrepreneurial startup.
    • Led the development of following versions of both a social gaming portal and its games in the gambling industry.
    • Helped to develop and design everything: slot machines mathematic algorithms, payment platform, retention analysis and tools, gamification, KPI boards and other decision enabling tools. Used Node.js, ES7, Angular (later migrated to React), WebSockets, Redis, MongoDB, .NET, CreateJS (later migrated to Phaser.io). CI/CD implemented (ESLint, Mocha, Nightwatch, Protractor, CodeShip).
    • Developed and managed the progressive web app (PWA) for the above-mentioned project—it was meant to replace the responsive implementation of the portal. Technologies used: Node.js, ES7, React.js, and Redux.
    • Led the homologation process of the social games to a real-money environment. Included adapting to different regions legal constraints like algorithmic limitations, security issues, penetration tests, control features, and multi-tenants.
    Technologies: MongoDB, REST, Less, Git, AngularJS, Webpack, Nightwatch.js, Jest, Phaser.io, ESLint, Node.js, ES7, Redux, React, JavaScript
  • Senior Consultant

    2012 - 2014
    Consultia IT
    • Helped develop a project for an important banking entity in Spain: a social network used to connect credit card users with multiple businesses with exclusive offers.
    • Integrated the above-mentioned social network with internal banking systems and also with multiple Google APIs—enabling all the usual social interactions expected (walls, comments, likes, viralization, management of multiple media). Used JavaScript, jQuery, REST, PHP, SQL.
    • Supported the development of a project for an important banking entity in Spain: a social network used to engage with bank users who were also retired—enabling all the usual social interactions expected (walls, comments, likes, virtualization, management of multiple media). Used JavaScript, jQuery, REST, PHP, and SQL.
    • Developed multiple libraries for internal use on many projects; these libraries defined the standard development of the front-end projects in the company. Used vanilla JavaScript.
    • Built an online social Bingo for an important Spanish gambling corporation. Used JavaScript and CreateJS.
    Technologies: SOAP, REST, Google APIs, Subversion (SVN), Git, SQL, PHP, jQuery, Node.js, JavaScript
  • Software Engineer

    2006 - 2012
    Parc de Salut Mar
    • Developed internal projects for educational and healthcare purposes; mostly small developments using LAMP (Linux Apache MySQL PHP) and JavaScript.
    • Created two different e-campuses using Moodle and its APIs to adapt to multiple needs.
    • Built a presence control system and a platform to register new internal and external formation courses with a selection process.
    Technologies: SQL, Moodle, PHP, jQuery, JavaScript

Experience

Skills

  • Languages

    JavaScript, TypeScript, CSS, Sass, Less, ES7, PHP, SQL, Elm, GraphQL
  • Frameworks

    Redux, Phaser.io, Electron, React Native, Jest, AngularJS, React VR, Electron.js, Unity3D, Angular
  • Libraries/APIs

    Node.js, React, RxJS, jQuery, Google APIs, Nightwatch.js, MobX, Vue.js, CreateJS, D3.js
  • Paradigms

    REST, SOA, Functional Programming, Event Sourcing, Continuous Integration (CI), Continuous Delivery (CD)
  • Tools

    Webpack, VS Code, Jira, Git, WebStorm, Subversion (SVN), Moodle, Cucumber
  • Platforms

    Docker, Azure, iOS, Heroku, Windows, Linux
  • Storage

    MongoDB, EventStore
  • Other

    ESLint, TSLint, Domain-driven Design (DDD), Elm Architecture, SOAP, Styled-components, WebSockets

Education

  • Post-graduate degree in Artificial Intelligence with Deep Learning
    2020 - 2020
    Polytechnic University of Catalonia | UPC - Barcelona, Spain
  • Master's degree in Business Innovation
    2015 - 2017
    Polytechnic University of Catalonia | UPC - Barcelona, Spain
  • Bachelor's degree in Computer Science
    1998 - 2002
    La Salle University, Barcelona Campus - Barcelona, Spain

To view more profiles

Join Toptal
Share it with others