Generally, my research interests lie in the intersection of distributed systems, databases, and machine learning. I am particularly interested in how machine learning can be applied to data placement within distributed systems.
I received a Bachelor of Computer Science degree from Waterloo in 2016, with a focus on bioinformatics.
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.
Apollo: Learning Query Correlations for Predictive Caching in Geo-Distributed SystemsBrad Glasbergen, Michael Abebe, Khuzaima Daudjee, Scott Foggo and Anila Pacaci Extending Database Technology (EDBT)
Diversity-generating retroelements: natural variation, classification and evolution inferred from a large-scale genomic surveyLi 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 GenBankMichael 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.
In the 2017 and 2018 Winter semesters I was a TA for CS 454 (Distributed Systems). In both offerings I gave a guest lecture on erasure coded storage systems.
Office: Davis Centre 2118