Software Engineer

Federico Vitale

About Me

At the age of 7, my passion for technology was sparked by my brother, who despite everything, engaged me in tech and science. His love for games and technology deeply influenced me and inspired my career choice. Now as a Software Engineer, I thrive on perpetual learning and the exploration of emerging technologies. [Learn more]

Experience

Satispay

Software Engineer @ Satispay

2024, Milan (Hybrid)

ReactTypescript

Palette

Software Engineer, Rust @ Palette

Jul 2023, contract, San Francisco

RustTokioApache Kafka

I assisted Palette in transitioning a TypeScript micro-service to Rust. My primary responsibilities included utilising Rust’s asynchronous and multithreaded capabilities to optimise the performance and reliability of the micro-service. As result of the transition the new product is 2 times faster and capable to ingest up to 500k msg/s from Kafka.
Aquacloud

Software Engineer @ Aquacloud

Sept 2021 - Nov 2023, Trento

RustReactNext.jsTypescript

Led the front-end team in our endeavor to develop an accessible and maintainable platform that drives innovation in the blue-economy sector. In our tech stack, we leverage a monorepo architecture powered by Next.js, Turbo, and Typescript. To ensure the quality of our codebase, we employ Vitest for unit testing and conduct end-to-end testing using Playwright. As part of my responsibilities, I oversee the maintenance of our CI/CD pipeline with Github Actions. Additionally, I actively contribute to the development and upkeep of internal utilities and microservices written in Rust and Go.
Facile.it

React Engineer @ Facile.it

May 2021 - Sept 2021, Milan

PHPReactTypescript

During my tenure at Facile, I was entrusted with the development of an internal tool specifically focused on refactoring the authentication system to support multi-tab functionality. As part of my role, I successfully created a new internal library that was subsequently adopted by all teams within the organization.
CHILI

Frontend Engineer @ CHILI

June 2020 - May 2021, Milan

ReactTypescript

During my tenure at CHILI, I was responsible for the development and maintenance of various sections of the Smart TV app and website, using React as the primary framework. A significant contribution I made was driving the adoption of Typescript across the company's front-end teams. This involved gradually refactoring existing codebases and teaching best practices.

Here are some notable achievements during my time at CHILI:

  • Led the successful adoption of Typescript company-wide.
  • Revamped the build system by migrating from grunt to Webpack 5.
  • Led the transition to a monorepo structure to accommodate internal new projects.
  • Conducted extensive refactoring of the testing suite, leveraging jest.

These initiatives aimed to bolster development processes, ensure code quality, and foster an efficient and scalable environment at CHILI.

Simultech

Fullstack Developer @ Simultech

Dec 2018 - June 2020, Rome

JavaReactSpringTypescript

  • thess.io: Developed the complete front-end using React (Next.js) and contributed to the backend using Java (SpringBoot). Thess was an event management platform utilized by AS Roma (2019-2020) and Heineken (2019) for managing premium hospitality at Olympic Stadium.
  • flyup.aero: Migrated the front-end platform from Angular to React, ensuring a seamless transition.
  • schoolr.net: Assisted the client by transforming their design into a functional application. This involved migrating an existing PHP-based web application to Next.js and developing an administration panel.

Apart from these specific projects, I also worked on various other endeavors for multiple clients. My primary focus was building front-end solutions using React, while the backend was developed using Node.js, SpringBoot (Java/Kotlin), or a combination of both technologies.

Projects

gist.nvim

2023 github.com/rawnly/gist.nvim

gist.nvim is a Neovim plugin that allows you to create a GitHub Gist from the current file. The plugin uses the gh command-line tool to create the Gist and provides a simple interface for specifying the Gist's description and privacy settings.

Next Wayfinder

2023 next-wayfinder.dev

next-wayfinder is a lightweight (~3kb minzipped) and flexible package that simplifies the organization of middleware in Next.js applications. With next-wayfinder, you can easily apply different middlewares based on the route or hostname, without having to use cumbersome and error-prone path checks.

Hawk

2022 github.com/rawnly/hawk

Github actions don't yet support workflows inside subfolders, neither in your .github/workflows/ folder or project custom folders. So I made hawk to solve this problem without using custom commands. It lets you copy workflows from custom paths and paste them with a prefix, handling most of the pain. With 10 lines config you have a working monorepo setup.

Raycast Music

2022 raycast-music.app

A popular Raycast extension for Apple Music control, serving over 25k active users. Enables seamless management of music playback, playlists, and settings within the Raycast productivity app

Splash CLI

2016 splash-cli.app

A simple, command line tool to download Unsplash wallpapers. It’s not intended to be anything particularly fancy — it just works.