I'm currently a Distinguished Engineer at Microsoft, where I work as the chief architect for Azure compute and I lead the Azure efficiency team.
I work on several projects including container allocator, power management, and
Resource Central, a machine learning infrastructure for resource management.
In my previous roles at Microsoft, I worked on the production infrastructure for Bing and in several Bing Ads projects, including both ads infrastructure and relevance.
My work on harvesting compute and storage for Bing has been described in this OSDI 2016 paper.
Prior to Microsoft, I was a Staff Research Scientist at Google (2011-2013) where I worked in the Search Infrastructure team. My focus was on the serving systems powering Google.com search. I've worked in many projects including performance and scalability of retrieval engines, novel compression schemes, indexing systems, and networking. I've also worked in retrieval techniques for large-scale machine learning systems.
Before joining Google, I was a Principal Research Scientist at Yahoo! Research (2005-2010) working on several projects in the area of computational advertising. I've also worked as the architect for a large-scale software platform for indexing and content serving, which is used in several of Yahoo!'s display and textual adverting systems. This platform implements state-of-the-art query evaluation algorithms and provides a generic framework in which retrieval systems can be highly customized for efficiency and performance. For this work, and for my contributions to display advertising infrastructure, in 2010 I've been elected Yahoo! Superstar and I've been awarded with two Yahoo! You Rock awards.
Prior to Yahoo!, I worked as a Research Staff Member at the IBM Almaden Research Center (2000-2005), where I co-developed a query processor for XPath queries over XML streams. This was one of key components of the implementation of the XML data type in the IBM DB2 Relational Database System. In another project at IBM, I was one of the key researchers developing an Enterprise Search Engine. This project resulted in a new software product for IBM - the IBM OmniFind Enterprise Search. My work on indexing was one of the key components of OmniFind. For this work I was awarded with an IBM Outstanding Technical Achievement Award, with the notation for development of a new generation of IBM search technology and its deployment on w3.ibm.com.
I've finished my Ph.D. studies in 1999, at the Pontifical Catholic University of Rio de Janeiro, Brazil (PUC-Rio), in a joint program with the Computer Systems Group, University of Waterloo, Canada. My Ph.D. work was in the area of object-oriented design and software architecture. The main contributions from my Ph.D. thesis have been condensed in the book The UML Profile for Framework Architectures, published by Addison-Wesley in 2001. After finishing my Ph.D. I was a post-doctoral researcher in the Computer Science Department at Princeton University for one year (1999-2000).
I'm an ACM Distinguished Member and an IEEE Senior Member. I've more than 25 issued patents (and many others filed) and more than 50 published papers. I've been in several program committees over the years, including SIGIR, WWW, WSDM, KDD, and CIKM. Recently I was a co-chair of the WWW 2013 developers track. See my full resume for a complete list of publications. You can find more about me at:
Resource Central: Understanding and Predicting Workloads for Improved Resource Management in Large Cloud Platforms, Eli Cortez, Anand Bonde, Alexandre Muzio, Mark Russinovich, Marcus Fontoura, Ricardo Bianchini, The 26th ACM Symposium on Operating Systems Principles (SOSP 2017), Shanghai, China, 2017 (pdf).
History-Based Harvesting of Spare Cycles and Storage in Large-Scale Datacenters, Yunqi Zhang, George Prekas, Giovanni M. Fumarola, Marcus Fontoura, Inigo Goiri, Ricardo Bianchini, The 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2016), Savannah, USA, 2016 (pdf).
Evaluation Strategies for Top-k Queries over Memory-Resident Inverted Indexes, M. Fontoura, V. Josifovski, J. Liu, S. Venkatesan, X. Zhu, J. Zien, The 37th International Conference on Very Large Databases (VLDB 2011), Seattle, USA, 2011 (pdf).
Efficiently Evaluating Graph Constraints in Content-Based Publish/Subscribe, A. Broder, S. Das, M. Fontoura, B. Gosh, V. Josifovski, J. Shanmugasundaram, S. Vassilvitski, The 20th International World Wide Web Conference (WWW 2011), Hyderabad, India, 2011 (pdf).
Estimating Advertisability of Tail Queries for Sponsored Search, S. Pandey, K. Punera, M. Fontoura, V. Josifovski, The 33rd Annual International ACM SIGIR Conference (SIGIR 2010), Geneva, Switzerland, 2010 (pdf).
Using Landing Pages for Sponsored Search Ad Selection, Y. Choi, M. Fontoura, E. Gabrilovich, V. Josifovski, M. Mediano, B. Pang, The 19th International World Wide Web Conference (WWW 2010), Raleigh, USA, 2010 (pdf).
Efficiently Evaluating Complex Boolean Expressions, M. Fontoura, S. Sadanan, J. Shanmugasundaram, S. Vassilvitski, E. Vee, S. Venkatesan, J. Zien, Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD 2010), ACM Press, Indianapolis, USA, 2010 (pdf)(slides).
A search-based method for forecasting ad impression in contextual advertising, X. Wang, A. Broder, M. Fontoura, V. Josifovski, The 18th International World Wide Web Conference (WWW 2009), 491-500, ACM Press, Madrid, Spain, 2009 (pdf).
Classifying search queries using the Web as a source of knowledge, E. Gabrilovich, A. Broder, M. Fontoura, A. Joshi, V. Josifovski, T. Zhang, ACM Transactions on the Web (TWEB), 3(2), 5:1-5:27, 2009 (Invited as one of the best papers from SIGIR 2007).
To swing or not to swing: learning when (not) to advertise, A. Broder, M. Ciaramita, M. Fontoura, E. Gabrilovich, V. Josifovski, D. Metzler, V. Murdock, V. Plachouras, Seventeenth Conference on Information Knowledge Management (CIKM 2008), 1003-1012, Napa Valley, USA, 2008 (pdf).
Search advertising using web relevance feedback, A. Broder, P. Ciccolo, M. Fontoura, E. Gabrilovich, V. Josifovski, L. Riedel, Seventeenth Conference on Information Knowledge Management (CIKM 2008), 1013-1022, Napa Valley, USA, 2008 (pdf).
Robust classification of rare queries using web knowledge, A. Broder, M. Fontoura, E. Gabrilovich, A. Joshi, V. Josifovski, T. Zhang, The 30th Annual International ACM SIGIR Conference (SIGIR 2007), 231-238, Amsterdam, The Netherlands, 2007 (pdf).
A semantic approach to contextual advertising, A. Broder, M. Fontoura, V. Josifovski, L. Riedel, The 30th Annual International ACM SIGIR Conference (SIGIR 2007), 559-566, Amsterdam, The Netherls, 2007 (pdf).
Top-k Publish-Subscribe for Social Annotation of News, A. Shraer, M. Gurevich, M. Fontoura, V. Josifovski, The 39th International Conference on Very Large Databases (VLDB 2013), Trento, Italy, 2013 (pdf).
Efficiently Encoding Term Co-occurrences in Inverted Indexes, M. Fontoura, M. Gurevich, V. Josifovski, S. Vassilvitskii, 20thACM Conference on Information and Knowledge Management (CIKM 2011), Glasgow, UK, 2011 (pdf).
Relaxation in text search using taxonomies, M. Fontoura, V. Josifovski, R. Kumar, C. Olston, A. Tomkins, S. Vassilvitskii, 34th International Conference on Very Large Data Bases (VLDB 2008), 672-683, Auckland, New Zealand, 2008 (pdf).
Estimating corpus size via queries, A. Broder, M. Fontoura, V. Josifovski, R. Kumar, R. Motwani, S. Nabar, R. Panigrahy, A. Tomkins, Y. Xu, Fifteenth Conference on Information Knowledge Management (CIKM 2006), 594-603, Arlington, USA, 2006 (pdf).
Indexing Shared Content in Information Retrieval Systems, A. Broder, N. Eiron, M. Fontoura, M. Herscovici, R. Lempel, J. McPherson, R. Qi, E. Shekita, 10th International Conference on Extending Database Technology (EDBT 2006), Munich, Germany, 2006 (pdf)(slides).
Using Annotations in Enterprise Search, P. Dmitriev, N. Eiron, M. Fontoura, E. Shekita, The 15th International World Wide Web Conference (WWW 2006), ACM Press, Edinburgh, Scotland, 2006 (pdf).
Inverted Index Support for Numeric Search, M. Fontoura, R. Lempel, R. Qi, J. Zien, Internet Mathematics, 3(2), 153-185, 2006.
High Performance Index Build Algorithms for Intranet Search Engines, M. Fontoura, E. Shekita, J. Zien, S. Rajagopalan, A. Neumann, 30th International Conference on Very Large Data Bases (VLDB 2004), 1158-1169, Toronto, Canada, 2004 (pdf)(slides).
On the memory requirements of XPath evaluation over XML streams, Z. Bar-Yossef, M. Fontoura, V. Josifovski, Journal of Computer System Sciences (JCSS), 73(3), 391-441, 2007 (Invited as one of the best papers from PODS 2004).
Querying XML Steams, V. Josifovski, M. Fontoura, A. Barta, The VLDB Journal (VLDBJ), 14(2), 197-210, 2005.
Buffering in Query Evaluation over XML Streams, Z. Bar-Yossef, M. Fontoura, V. Josifovski, Symposium on Principles of Database Systems (PODS 2005), Baltimore, USA, 2005 (pdf)(slides).
Optimizing Cursor Movement in Holistic Twig Joins, M. Fontoura, V. Josifovski, E. Shekita, B. Yang, Fourteenth Conference on Information Knowledge Management (CIKM 2005), Bremen, Germany, 2005 (pdf).
Virtual Cursors for XML Joins, B. Yang, M. Fontoura, E. Shekita, S. Rajagopalan, K. Beyer, Thirteenth Conference on Information Knowledge Management (CIKM 2004), 523-532, Washington D.C., USA, 2004 (pdf)(slides).
On the Memory Requirements of XPath Evaluation over XML Streams, Z. Bar-Yossef, M. Fontoura, V. Josifovski, Symposium on Principles of Database Systems (PODS 2004), 177-188, Paris, France, 2004 (pdf)(slides).
Streaming XPath Processing with Forward Backward Axes, C. Barton, P. Charles, M. Fontoura, D. Goyal, V. Josifovski, M. Raghavachari, 19th International Conference on Data Engineering (ICDE 2003), IEEE Press, 455-466, Bangalore, India, 2003 (pdf).
The UML Profile for Framework Architectures, M. Fontoura, W. Pree, B. Rumpe, Addison-Wesley, 2001.
Extending UML to Improve the Representation of Design Patterns, M. Fontoura, C. Lucena, Journal of Object-Oriented Programming (JOOP), 13(11), 12-19, March 2001.
UML-F: A Modeling Language for Object-Oriented Frameworks, M. Fontoura, W. Pree, B. Rumpe, 14th European Conference on Object Oriented Programming (ECOOP 2000), Lecture Notes in Computer Science 1850, Springer, 63-82, Cannes, France, 2000 (slides).