Curriculum Vitae
Alfredo Di Napoli — Functional Programmer.
// at a glance
Passionate functional programmer, working remotely from Rome, Italy.
I'm an enthusiastic computer scientist who tries to find the most elegant solution for the problem at stake. I like to define myself a beauty-driven developer. Quoting David Gelernter: Beauty is more important in computing than anywhere else in technology because software is so complicated. Beauty is the ultimate defense against complexity.
// skills
Functional Programming
10+ years of professional experience as a functional programmer, mainly Haskell, PureScript and Scala. Eager experimenter of every functional language, ranging from Common Lisp to Idris.
Architecture & Design
Experience in designing and implementing software architectures, especially distributed and fault tolerant systems. Experience leading remote teams.
OOP Programming
Five years of experience in Python development, using Django. Two years of experience in C++ development, with a focus on the C++11 standard.
Technical
// experience
Well-Typed
Senior Haskell EngineerWorking for clients on various projects spanning from school education to text mining research. Contributor to GHC and other Haskell infrastructure projects.
oscoin (Monadic GmbH)
Jan 2019 — Haskell/Rust EngineerHaskell and Rust developer on Oscoin and Osrank.
- Took active part in the design and implementation of the oscoin blockchain.
- Actively working on osrank, a reputation layer for oscoin based on Google's PageRank working against big social graphs that don't necessarily fit into main memory.
IOHK
Oct 2017 — Nov 2018 · Haskell Senior Engineer & Middleware Team LeaderHaskell developer on Cardano, a next-generation cryptocurrency and platform, and team leader of the Middleware team.
- Designed and implemented the new backend for Cardano's crypto wallet.
- Helped developing the new architecture for the post-Byron backend, mainly the consensus library implementing the PoS algorithms (BFT, Praos, Genesis).
IOHK
Jul 2017 — Oct 2017 · Haskell Core DeveloperHaskell developer on Cardano.
- Migrated Cardano's serialisation layer from the
storelibrary to thecborglibrary, together with bug fixing and performance improvement of the existing code.
Iris Connect
Jan 2017 — Jul 2017 · Lead Cloud Services EngineerLead developer on Haskell & PureScript projects, spanning from video transcoding to real time communication (WebRTC).
- Successfully and seamlessly integrated a Haskell microservice into a larger Ruby web application, delivering a customer-facing feature on time and budget.
- Designed tooling to deploy the whole infrastructure to Elastic Beanstalk, successfully migrating from Heroku to AWS, saving money and gaining system stability.
- Designed the architecture for a real-time communication service based on WebRTC, where components written in Swift communicate with a PureScript application via a signalling server.
- Designed standalone Haskell applications to be run on AWS Lambda.
Iris Connect
Oct 2013 — Dec 2016 · Senior DeveloperDesign and development of medium-sized Haskell & PureScript applications. Tech lead on a fault tolerant, highly concurrent and distributed video transcoding system.
- The shared-nothing architecture cut 30% of the infrastructure costs, switching from a continuous to an auto-scaling-based cluster, capable to shrink based on load and resource demand.
- Designed a new scaling algorithm which improved transcoding throughput whilst cutting EC2 billing costs of almost 50%.
Cake Solutions
Nov 2012 — Oct 2013 · Software DeveloperDesign and development of medium-sized Scala applications. Projects spanning from game development to biometric security applications.
OSS Contributor
OngoingProlific OSS contributor, listed as such in at least three Haskell projects. Author of several independent projects and a couple of Vim plugins.
// education
University of "Roma Tre" — Italy
Master Degree in Computer Science, Summa cum Laude, grade average 29.4 over 30 (4/4 GPA).
October 2006 — May 2012Thesis on high-performance, high-productivity oriented GPU computing.
// publications
A. Di Napoli, F. Gasparetti, A. Micarelli, G. Sansonetti, 'A Step toward Personalized Social Geotagging', IUI 2010 Workshop on Social Recommender Systems, abstract.