Ali Tabatabaee

Ali Tabatabaee

Senior Research Engineer

Huawei Canada

Biography

I am a Senior Research Engineer at Huawei Canada, working in the Distributed Scheduling and Data Engine Lab. I hold a Ph.D. in CS from UBC, where I researched optimizing decisions when inputs are uncertain but can be refined through costly queries. I specialize in algorithms, optimization, distributed systems, and databases.

Download my curriculum vitae.

Interests
  • Algorithms
  • Optimization
  • Distributed Systems
  • Databases
  • Software Engineering
Education
  • Ph.D. in Computer Science, 2025

    The University of British Columbia

  • M.Sc. in Computer Science, 2021

    The University of British Columbia

  • B.Sc. in Computer Engineering, 2019

    Sharif University of Technology

Experience

 
 
 
 
 
Huawei Canada
Senior Research Engineer
Sep 2025 – Present Canada
  • Working in the Distributed Scheduling and Data Engine Lab
 
 
 
 
 
The University of British Columbia
Graduate Research Assistant
Sep 2021 – Aug 2025 Canada
  • Led independent research on optimization with explorable uncertainty, defining novel problem formulations, designing algorithms, and proving their guarantees across three peer-reviewed papers and a Ph.D. thesis
  • Designed real-time data acquisition strategies for facility location over bounded-speed moving objects, proving the best possible competitive ratios across several variants and impossibility results in high dimensions
  • Initiated the study of perpetual scheduling under explorable uncertainty, designing constant-factor competitive and approximation algorithms in the online and offline settings, respectively
 
 
 
 
 
The University of British Columbia
Graduate Teaching Assistant
Sep 2019 – Aug 2025 Canada
  • Delivered tutorials, office hours, and assignment and exam evaluations across 15 terms and 5 courses covering algorithms and theory of computing
 
 
 
 
 
The Australian National University
Research Intern
Apr 2025 – Jun 2025 Australia
  • Extended piqtree with IQ-TREE’s sequence alignment simulator using C++ and Python, and built end-to-end workflows generating alignments from coalescent trees simulated with msprime
 
 
 
 
 
The University of Edinburgh
Research Intern
May 2024 – Jul 2024 Scotland
  • Investigated spectral clustering for graphs with hierarchical clusters, proving an expected eigengap under strongly separated edge probabilities across levels and developing Python simulations to examine eigengap patterns
 
 
 
 
 
Kyoto University
Research Intern
Jul 2023 – Aug 2023 Japan
  • Drove the publication of an O(kn log n) algorithm to construct frequency difference consensus trees, improving the previous best O(kn log² n), by formalizing its proofs, benchmarking it, and writing the final manuscript
 
 
 
 
 
The University of Zurich
Research Intern
Jun 2022 – Aug 2022 Switzerland
  • Developed a Python agent-based simulation to model how miners’ transaction-inclusion and block-acceptance strategies affect Bitcoin consensus and miner payoffs when transaction fees are the sole mining incentive
 
 
 
 
 
Aquanow
Research Intern
Sep 2020 – Aug 2021 Canada
  • Led the implementation of a C++ network simulator and a 100-node Azure test network to evaluate attacks on Beam, a privacy-focused blockchain based on MimbleWimble
 
 
 
 
 
The University of British Columbia
Graduate Research Assistant
Sep 2019 – Aug 2021 Canada
  • Designed and evaluated three attacks on transaction relay in MimbleWimble blockchains, including a new denial-of-service attack that blocks over 45% of transactions with 10% malicious nodes
  • Refined the Proof-of-Wait algorithm for Cumulus, a BFT-based sidechain, implemented its on-chain election in Solidity, and evaluated it with JavaScript, showing 93% checkpoint success with 50% silent validators
 
 
 
 
 
Peer Social
Research Intern
May 2020 – Aug 2020 Canada
  • Conducted research on the scalability of a decentralized social network application
 
 
 
 
 
Sharif University of Technology
Undergraduate Research Assistant
Sep 2017 – Aug 2019 Iran
  • Designed massively parallel clustering algorithms with constant-factor approximation guarantees, strongly sublinear per-node memory, optimal communication complexity, and complementary lower bounds
 
 
 
 
 
Sharif University of Technology
Undergraduate Teaching Assistant
Sep 2016 – Dec 2018 Iran
  • Managed tutorials and designed and evaluated assignments and quizzes across 9 teaching appointments and 4 courses covering algorithms, theory of computing, and artificial intelligence
 
 
 
 
 
Aalto University
Research Intern
Jun 2018 – Aug 2018 Finland
  • Built SOFIE’s decentralized marketplace from scratch, implementing Solidity smart contracts for end-to-end auction workflows, deploying them to a local Ethereum blockchain, and testing them with JavaScript
 
 
 
 
 
IT-Orbit Co.
Software Engineering Intern
Jul 2017 – Sep 2017 Iran
  • Experimented with the source code of Bitcoin to understand its consensus algorithm and network behavior
 
 
 
 
 
Salam High School
Instructor
Sep 2013 – Jan 2016 Iran
  • Taught Design of Algorithms, Programming in C++, Graph Theory, and Combinatorics

Honors & Awards

The University of British Columbia
President’s Academic Excellence Initiative Ph.D. Award
The University of British Columbia
Faculty of Science Ph.D. Tuition Award
The University of British Columbia
Special UBC Graduate Scholarship - Blockchain@UBC Graduate Student Award
The University of British Columbia
International Tuition Award
Iran’s National Elites Foundation
Grant for Undergraduate Studies
National Organization for Development of Exceptional Talents
1st Place in the 7th Hellinet Programming Contest
Salamcup
1st Place in the 2nd Salamcup Programming Contest

Talks

The 14th International Conference on Algorithms and Complexity
Perpetual Scheduling with Explorable Uncertainty
The 16th Latin American Theoretical Informatics Symposium
Minimizing the Size of the Uncertainty Regions for Centers of Moving Entities
The 49th International Conference on Current Trends in Theory and Practice of Computer Science
Fractional Bamboo Trimming and Distributed Windows Scheduling
The 4th Blockchain Technology Symposium
One Bad Apple Spoils the Bunch: Transaction DoS in MimbleWimble Blockchains
The IEEE 4th International Conference on Blockchain and Cryptocurrency
One Bad Apple Spoils the Bunch: Transaction DoS in MimbleWimble Blockchains
The 31st Canadian Conference on Computational Geometry
Distributed Unit Clustering

Software Projects

A sequence alignment simulator integrated into piqtree, the Python package for IQ-TREE, using C++ and Python
Course: Blockchain Software Engineering
World of Tulips
A fully decentralized application that virtualizes a tulip growing community using Solidity, JavaScript, and CSS
A decentralized marketplace that enables the trade of different types of assets using Solidity and JavaScript
Course: Systems Analysis and Design
The Supervisor (Rahnama)
A supervisor simulator system comprising eight subsystems that provide students with recommendations on scheduling, internships, accommodation, etc., using Python, JavaScript, and CSS