Silvano Cerza — Software Engineer
I enjoy working on different platforms, technologies and solving tough problems.
I consider myself a generalist and am never scared to tackle a new challenge using unknown languages or technology. It’s something that I aim for since I believe it’s the best way to learn something new, and that every problem requires the right tool to be solved the best way possible.
Some of the stuff I've done include CLIs in Go and Python, small web apps in Django/Python, desktop and mobile apps in Qt (C++ framework), Electron applications in Typescript and Clojure/Script, enhance and evolve CI/CD infrastructure on CircleCI and GitHub Workflows.
Apr 2022 – Sep 2022
I was part of the DevOps team and focused on CI, release management and developers experience.
Most of my time was spent enhancing and evolving our CircleCI infrastructure, making the release process leaner and easier to understand, building scripts and tools to enhance the day to day job of other developers.
I also contributed in small parts to the main product application writing Clojure and ClojureScript.
Jul 2020 – Mar 2022
I work mainly on the ArduinoCLI, implementing
new features, fixing bugs and writing tests.
I also work on other minor supporting projects for the ArduinoCLI like external libraries, GitHub Workflows Actions and similar things.
Most of the times I handle the release process of the ArduinoCLI, from triggering the build process to communicating with marketing for social communications.
Jun 2019 – Jul 2020
I work on several cheminformatics projects, I focus mainly on GUI development in C++ using the Qt framework, but also had the chance to contribute with the scientific team to the core components of the products.
Feb 2015 – May 2019
I work mainly on web applications in Python
based on the Django framework.
I gradually moved to C++ developing multi platform apps using the Qt framework.
On occasion I also train newcomers and interns on Git, Python and C++. I've also had the chance of managing small projects.
Arduino CLI is a command line tool written in Go,
it's used to manage and install libraries,
the tools necessary to compile and upload
to different Arduino boards, and several other things.
Among its features it's also the backbone of the new Arduino IDE, using a gRPC interface to communicate with each other.
I plan and implement new features, fix existing bugs, enhance legacy parts and write tests for untested parts of the code.
Arduino IDE 2
Arduino IDE 2 is the new version of the famous
Arduino IDE used by millions of makers around the
The new version has been rewritten from scratch using Electron and the Theia framework. It uses the Arduino CLI internally to implement most of its features.
I implemented some minor feature, fix existing bugs, and handled integration of new functionalities from the Arduino CLI.
Kibitzer is a desktop app to train
computational models used to predict molecules' pKa
I integrated several C and C++ libraries in a multi threaded model to parallelize their execution to speed up the statistical computation for a better user experience.
An open source library to create charts declaratively in QML.
I contributed by adding several features like charts zoom and bug fixing.
An open source SDK for Magic Card Market, uses reflection to dinamically resolve the API endpoints.
A CLI tool to handle upload and download of versioned files to AWS S3 buckets.
Monitoring Open Source Success in Arduino
In this talk, I tell the story of how my team started using Datadog in an unusual way to monitor the success of one of the most important of its Open Source projects, the Arduino CLI, by gathering download information from different sources and monitoring build failures. I also explore some of the next steps we can take to gain insight into our other projects.
A simple GUI written in C++ using OpenCV and ZBar, to scan and catalog comics by number and quality.
Datadog Agent is an open source monitoring tool.
I contributed to Six, a C++ wrapper around the CPython API supporting multiple versions of Python that can be used by other languages like Go.
Cute Code Accessor
Cute Code Accessor is a plugin for Unreal Engine that enables the use of Qt Creator as its IDE.
An highly customizable Hugo theme based on the CSS framework Bulma.
A scraper for my personal bank account, used to monitor how I spend my money.
This resume has been completely written in HTML and Scss. Uses a small Dart script and dart-sass to compile and minimize Scss sources.