html.it. Later on, I started reading books—among the ones that shaped me the most are Structure and Interpretation of Computer Programs and The C Programming Language.
I completed many courses on Coursera and constantly searched for new information through books and technical documentation available online. Among the websites that were most useful to me are Github and Hacker News, where I studied source code and discovered innovations that were previously unknown to me. Over time, I began contributing to FOSS projects whenever I could. At RGI Group for Application Management of Gruppo Cattolica, Verona (VR). I worked as a programmer. This was my first real work experience, where I learned patience, especially in the role of a service provider, as well as discipline and method in a large team environment. I worked on proprietary-framework-based software using JavaScript and Java 5. I also learned to use Oracle as a DBMS, which I hadn’t studied before. We used SVN for version control and a bug tracker to manage internal task coordination. At Interaktive Srl, Moncalieri (TO). I mainly worked as a System Administrator, Software Engineer, Analyst, and Developer. This experience taught me how to make smart decisions based on the variables at play and how to lead a small team with greater responsibilities. I had to build a department from scratch, balancing functional and technical aspects, passion and rationality. I studied and applied the SCRUM methodology using Trello as a virtual kanban board. As a version control system, I used GIT, which I had already mastered through personal projects. Our team developed several microservices that were part of a centralized core project. The main technologies I chose were Java 8, PHP 7.3, JavaScript, HTML, and CSS. I developed WordPress plugins to interact with the core service. We used Laravel and Lumen primarily for admin interfaces and secondary microservices. For some web apps, we used React.js. The core service had two main components: a web service in Vert.x (Java 8) and a batch system built with a proprietary framework. The main DBMS was PostgreSQL, and I made extensive use of PLPGSQL. As I began hiring junior developers, I used pair programming to teach and identify potential bottlenecks. For infrastructure, we opted for unmanaged cloud solutions for maximum flexibility. At Slymetrix Srl, Rome (RM). Roles: DevOps, Cloud Native Software Engineer, Analyst, Developer. This experience introduced me to the startup world—highlighting the flexibility required of software and the importance of solid architectural design in a fully cloud-based environment. We launched a new product in the Italian market that tracks ecommerce revenue and expenses across multiple channels to suggest optimal budgeting strategies for users. Together with the team, we experienced the pressure of working in a startup, while also enjoying building something we believed in. Technologies were all based on Google Cloud Platform. The project was divided into three main modules: showcase, academy, and analytics (the business core). I became proficient with Google Cloud Functions (Node.js-based), used to handle events. The dashboard was built with PHP 7.3 using Laravel, retrieving and visualizing data from PostgreSQL (Google Cloud SQL) with charts and tables, allowing user customization. Although we primarily used PostgreSQL, we also experimented with Google Data Studio, developing a custom Google Data Source via BigQuery. We used Memcache for sessions and caching. The dashboard ran on Google Cloud Run (a Kubernetes abstraction layer),with events traveling through Pub/Sub to trigger functions. Static file persistence was managed through Google Cloud Storage, behind Google Cloud Load Balancing. Thanks to this setup, we achieved 100% uptime, which was critical for our use case. We also integrated directly with Google Tag Manager by developing a custom template. Another key skill I developed was the creation and analysis of metrics, which was crucial both for monitoring software performance and cost optimization. Allows safe, high-performance programming with modern language features. Ideal for high-performance, reliable microservices. Extremely customizable, fast, and resource-efficient. Great keyboard-based navigation thanks to its modal nature. Since my software runs on Linux servers, I use it on my desktop too. Offers maximum flexibility and customization—perfect for development. A de facto standard for cloud-native apps. I use Docker Desktop on macOS and Windows to port my entire environment. Essential, especially when combined with docker-compose. Perfect for spinning up dev environments in seconds. In my view, the best relational DB. Allows atomic-level control, custom types, indexing, and more. Especially useful for analytics software. PLPGSQL enables extremely fast operations.Work Experience
Developer
2015
CTO
2015–2019
CTO
2020–2023
tl;dr
What I enjoy using
What I have used
What I know how to use