Marco

Experience

I've been working with startups and corporations, developing prototypes, Android Apps and full fledged Web Applications serving millions of users.

  • Senior Software Engineer @Elsevier
    December 2019 - now

  • Software Engineer III @Elsevier
    January 2018 - December 2019

    I joined the ScienceDirect Search team as Software Engineer III. Thanks to my performances, I've been promoted to Senior Software Engineer during 2019. My main responsibility over these years has been the development and maintenance of the Search FrontEnd application, built in React and Redux, using SSR and a NodeJS Backend. The architecture also includes several Java microservices integrated with ElasticSearch. Our applications use a multi-region deployment on AWS ECS, including different Lambdas that are used for scheduled tasks. I've been responsible for the maintenance and development of a ReactJS shared component library, used by all teams within ScienceDirect and by other Elsevier's products. My role mainly consisted in handling external requests, making sure the library was aligned with the master brand and ensuring proper communication between Elsevier Design Team and Engineering. I've also been the main organiser of internal Hackathons for London since January 2019. These events usually attract around a hundred engineers every session, and have been incredibly successful: since last 2019, the event has become global, and it now covers all Elsevier's offices around the world. I've been responsible for London planning and hosting ever since.

    Babel
    Rollup
    Webpack
    React
    ES6
    SASS
    Nodejs
    Java
    HapiJS
    AWS
    GoCD
  • Junior Software Engineer @Workshare
    April 2016 - December 2017

    My role in the company was mainly focused in creating and maintaining features of the Web platform following TDD, taking care of the entire process of realisation, from dealing with the design department up to following the deployment pipeline, working in a cross-functional team. Our entire workflow was based on Agile principles, with well-defined release cycles and an extensive use of Kanban boards and tools such as Jira and Fogbugz. My expertise include the above tools, plus an intermediate knowledge of how Jenkins pipelines are structured. Technology wise, I perfected my knowledge of ES6, CSS3, HTML5, Backbone.js, Marionette.js, React, Git, Node.js, Mocha, Sinon, Jasmine, Webpack, Grunt, Mockito and JUnit.

    Babel
    Webpack
    ES6
    SASS
    Nodejs
    Java
    React
    BackboneJS
    Jenkins
  • Front-End Engineer (internship) @Expert System SPA
    September 2015 - April 2016

    My personal purpose was to complete an internship aimed to the completion of my Master's Degree in Software Engineering. My task during this 6-month period was to rethink and rebuild from scratch a text editor with embedded natural language processing using Expert System’s API. My efforts have been concentrated in bringing a C++ standalone software from a desktop environment to the browser: this brought me to deeply understand the main MVC javascript frameworks available nowadays and the main strategies used for front-end development. This project was entirely developed using Angularjs, HTML5, CSS3, jQuery and vanilla Javascript. Due to this project's specifications, I had to bring the same user experience from the desktop environment to the browser, with an eye to maximum efficiency and low latency. Other technologies: HTML5 Canvas, Python.

    ES6
    SASS
    Nodejs
  • Front-End and Mobile Developer @Playwear - Moovi
    November 2013 - June 2014

    Moovi by Playwear is a project started in November 2013 in H-Farm Ventures, Italy. Its main goal is to create a wearable device for kids, with the aim to increase their physical activity with a rewarding system. We created an environment where our bracelet was able to send and retrieve informations with a smartphone (both iOS and Android) creating an interactive game between parents and kids, trying to enhance and increase their physical activity. After research the project led us to the creation of the very first functional prototype of the bracelet and of the mobile App. I was one this project's founder, and my main purpose was the app and bracelet development. I was in charge of creating the Android mobile App, allowing communications over Bluetooth Low Energy with the bracelet. Main Tecnologies: Java (Android), BLE (Bluetooth Low Energy API provided by Google), Node.js, Javascript, socket.io, Unity 3D (for the development of the in app game).

    ES6
    SASS
    Nodejs
    Java
    Unity3D