Rui Carlos A. Gonçalves Curriculum Vitae Dados Pessoais Nome Telefone E-Mail Pessoal E-Mail Profissional Página Web Nacionalidade Data de Nascimento Rui Carlos Araújo Gonçalves 969540030 [email protected] [email protected] http://rcgoncalves.pt Portuguesa 25-12-1985 Formação Académica 09/2009 – 04/2015 Doutoramento em Informática, Universidades do Minho, Aveiro, e Porto, Portugal. 09/2003 – 12/2008 Licenciatura em Matemática e Ciências de Computação, Universidade do Minho, Portugal. Experiência Profissional 02/2017 – present Director Técnico de Motor OLAP, LeanXcale, Portugal. Desenho e implementação de sistema de processamento analítico paralelo. Tecnologias usadas: Java, Apache HBase, Apache Zookeeper, Apache Derby. 08/2016 – 01/2017 Programador, LeanXcale, Portugal. Optimização de sistema de processamento distribuído de queries analíticas. Tecnologias usadas: Java, Apache HBase, Apache Zookeeper, Apache Derby. 05/2015 – 07/2016 Investigador Sénior, Grupo de Sistemas Distribuídos, HASLab / INESC TEC, Portugal. Optimização de middleware de comunicação para processamento distribuído de queries analíticas. Tecnologias usadas: Java, Apache HBase, Apache Zookeeper, Apache Derby, Java Sockets, RDMA Verbs/jVerbs. 06/2010 – 12/2013 Investigador, Projecto GAsPar , Universidade do Minho, Portugal. Melhoramento de uma metodologia e ferramentas para suportar a derivação de implementações paralelas de programas, adicionando suporte para Linhas de Produtos de Software. Tecnologias usadas: Java, Eclipse, Epsilon Languages, Eclipse Modeling Framework, Eclipse Graphical Editing Framework, ANTLR, SAT4J, AHEAD Tool Suite, C++, OpenMP, MPI, Java Concurrency API. 03/2012 – 09/2012 Investigador Visitante, Universidade do Texas em Austin, EUA. Estudo de estratégias de paralelização e optimização para algoritmos de Álgebra Linear Densa, operações de Bases de Dados as suas optimizações, e um sistema distribuído para tolerância a faltas. Tecnologias usadas: libFLAME/Elemental, C++, UpRight, AHEAD Tool Suite, Java. 1/3 03/2011 – 08/2011 Investigador Visitante, Universidade do Texas em Austin, EUA. Estudo de estratégias de paralelização e optimização para algoritmos de Álgebra Linear Densa, e operações de Bases de Dados as suas optimizações. Tecnologias usadas: libFLAME/Elemental, C++, Java. 06/2009 – 05/2011 Investigador, Projecto PRIA, Universidade do Minho, Portugal. Desenvolvimento de uma metodologia e ferramentas para suportar a derivação de implementações paralelas optimizadas de programas, usando uma abordagem MDE. Tecnologias usadas: Java, Eclipse, Epsilon Languages, Eclipse Modeling Framework, Eclipse Graphical Editing Framework. 12/2007 – 12/2009 Investigador (bolseiro), Projecto AspectGrid, Universidade do Minho, Portugal. Desenvolvimento de ferramentas para adaptação de aplicações para ambientes distribuídos e grids. Tecnologias usadas: Java, AspectJ/AOP, Java Concurrency API, MPIJava. 03/2007 – 11/2007 Investigador (bolseiro), Projecto Portable Parallel Computing based on Virtual Machines, Universidade do Minho, Portugal. Adaptação de aplicações para arquitecturas paralelas, usando técnicas Orientadas ao Aspecto. Tecnologias usadas: Java, AspectJ/AOP, Java Concurrency API. Publicações R. C. Gonçalves, J. Pereira, and R. Jiménez-Peris, “An RDMA middleware for asynchronous multi-stage shuffling in analytical processing,” in DAIS ’16: Proceedings of the 16th IFIP International Conference on Distributed Applications and Interoperable Systems, pp. 61–74, 2016. R. C. Gonçalves, D. Batory, J. L. Sobral, and T. L. Riché, “From software extensions to product lines of dataflow programs,” Software and Systems Modeling, 2015. R. C. Gonçalves, Parallel Programming by Transformation. Minho, Aveiro, e Porto, 2015. PhD thesis, Universidades do R. C. Gonçalves, D. Batory, and J. L. Sobral, “ReFlO: an interactive tool for pipe-and-filter domain specification and program generation,” Software and Systems Modeling, vol. 15, no. 2, pp. 377–395, 2016. D. Batory, R. Gonçalves, B. Marker, and J. Siegmund, “Dark knowledge and graph grammars in automated software design,” in SLE ’13: Proceeding of the 6th International Conference on Software Language Engineering, pp. 1–18, 2013. T. L. Riché, R. C. Gonçalves, B. Marker, and D. Batory, “Pushouts in software architecture design,” in GPCE ’12: Proceedings of the 11th International Conference on Generative Programming and Component Engineering, pp. 84–92, 2012. T. L. Riché, D. Batory, R. C. Gonçalves, and B. Marker, “Architecture design by transformation,” Tech. Rep. TR-10-39, The University of Texas at Austin, Department of Computer Science, 2010. R. C. Gonçalves and J. L. Sobral, “Pluggable parallelization,” in HPDC ’09: Proceedings of the 18th ACM international symposium on High Performance Distributed Computing, pp. 11–20, 2009. E. Sousa, R. C. Gonçalves, D. T. Neves, and J. L. Sobral, “Non-invasive gridification through an aspect-oriented approach,” in Ibergrid ’08: Proceeding of the 2nd Iberian Grid Infrastructure Conference, pp. 323–334, 2008. Formação Extra-Curricular 06/2016 International Conference on Distributed Applications and Interoperable Systems, Greece, Grécia. 2/3 06/2014 International Summer School on Parallel High Performance Computing using Accelerators, Universidade do Minho / Portugal. 10/2012 International Conference on Model Driven Engineering Languages & Systems 2012, Áustria. 05/2011 06/2010 – 07/2010 WOLFHPC 2011, EUA. Winter Advanced Computing Seminars, Universidade do Minho / Portugal. SciPy 2010, EUA. 02/2010 – 05/2010 Software Design, The University of Texas at Austin / EUA. 01/2011 Classificação Final: A. 02/2010 – 05/2010 Parallel Systems, The University of Texas at Austin / EUA. Classificação Final: A-. 02/2010 – 05/2010 Introduction to Mathematical Logic, The University of Texas at Austin / EUA. Classificação Final: A. 07/2009 06/2009 05/2009 GTTSE 2009, Portugal. Advanced Seminar on Multicore Platforms, Universidade do Minho / Portugal. Spring School in Advanced Computing TACC @ UP, Faculdade de Ciências da Universidade do Porto / Portugal. Línguas Portugal Inglês Espanhol Francês Língua Nativa Bom Elementar Elementar TOEFL iBT: 94/120 Aptidões e Competências de Organização • Delegado do curso de Matemática e Ciências de Computação, no ano lectivo 2007/2008, na Universidade do Minho. • Membro do Conselho de Cursos de Ciências, no ano lectivo 2007/2008, na Universidade do Minho. • Sub-delegado do curso de Matemática e Ciências de Computação, no ano lectivo 2006/2007, na Universidade do Minho. • Colaboração na organização de eventos (JOIN 2007, ETAPS 2007, Programar 2013 @ Lisboa). Prémios e Distinções 2009 2008 2008 2007 2006 2005 Prémio Universidade do Minho, Universidade do Minho. Best Student Paper Award, IBERGRID 2008. Prémio de Mérito Escolar, Universidade do Minho. Prémio de Mérito Escolar, Universidade do Minho. Prémio de Mérito Escolar, Universidade do Minho. Prémio de Mérito Escolar, Universidade do Minho. 3/3