Filippo Bergamo

Software Designer & Developer

Summary

I'm a passionate software designer and developer with a strong curiosity for science and engineering.

I'm looking for new projects in challenging and stimulating environments to put my established expertise to the test and to build up new skills.

For the last 10 years I have enjoyed designing and implementing custom software solutions for enterprises, mainly engaging in high-level object-oriented programming, developing desktop and client-server applications and maintaining databases. Thanks to that, I was able to cooperate with companies and departments spanning a wide range of business areas: from front-desk customer service to accounting, from driving laboratory instruments to building interoperability with business partners.

This has trained me to identify key similarities among different classes of problems and to design portable solutions across different domains.

In 2019 I started a new career as a freelance contractor, willing to put myself to the test in new areas, alongside the established route of my mainline career.

As a freelancer, I had the chance to expand my areas of expertise to include industrial software development and to acquaint myself with low-level programming and embedded systems, acquiring a different perspective on software design and a deeper understanding of processes at different levels in the development stack.

I am a supporter of the Free Software philosophy; for 6 years, I cooperated with Replicant, a free-software mobile operating system based on Android, serving as a member of the project's Steering Committee from 2019 to 2023.

Working with Replicant and other free-software projects has had a significantly positive impact on my work, pushing me to greatly improve my GNU/Linux skills; furthermore, being acquainted with submitting my code to public reviews has served me as a tool for continuously improving its quality; finally, cooperating with people from all around the world has inspired me to always take different views and approaches into consideration.

Work Experience

2022, Present - Senior Consultant

Satispay, Galdabini 1890

Freelance for Sicis - Milan / Indevo - Gallarate

Partnering with Sicis and Indevo, I operate as a Senior Consultant for various firms; in particular, I take care of developing and maintaining Satispay’s front-end app for Windows (UWP) and I provide architectural and development support to Galdabini SPA for their control software for straightening and testing machines, based on WPF and SQLite technologies.

2021, Present - Back-end Engineer

Philip Morris International

Freelance for TIQ - Milan

Since 2021, I’ve worked for a multi-team joint development project for a supply chain production planning and optimization system, serving as a Backend Engineer in the core-engine team.

The application is split between a server-side .Net Core (C#) engine and a client-side web front end that communicate via Web API. These components are themselves part of a larger system of interconnected microservices, communicating via REST APIs.

I’m appointed of implementing new server-side features, mostly related to exchanging data between the core-engine and other microservices, while also maintaining and expanding the functionality of the core production plan optimization and scheduling engine.

As the project is driven by the Agile paradigm, I attend daily coordination meetings with the different international teams that are involved in the product’s development. In parallel with development, I’m appointed of coordinating the 3rd-level run-and-support service, cooperating with different technical teams to guarantee a stable and reliable system operation.

2020 - Embedded System Developer

Freelance for DKR Drinkatering s.r.l - Rescaldina (MI)

I designed and implemented a remote configuration system for purified water kiosks, adding a back-end web service implemented in C and a JavaScript front end to the existing microcontroller-based platform. The system is to be deployed in various kiosks across a wide geographical area, with its front end being accessible via a regular web browser, enabling technical staff to monitor, configure and manage the kiosk's operation remotely.

2019, 2020 - Custom Software Designer

Freelance for Istituto Italiano dei Plastici (IIP) - Monza

I designed a custom LIMS for a chemical testing laboratory, developing all of its components from the ground up, periodically coordinating with the laboratory's staff to improve and adapt the system to their operating routine. The system consists of a MySql database, a C# back end, a WinForms/.Net desktop application, and a custom HTML templating engine.

The system's functionality includes: registering samples, managing the tests catalogue, acquiring and indexing test results, generating test reports, maintaining a searchable historical index of all tests.

2014, 2021 - Lead Developer

Cedam Italia s.r.l. - Bresso (MI)

I have worked as in-house developer for this healthcare company for 7 years, primarily supporting the biomedical testing department. For the last 5 years I have served as lead engineer, providing technological advisory to the company's management and taking care of the whole software development process in various scenarios:

  • LIMS design and maintenance, Instrument-to-LIMS interfacing:

    I developed most parts of the company's LIMS and I was responsible for its maintenance, constantly developing new solutions to support the steady business growth and the continuous integration of new tasks in the established workflow. I interfaced various testing instruments to LIMS by implementing different communication protocols (e.g. ASTM) to streamline the management of different instruments under unified procedures and UIs.

  • Workflow digitalization and automation:

    I coordinated with the lab's toxicology branch to design a software-driven processing chain for drugs of abuse testing in urine and hair specimens. This system reduced sample-processing time dramatically by eliminating manual data-entry operations and automating data exchange between instruments;

  • Interfacing with External Systems:

    I designed a unified public API for real-time interoperation between the company's software system and a variety of diverse software ecosystems used by customers and business partners. The API was implemented via WCF web services providing a platform-independent connection endpoint for the collaborative management of the biomedical sample testing chain.