Federico Di Gregorio is a physicist-turned-software engineer and entrepreneur with over 21 years of experience bridging research, embedded systems and web applications. Based in Turin, he founded and leads DNDG Srl after long-standing involvement in Debian and a decade of open-source consultancy and knowledge-transfer work. His contributions to high-profile projects—such as memory-leak fixes and advanced type handling in psycopg2 and device support for Zephyr RTOS—showcase deep expertise in databases, low-level systems and IoT. He also improved .NET MIME handling in MimeKit, reflecting a knack for pragmatic, cross-language problem solving. A committed educator, Federico has taught internet application development and continues to focus on system integration, tooling for semantic authoring and government networks. Colleagues know him for combining scientific rigor with a passion for teaching and free-software community stewardship.
21 years of coding experience
Graduate, Physics, Graduate, Physics at Università degli Studi di Torino
PostgreSQL database adapter for the Python programming language
Role in this project:
Back-end Developer & Database Engineer
Contributions:467 commits, 13 PRs, 13 pushes in 15 years 9 months
Contributions summary:Federico contributed to the PostgreSQL database adapter for Python (`psycopg2`) by fixing memory leaks, and implementing features like the copy_expert and the get_transaction_status features. They worked extensively on improving the handling of various data types, including UUID arrays and time zone offsets, with a focus on correctness and efficiency. The contributions demonstrate a deep understanding of the PostgreSQL database internals and the Python database API.
A .NET MIME creation and parser library with support for S/MIME, PGP, DKIM, TNEF and Unix mbox spools.
Role in this project:
Back-end Developer
Contributions:13 commits in 6 months
Contributions summary:Federico primarily focused on improving the `MimeKit` library. They implemented new features using LINQ-like fluid constructors to create `MimeMessage`, `TextPart`, `Multipart`, and `MimePart` objects. They also added tests for these constructors and fixed an issue regarding content object parameters. Additionally, the user contributed to code cleanup and made modifications to support PostgreSQL-based certificate database functionality.
unixextractionc-sharpdkimspools
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.