Senior Data Scientist & Algorithm Engineer
Ali Rostami
Vodafone · Düsseldorf, Germany
I build graph and optimization systems at production scale — currently modelling fibre-network rollout at Vodafone with combinatorial optimization and integer programming. PhD in Combinatorial Scientific Computing.
Experience
-
Aug 2023 — present
Senior Data Scientist and Algorithm Engineer
VodafoneAnalytical graph models using combinatorial optimization, integer programming and big data methods; time series analysis, clustering and geo-analysis.
-
Mar 2021 — Jul 2023
Senior Data Scientist
Deutsche Telekom, through Axxessio GmbHDesigned and implemented an NLU system covering TV, appointment, weather and other domains. Built annotation tools, a ranking system for training data, and a fuzzy search concept for content entity recognition.
-
Feb 2019 — Feb 2021
Senior Data Scientist
Deutsche Telekom, through MobilabSolutionsNatural language understanding for the Magenta voice platform — the same problem space as the Axxessio engagement above.
-
Feb 2017 — Jan 2019
-
2012 — 2016
Junior Software Engineer
Parallel to PhD studiesParallelized a serial geothermal simulation code using MPI and OpenMP for the Jülich Supercomputer Centre.
Education
-
2012 — 2016
PhD, Combinatorial Scientific Computing
Friedrich Schiller University Jena -
2010 — 2012
MSc, Media Informatics
RWTH Aachen University -
2004 — 2009
BSc, Applied Mathematics
Sharif University of Technology
Teaching & leadership
- Taught parallel programming, visual analytics and big data.
- Supervised seminars and theses.
- Coordinated the international GraphTea project.
Skills
Where each of these has actually been used.
- Persian Native
- English Fluent
- German Fluent
- Spanish Intermediate
Projects
-
GraphTea
2012 — nowAn open-source mathematical platform for graph algorithms and visualizations. I am a developer, designer and maintainer, and I coordinate the international project.
-
Magenta
2019 — 2022Deutsche Telekom's voicification project, unifying voice control across Telekom products from smart home to TV and telephone. I designed and implemented methods for the German-language NLU model.
-
BIGGR
2017 — 2019A collaboration between KNIME and ScaDS Leipzig on a system for building graph analysis workflows graphically. I implemented GradoopVis and extended the KNIME Analytics Platform with new tools.
-
SIMG-VIZ
2017 — 2018A visualization system for entity resolution and clustering. Analyses precomputed similarity graphs and supports entity-resolution match tasks with FAMER, including parallel layout computation and sampling for large graphs.
-
PreCol
2013 — 2017Computes graph coloring and preconditioning using automatic differentiation, implemented in C++ for efficiency and parallelism, with graphical interfaces for Java and MATLAB.
-
ChemTea
2014 — nowTools for computing parameters in chemical graph theory using big data approaches. Originally a GraphTea extension, now a separate project with a C++ core and a Python interface.
-
MeProRisk II
2012 — 2016A multi-disciplinary effort to reduce risk in geothermal reservoir exploration. I integrated parallel computing into the SHEMAT-Suite simulation code.
-
EXPLAIN
2013 — 2016Interactive, browser-based learning modules for teaching scientific computing. Students write and test algorithms in the page and watch them run against real matrices and graphs.
-
Earlier work
2011 — 2012Redmine Client — mobile client for Redmine project management (Humance AG). Castle Crisis — Android location-based game (Fraunhofer Bonn summer school). AggGen — 3D model extraction of black carbon in MATLAB/C++ (RWTH Aachen). OpenFlipper — hexagonal mesh algorithm for a C++ 3D graphics library (RWTH Aachen).
Interactive demos
Small, self-contained things you can play with in the browser — no install, no sign-up.
-
Publication Knowledge Graph
My publications as a navigable graph of co-authors, venues and topics.
-
Graph Coloring Puzzle
Color every node so no two neighbours match — using as few colors as you can.
-
Parallel Algorithm Race
Sequential versus parallel execution, competing side by side in real time.
-
Steiner Tree Explorer
Build a graph, assign prizes and costs, then find the optimal subtree.
-
Polyglot Benchmark
One algorithm implemented across seven languages, compared on speed.
-
Graph Theory Lecture Tool
Teaching aid for stepping through classic graph algorithms in front of a class.
Publications
Peer-reviewed papers, most recent first.