I am a Lecturer in Computer Science at the Department of Computer Science at Brown University. I am currently teaching CSCI1010 - Theory of Computation, CSCI1570 - Design and Analysis of Algorithms, and CSCI1951A - Data Science.

Some research problems I am currently working on include the following:

- Design and analysis of algorithms:
- Lower bounds to the Input/Output (I/O) complexity of sequential and parallel algorithms;
- Computation and Communication-optimal parallel algorithms;
- Time-space and time-I/O tradeoffs;
- Algorithms resilient to byzantine memory faults: can we preserve some measure of functionality?

- Big Data analysis and sampling:
- Analysis of large and fully dynamic graphs: can we design algorithms with strong probabilistic guarantees which require just one pass over the entire network?
- Multiple hypothesis testing in Big Data: can we use tools from statistical learning theory to obtain accurate estimates over many quantities of interest?
- Learning from user preferences: how can we model user preferences given incomplete rankings?

I received my second Ph.D. in Computer Science from Brown University in 2020, I was advised by Professor Eli Upfal.

I received my first Ph.D. in Computer Engineering from the University of Padova in 2016, I was advised by Professor Gianfranco Bilardi.

From the same institution, I received a Master of Science degree in Computer Engineering (2012 advised by Professor Gianfranco Bilardi) and a Bachelor of Science degree in Computer Engineering (2009 advised by Professor Giorgio Maria Di Nunzio).