Welcome to my portfolio

๐Ÿ‘‹๐Ÿป Hi! Iโ€™m Davide, a Software Engineer from Italy, who likes building software and solve problemsโ€ฆ actually, most of the time, build software for solving problems! (But there are also some exceptions (if you could see all my side projects and POC you would understand ๐Ÿ˜…)).

๐Ÿš€ Iโ€™m very interested in software development and software architecture design, and I like (try ๐Ÿ˜) to do it in the right way.

๐Ÿ”ญ I love to study new technologies, design patterns, philosophies, frameworks, and especially I love to experiment with them.

๐Ÿ’ฌ I also like to discuss about tech stuff, because I believe that the greatest teachings and ideas come from discussions and talks.

๐Ÿ“ซ How to reach me:

Do you wanna know more? Visit the About me page!


Contacts

Experience

๐Ÿ‘ค Data and Software Engineer

๐Ÿ“ Enel Group, Rome, Italy
๐Ÿ—“ November 2020 - Present

Overall

  • Engineering of AI models and data elaboration jobs, using Kubernetes, Docker, AWS serverless services (step functions, lambda, sagemaker), Python.
  • Design and develop data pipelines
  • Study state of the art tool for data management, like Apache Ariflow and Dagster.
  • Monitoring of models and systems, applying major patterns like distributed tracing, log aggregation, metrics
  • Development of dashboards and little frontends with Angular
  • Design and developing of API, usually implementing a micro-services architecture
  • Implement DevOps and MLOps pipelines to deploy industrialized AI and ML solutions Following some specific projects I worked on

Development of asynchronous REST API to expose inference endpoint with microservices and task queues
Development of microservices that expose REST API to trigger inference. AI models are loaded dinamically into the microservices.
Microservices developed in Python, using Flask (stack ngnix + uWSGI + Flask) and FastAPI (with uvicorn).
Celery was used as task queue implementation, with SQS as broker.
Deployed on Kubernetes.

Monitoring of microservices application and AI model performances
Implemented application monitoring for microservices application, with distributed tracing, log aggregation and metrics. Data exposed on CloudWatch with custom dashboards and log queries. CloudWatch alarms used to monitor status of microservices.

Designed and implemented a monitoring process for AI model performances. Data exposed on CloudWatch with custom dashboards. Possibility to set alarms on common models metrics (e.g. accuracy, f1-score).

Development of backend REST API and contributed to development of validation dashboard
Backend developed with FastAPI, exposes REST API. Integrated with DynamoDB.
Contributed to the development of a dashboard for validating modelโ€™s predictions, providing groundtruth.
Developed with Angular. Deployed on Kubernetes.

Design and development of workflow for data pipelines
Serveless solutions deployed on AWS.
Workflow implemented with AWS StepFunctions. Steps developed with Lambda Functions or SageMaker Processing Job.
Integrated with different types of sources: PostgreSQL, DynamoDB, Sharepoint.

๐Ÿ‘ค Java Software Engineer

๐Ÿ“ Exeest Inc. https://exeest.com/, Rome, Italy
๐Ÿ—“ May 2020 - July 2020
I designed and implemented ad architecture for business monitoring in a microservices architecture. (Spring, Kubernetes, Fluentd, EFK, MongoDB).
This project is part of the work for my master degree.

  • Experience with microservices architecture
  • Monitoring microservices
  • Monitoring the business trought monitoring patterns and tool (Application metrics, Log aggregation)
  • Developed a microservice for query the monitored data and obtain business analytics.
  • Experience with monitoring tools (EFK Stack, Prometheus, Grafana)

๐Ÿ‘ค Android developer

๐Ÿ“ Nextrek s.r.l, Rome, Italy
๐Ÿ—“ February 2028 - May 20218
Development of an Android application for the recognition of logos and trademarks and the research of related oppositions (legal documents).
This project is the work of my three-year thesis.

Education

๐ŸŒ Languages: English ๐Ÿ‡ฌ๐Ÿ‡ง, Spanish ๐Ÿ‡ช๐Ÿ‡ธ, Italian ๐Ÿ‡ฎ๐Ÿ‡น.

๐ŸŽ“ Master degree on Computer Science and Engineering - 100/100 with honors

Universitร  degli studi di Roma Tre
2018 - 2020
Backend development, monitoring, software architecureโ€™s design, software engineering, data management, database SQL and NoSQL,Java, Python, Machine Learning Artificial Intelligence, Big Data, Spark, Hive, MapReduce, MongoDB.

Thesis on: Business monitoring in a micro services architecture

๐ŸŽ“ Bachelor degree on Computer Science and Engineering - 100/100 with honors

Universitร  degli studi di Roma Tre
2015 - 2018
Development of an Android application for the recognition of logos and trademarks and the research of related oppositions (legal documents). This project is the work of my three-year thesis.

๐ŸŽ“ High School - Diploma tecnico tecnologico

ITT Marconi, Latina Italy
2015

โœ… LPI Essentials Linux Professional Institute

2013

Skills

Programming

Java Python Javascript Node.js Database SQL/NoSQL Spark/Hive/MapReduce Bash

Tools

Git Fluentd Prometheus/Grafana Docker Kubernetes

Interests

I love to study new technologies, design patterns, philosophies, frameworks, and especially I love to experiment with them. I also like to discuss about tech stuff, because I believe that the greatest teachings and ideas come from discussions and talks.

But technology is not my only passion. Iโ€™m a Scout FSE, and Iโ€™m very proud about my path. Thanks to this I lived wonderful experiences and allowed me to grow up with solid and good values.

How to not include my passion for sport! I love football, basket, padel, ping pong and I think any other kind of team sport.

Curriculum

Link to my CV
LinkedIn: Davide Bersani