Michael Abebe

Headshot of Michael Abebe.

I am a fourth year Ph.D. student in Computer Science at the University of Waterloo, advised by Khuzaima Daudjee. I am also a member of the Data Systems Group.

Generally, my research interests lie in the intersection of distributed systems, databases, and machine learning. I am particularly interested in building adaptive distributed data systems.

I received a Bachelor of Computer Science degree from Waterloo in 2016, with a focus on bioinformatics.

Below you can find additional information on my teaching experiences and awards which I have received. My CV is also available.


Data Placement within Distributed Systems: Modern systems exist within a clusters of servers, with data distributed across the cluster. Therefore, how data is placed, and accessed, is critical to application performance. My research is focused on using the access pattern of the applications to intelligently place data so as to improve performance. I am currently working on projects that apply these techniques to distributed storage systems, specifically erasure coded storage systems, as well as database systems.


DBLP | Google Scholar


DynaMast: Adaptive Dynamic Mastering for Replicated Systems
Michael Abebe, Brad Glasbergen, Khuzaima Daudjee
IEEE International Conference on Data Engineering (ICDE) (Tech Report) (Slides) (Talk)

ChronoCache: Predictive and Adaptive Mid-Tier Query Result Caching
Brad Glasbergen, Kyle Langendoen, Michael Abebe, Khuzaima Daudjee
ACM SIGMOD/PODS International Conference on Management of Data (SIGMOD)

Demo: Sentinel: Understanding Data Systems
Brad Glasbergen, Michael Abebe, Khuzaima Daudjee, Daniel Vogel, Jian Zhao
ACM SIGMOD/PODS International Conference on Management of Data (SIGMOD) Demo Track (Demo video)


WatDFS: A Project for Understanding Distributed Systems in the Undergraduate Curriculum
Michael Abebe, Brad Glasbergen, Khuzaima Daudjee
ACM Technical Symposium on Computer Science Education (SIGCSE) (Slides)


EC-Store: Bridging the Gap Between Storage and Latency in Distributed Erasure Coded Systems
Michael Abebe, Khuzaima Daudjee, Brad Glasbergen, Yuanfeng Tian
International Conference on Distributed Computing Systems (ICDCS) (Slides)

Tutorial: Adaptive Replication and Partitioning in Data Systems
Brad Glasbergen, Michael Abebe, Khuzaima Daudjee
ACM/IFIP International Middleware Conference (Middleware) (Slides)

Apollo: Learning Query Correlations for Predictive Caching in Geo-Distributed Systems
Brad Glasbergen, Michael Abebe, Khuzaima Daudjee, Scott Foggo and Anil Pacaci
Extending Database Technology (EDBT)


Diversity-generating retroelements: natural variation, classification and evolution inferred from a large-scale genomic survey
Li Wu, Mari Gingery, Michael Abebe, Diego Arambula, Elizabeth Czornyj, Sumit Handa, Hamza Khan, Mingshun Liu, Mechthild Pohlschroder, Kharissa L. Shaw, Amy Du, Huatao Guo, Partho Ghosh, Jeff F. Miller and Steven Zimmerly
Nucleic Acids Research


A pipeline of programs for collecting and analyzing group II intron retroelement sequences from GenBank
Michael Abebe, Manuel A Candales, Adrian Duong, Keyar S Hood, Tony Li, Ryan A E Neufeld, Abat Shakenov, Runda Sun, Li Wu, Ashley M Jarding, Cameron Semper and Steven Zimmerly
Mobile DNA



I worked on two different infrastructure teams during my internships (2015) at Facebook.

On the Data Infrastructure team I worked on the next generation data warehouse system. I helped improve operational workflows by building a custom log search tool for distributed debugging. I additionally worked on a shared memory file transfer between the client interface and the storage interface.

On the Service Infrastructure team I worked on service discovery and the internal ZooKeeper system. My work focused on moving service discovery from a daemon process to a service itself. In the process I modified the Thrift compiler to provide transport level request caching.


As a Software Engineering Intern (2014) at Palantir I prototyped a web application that allowed users to collaborate during investigations within the Palantir web applications. The application allowed users to directly share the state of their investigations as a first class citizen. I also worked on the maps application within Palantir.


I am currently supported by a Facebook Emerging Scholar award and a NSERC CGS-D scholarship. Previously, I have been supported by the NSERC CGS-M scholarship, the David R. Cheriton Graduate Scholarship and the Ontario Graduate Scholarship.


I was a TA for CS 454 (Distributed Systems) in the winter of 2017, 2018, 2019, 2020 and the summer of 2018. In these offerings I gave guest lectures on erasure coded storage systems. I also helped develop a new assignment on distributed file systems, which is described in our WatDFS SIGCSE paper.


Email: mtabebe@uwaterloo.ca

GitHub: @mtabebe

Office: Davis Centre 2118