Victor Zakhary

Victor Zakhary

Research Assistant - Computer Science - UCSB

About Me

I am a forth year Research assistant and a PhD candidate at the Distributed Systems Lab (DSL) at UCSB. I am interested in distributed systems, data storage and management, cloud management, and computing research. My work currently focuses on optimizing the deployment of geo-replicated databases. Geo-replication is used to overcome datacenters scale outages. As the number of cloud providers and datacenters is growing, it becomes harder to figure out which datacenters to use to deploy our databases/storage on to achieve our application goals. Application goals can vary between minimizing the deployment cost ($) to minimizing the response time of a transaction, regardless of the deployment cost, while strong consistency is perseved between replicas. We built optimization models that embed the replication management protocols constraints into the optimization. The outputs of these models are: where to deploy your storage, where to serve your transactions and some protocol specific configurations.

Papers

Victor Zakhary, Divy Agrawal, and Amr El Abbadi "Caching at the Web Scale" WWW 2017 (tutorial) [pdf] [pptx].

Cetin Sahin, Aaron Magat, Victor Zakhary, Amr El Abbadi, Huijia (Rachel) Lin, and Stefano Tessaro. "Understanding the Security Challenges of Oblivious Cloud Storage with Asynchronous Accesses" ICDE 2017 (Demo) [pdf] [video]

Victor Zakhary, Faisal Nawab, Divy Agrawal, and Amr El Abbadi. "DB-Risk: The Game of Global Database Placement" SIDMOD 2016 (Demo) [pdf] [online demo].

Cetin Sahin, Victor Zakhary, Amr El Abbadi, Huijia (Rachel) Lin, and Stefano Tessaro. "TaoStore: Overcoming Asynchronicity in Oblivious Data Storage" S&P 2016. [pdf].

Victor Zakhary, Hicham G. Elmongui, and Magdy H. Nagi. "MobiPLACE*: A Distributed Framework for Spatio-Temporal Data Streams Processing Utilizing Mobile Clients’ Processing Power." Mobiquitous 2013 [pdf].

Teaching Experience

I served as the Lead TA in the Computer Science department at UCSB 2015-2016. I worked as a teaching assistant for 6+ years(2010-2017). At UCSB(2013-2017), I assisted teaching the following classes at UCSB:

  • CS130A: Data Structures and Algorithms using C++ - Winter 2016
  • CS501: Pedagogies and Teaching Strategies for the new graduate students - Fall 2015
  • CS171: Distributed Systems - Spring 2015, Spring 2017
  • CS40: Computer Foundation and Discrete Mathematics - Winter 2015
  • CS271: Distributed Systems, graduate class - Fall 2014
  • CS138: Automata and Languages - Spring 2014
  • CS130A: Data Structures and Algorithms using C++ - Winter 2014
  • CS8: Introduction to Programming using Python - Fall 2013, Spring 2016

In addition, I worked as a Teaching assistant for three years (2010-2013) at the department of Computer and Systems Engineering in Alexandria University, Egypt. I assisted teaching the following classes:

  • Introduction to Programming using Python
  • Introduction to Programming using QBasic
  • Computer Architecture
  • Microprocessors
  • Discrete Mathematics and its Applications
  • Linear Control Systems
  • Data Structures using C++

Awards

  • Nominated to the campus-wide Outstanding Teaching Assistant Award 2016-17
  • Doctoral Student Travel Grant 2016-17
  • Oracle Reseach fellowship 2016-17
  • The Outstanding Teaching Assistant from the Computer Science Department at UCSB for the academic year 2015-16
  • The Outstanding Teaching Assistant in the Computer Engineering Program from the College of Engineering at UCSB for the academic year 2014-15
  • The Distinguished Teaching Assistant from the Computer Science Department at UCSB for the academic year 2014-15

Leadership Experience

  • CS Graduate affairs committee member (2015-2016)
  • CS lead teaching assistant (2015-2016)

Industrial Work Experience

PhD Software Engineer Intern - Ads Infrastructure - Google (June 2016 - September 2016)

I worked on resource optimization and dynamic load balancing for a very large scale caching layer to support hundreds of millions of keys lookups per second. By the end of the internship, I helped saving 40% of the server cpu usage for this caching service.

PhD Software Engineer Intern- Vanadium - Google (June 2015 - September 2015)

I built a distributed p2p file system over a distributed p2p key/value store. We built a POSIX like api to support file and directory hierarchy management. In addition, we support sharing between multiple clients enforcing the file system's permissions semantics.

Software Engineer Intern at Sears Holdings Corporation (June 2014 - September 2014)

I worked in the search optimization team. Throughout my internship, I built services and debugging tools to provide the team better understanding about their core search responses. Also, we developed a proof of concept solving similar product problem based on product's features. We used typical tf-idf text similarity technique. We also updated the similarity scores using topics generated by LDA topic modelling algorithm to get better short text similarity scores.

Co-founder of Kdev (Kreation development), Alexandria, Egypt (February 2012 – August 2013)

I helped cofounding Kreation development IT solutions in Alexandria, Egypt. I also worked as web and mobile freelancer developer on Odesk(Upwork).

Software Engineer in Innuva IT solutions, Alexandria, Egypt (February 2011 – February 2012)

Solved performance and scalability problems of web applications by distributing computation load between client and server and reduce communication load by caching.