Projeto E Desenvolvimento De Um Sistema De Software De Alto Desempenho Para Execução De Competições De Programação Com Números Massivos De Usuários

Total Page:16

File Type:pdf, Size:1020Kb

Projeto E Desenvolvimento De Um Sistema De Software De Alto Desempenho Para Execução De Competições De Programação Com Números Massivos De Usuários UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE AUTOMAÇÃO E SISTEMAS ENGENHARIA DE CONTROLE E AUTOMAÇÃO Vanderlei Munhoz Pereira Filho Projeto e desenvolvimento de um sistema de software de alto desempenho para execução de competições de programação com números massivos de usuários Florianópolis 2020 Vanderlei Munhoz Pereira Filho Projeto e desenvolvimento de um sistema de software de alto desempenho para execução de competições de programação com números massivos de usuários Esta monografia foi julgada no contexto da disciplina DAS5511: Projeto de Fim de Curso, e APROVADA na sua forma final pelo curso de Engenharia de Controle e Automação Florianópolis, 3 de março de 2020. Banca Examinadora: ________________________ Flávia Dias de Carvalho Orientadora na Empresa IBM ________________________ Prof. Márcio Bastos Castro, Dr. Orientador no Curso Departamento de Informática e Estatística ______________________ Prof. Felipe Gomes de Oliveira Cabral, Dr. Avaliador Departamento de Automação e Sistemas ________________________ Matheus Domingos da Silva e Silva Debatedor Departamento de Automação e Sistemas ________________________ Gabriel José Prá Gonçalves Debatedor Departamento de Automação e Sistemas Ficha de identificação da obra elaborada pelo autor, através do Programa de Geração Automática da Biblioteca Universitária da UFSC. Pereira Filho, Vanderlei Munhoz Projeto e desenvolvimento de um sistema de software de alto desempenho para execução de competições de programação com números massivos de usuários / Vanderlei Munhoz Pereira Filho ; orientador, Márcio Bastos Castro, 2020. 141 p. Trabalho de Conclusão de Curso (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Graduação em Engenharia de Controle e Automação, Florianópolis, 2020. Inclui referências. 1. Engenharia de Controle e Automação. 2. computação em nuvem. 3. sistemas distribuídos. 4. virtualização de hardware. I. Castro, Márcio Bastos. II. Universidade Federal de Santa Catarina. Graduação em Engenharia de Controle e Automação. III. Título. Vanderlei Munhoz Pereira Filho Projeto e desenvolvimento de um sstema de software de alto desempenho para execução de competições de programação com números massivos de usuários Esta monografia foi julgada no contexto da disciplina DAS5511: Projeto de Fim de Curso, e APROVADA na sua forma final pelo curso de Engenharia de Controle e Automação Florianópolis, 3 de março de 2020. Banca Examinadora: ________________________ Flávia Dias de Carvalho Orientadora na Empresa IBM ________________________ Prof. Márcio Bastos Castro, Dr. Orientador no Curso Departamento de Informática e Estatística ______________________ Prof. Felipe Gomes de Oliveira Cabral, Dr. Avaliador Departamento de Automação e Sistemas ________________________ Matheus Domingos da Silva e Silva Debatedor Departamento de Automação e Sistemas ________________________ Gabriel José Prá Gonçalves Debatedor Departamento de Automação e Sistemas “There are two ways of constructing a software design: one way is to make it so simple that there are obviously no deficiencies, and the other is to make it so complicated that there are no obvious deficiencies.” (C. A. R. Hoare, 1996) RESUMO Este documento detalha o projeto de fim de curso realizado pelo autor durante seu período de estágio na IBM, no contexto da disciplina obrigatória DAS5511 do curso de engenharia de controle e automação da UFSC. O projeto em questão envolve a concepção, desenvolvimento, teste e documentação de um sistema de software ro- busto, visando a substituição de um sistema protótipo já existente. O novo sistema, entregue ao fim deste trabalho, é capaz de solucionar o seguinte problema de negócio da empresa: realizar e supervisionar competições de programação com números mas- sivos de participantes, em escala multinacional. Algumas especificações desafiadoras desse sistema são: tolerância a falhas com zero-downtime deployment, mínima latên- cia possível para múltiplas requisições simultâneas, e controles rígidos de privacidade, em cumprimento com a GDPR Européia e LGPD Brasileira. Técnicas de computa- ção paralela e programação concorrente são aplicadas para executar as tarefas mais computacionalmente intensivas, visando alcançar os requisitos de desempenho. A im- plementação de proxies e algoritmos de criptografia são adotadas para alcançar os requisitos de segurança e privacidade. Diferentes arquiteturas de implantação são ana- lisadas desde a etapa de planejamento, até as etapas de implementação e teste, de forma a avaliar os custos e benefícios de cada uma. Ao final, testes comparativos, ou benchmarkings, são realizados no sistema desenvolvido, já em ambiente de produção, a fim de avaliar possíveis gargalos e o atendimento completo dos requisitos. Os resul- tados, em conjunto com uma análise crítica do trabalho desenvolvido como um todo, são apresentados nos últimos capítulos deste documento. Palavras-chave: Computação paralela. Programação concorrente. Sistemas distribuí- dos. Servidores Web. Tolerância à falhas. Arquitetura de software. Integração de siste- mas. ABSTRACT This document details the final project developed by the author during his internship at IBM, in the context of the required DAS5511 discipline of the UFSC automation and control engineering course. The project in question involves the development, testing and documentation of a robust software system, that will serve as a replacement for an existing prototype system. The new system, delivered by the time of publication of this document, is capable of solving the following business problem of the company: holding and overseeing programming competitions with massive numbers of partici- pants on a multinational scale. Some challenging specifications of this system are: fault tolerance with zero downtime deployment, minimum possible latency for concurrent requirements, and strict privacy controls in compliance with the European GDPR and the Brazilian LGPD. Parallel computing and concurrent programming techniques are applied to perform the most computationally intensive tasks, enabling the system to achieve performance requirements. The implementation of proxies and the adoption of encryption algorithms are made to meet security and privacy requirements. Different deployment architectures are analyzed since the planning steps, until the implemen- tation and testing of the system, studying the costs and benefits of each architecture. Lastly, comparative tests, or benchmarks, are performed in the complete system, al- ready in the production environment. Possible bottlenecks are evaluated, as well as if the system completely fulfills all requirements established at the planning phase. The results, together with a critical analysis of the work as a whole, are presented in the last chapters of this document. Keywords: Parallel computing. Concurrent programming. Distributed systems. Web servers. Fault tolerance. Software architecture. Systems integration. LISTA DE FIGURAS Figura 1 – Edifício da IBM em São Paulo, projetado pelo escritório de arquitetura Aflalo & Gasperini em 1977. 19 Figura 2 – Representação gráfica da Lei de Amdahl. 28 Figura 3 – Amostra de página Web criada com o sistema unificado de design da IBM. 34 Figura 4 – Arquiteturas de virtualização de hardware. 36 Figura 5 – Arquitetura de virtualização de sistemas operacionais via containers. 37 Figura 6 – Arquitetura da plataforma Docker. 38 Figura 7 – Estrutura exemplo de uma imagem Docker. 39 Figura 8 – Arquitetura de um cluster Kubernetes. 42 Figura 9 – Modelos de serviço comuns na computação em nuvem. 46 Figura 10 – Fotografia do interior de um dos centros de dados da IBM em Dallas. 47 Figura 11 – Localização geográfica dos centros de dados e pontos de presença de rede da IBM Cloud. 48 Figura 12 – IBM Watson contra Ken Jennings e Brad Rutter no programa Jeo- pardy! transmitido em 2011. 51 Figura 13 – Catálogo mostrando alguns serviços do Watson na página Web da IBM Cloud. 53 Figura 14 – Visão externa do cluster de servidores POWER750 onde era execu- tado o Watson em 2011. 55 Figura 15 – Interface gráfica do WKS e anotação de entidades textuais. 56 Figura 16 – Interface gráfica do WKS e anotação de relações textuais. 57 Figura 17 – Arquitetura do Apache Kafka. 59 Figura 18 – Arquitetura simplificada do sistema piloto. 66 Figura 19 – Diagrama de casos de uso do sistema. 70 Figura 20 – Arquitetura do sistema proposto. 73 Figura 21 – Arquitetura do sistema da perspectiva de infraestrutura. 89 Figura 22 – Provisionamento de servidores bare-metal na IBM Cloud. 90 Figura 23 – Provisionamento de máquinas virtuais na IBM Cloud. 91 Figura 24 – Estrutura de arquivos gerada pela ferramenta openshift-install. 94 Figura 25 – Verificação de status do cluster OpenShift via CLI. 95 Figura 26 – Console Web do Red Hat OpenShift. 96 Figura 27 – Camadas de hardware e software do cluster OpenShift. 96 Figura 28 – Diagrama de portas expostas para o banco de dados Scylla. 99 Figura 29 – Camadas de dados implantadas nos servidores bare-metal. 101 Figura 30 – Integrações entre a interface administrativa e o resto do sistema. 101 Figura 31 – Integrações relacionadas aos pontuadores automáticos. 104 Figura 32 – Fluxo de atividades do algoritmo de pontuação automática. 115 Figura 33 – Integrações do Web proxy para o cluster Apache Kafka. 119 Figura 34 – Integrações do Web proxy para o cluster Scylla. 120 Figura 35 – Interface gráfica: tela de teste de modelo. 122 Figura 36 – Interface gráfica: tela de resultados de modelo. 123 Figura 37 – Balanceamento de carga nas aplicações Python.
Recommended publications
  • IBM Cognos Analytics 11.2 Brings Enhanced Capabilities, Improved
    IBM Europe Software Announcement ZP21-0053, dated April 6, 2021 IBM Cognos Analytics 11.2 brings enhanced capabilities, improved efficiency, and unified, consistent user experience; IBM Planning Analytics offers more flexible IBM TM1 database tier options Table of contents 1 Overview 3 Technical information 2 Key requirements 4 Ordering information 2 Planned availability date 5 Terms and conditions 3 Product positioning 8 Prices 3 Program number 9 Announcement countries 3 Publications 9 Corrections At a glance IBM(R) Cognos(R) Analytics 11.2 offers the following benefits: • Ease of use through a unified interface that displays functionality in-context, as needed • Improved efficiency with a robust enterprise platform to satisfy all business intelligence needs, including scalability, governance, security, and performance • Unified and consistent user experience across the web and mobile IBM Planning Analytics brings: • More flexibility in deploying the TM1(R) database tier with new memory (RAM) options to support usage, the number of users, and the scale of the solution • Capability for organizations to choose to upgrade their standard configuration of 64 GB memory for the TM1 database tier to 128 GB memory without investing in a Premium Instance • Option for organizations that require greater capacity and scale to take advantage of 1 TB and 2 TB memory upgrades to Premium Instances Overview Cognos Analytics is a business intelligence solution that empowers users with AI- infused self-service capabilities that accelerate data preparation, analysis, and report creation. Cognos makes it easier to visualize data and share actionable insights across your organization to foster more data-driven decisions. Its capabilities enable users to reduce or eliminate IT intervention for many previous tasks, providing more self-service options, advancing the analytic expertise of the enterprise, and enabling organizations to capture insights more efficiently.
    [Show full text]
  • Lotus Notes Traveler
    Lotus ® Notes Version 8.5.2 Lotus Notes Traveler Lotus ® Notes Version 8.5.2 Lotus Notes Traveler Note Before using this information and the product it supports, read the information in the Notices section. Second Edition (September, 2010) This edition applies to the version 8.5.2 release and to all subsequent releases and modifications until otherwise indicated in new editions. © Copyright IBM Corporation 2005, 2009. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Overview ..............1 Planning for installation and configuration ............45 Planning for installation and Choosing a deployment configuration .....45 configuration ............3 Planning your network topology ......45 Choosing a deployment configuration ......3 Using a virtual private network .....46 Planning your network topology ......3 Using a reverse proxy .........47 Using a virtual private network ......4 Direct connection ..........48 Using a reverse proxy .........5 Remote and local mail file considerations . 48 Direct connection ...........6 Supporting multiple Lotus Domino domains . 49 Remote and local mail file considerations ....6 Server capacity planning .........50 Supporting multiple Lotus Domino domains . 7 Clustering and failover ..........50 Server capacity planning .........8 Downlevel Domino directory servers ......51 Clustering and failover ...........8 Setting auto sync options ..........51 Downlevel Domino directory servers ......9 Configuring scheduled sync ........51 Setting auto sync options ..........9 Using SMS mode for auto sync .......52 Configuring scheduled sync ........9 Setting the heartbeat algorithm maximum Using SMS mode for auto sync .......10 interval ...............53 Setting the heartbeat algorithm maximum Language support ............53 interval ...............11 Lotus mobile installer ...........54 Language support ............11 Planning for security ...........55 Lotus mobile installer ...........12 Moving Lotus Notes Traveler to a new server .
    [Show full text]
  • Session 6018 Hands on Lab for Db2 Data Management Console
    Lab Center – Hands-On Lab Session 6018 Hands on lab for Db2 Data Management Console Jason Sizto [email protected] Think 2020 DISCLAIMER IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results like those stated here. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. This document is distributed “as is” without any warranty, either express or implied. In no event, shall IBM be liable for any damage arising from the use of this information, including but not limited to, loss of data, business interruption, loss of profit or loss of opportunity. IBM products and services are warranted per the terms and conditions of the agreements under which they are provided.
    [Show full text]
  • Bigfix Inventory Open Source Licenses and Notices
    ---------------------------------- BigFix Inventory 10.0 July 2021 ---------------------------------- ------------------------------------------------------------------------- ------------------------------------------------------------------------- The HCL license agreement and any applicable information on the web download page for HCL products refers Licensee to this file for details concerning notices applicable to code included in the products listed above ("the Program"). Notwithstanding the terms and conditions of any other agreement Licensee may have with HCL or any of its related or affiliated entities (collectively "HCL"), the third party code identified below is subject to the terms and conditions of the HCL license agreement for the Program and not the license terms that may be contained in the notices below. The notices are provided for informational purposes. Please note: This Notices file may identify information that is not used by, or that was not shipped with, the Program as Licensee installed it. IMPORTANT: HCL does not represent or warrant that the information in this NOTICES file is accurate. Third party websites are independent of HCL and HCL does not represent or warrant that the information on any third party website referenced in this NOTICES file is accurate. HCL disclaims any and all liability for errors and omissions or for any damages accruing from the use of this NOTICES file or its contents, including without limitation URLs or references to any third party websites. -------------------------------------------------------------------------
    [Show full text]
  • A New Way Forward > > > > > > > > > > 44
    A New Envisioning a Way Transportation System Forward without Carbon Pollution Written by Tony Dutzik and Alana Miller, Frontier Group May 2016 © 2016, Frontier Group. Some rights reserved. This work is licensed under a Creative Commons Attribution Non-Commercial 4.0 International License. To view the terms of this license, visit www.creativecommons.org/licenses/by-nc/4.0/. Frontier Group provides information and ideas to help citizens build a cleaner, healthier, fairer and more democratic America. We address issues that will define our nation’s course in the 21st century – from fracking to solar energy, global warming to transportation, clean water to clean elections. Our experts and writers deliver timely research and analysis that is accessible to the public, applying insights gleaned from a variety of disciplines to arrive at new ideas for solving pressing problems. For more information about Frontier Group, please visit www.frontiergroup.org. Acknowledgments Frontier Group thanks the many people who contributed time, effort and expertise toward making this report a reality. We thank our partners at Environment America Research and Policy Center and the U.S. Public Interest Research Group (PIRG) for their support, as well as Frontier Group interns Dana Bradley, Vincent Armentano and Peter Keenan, whose research made an important contribution to the final product. Thanks to Susan Rakov, Elizabeth Ridlington, Gideon Weissman and Kim Norman of Frontier Group for their editorial and moral support. Thanks to all those who took time to provide
    [Show full text]
  • Vizuální Styl Společnosti Puzzle
    Vizuální styl společnosti Puzzle Petr Motl Bakalářská práce 2019 Univerzita Tomáše Bati ve Zlíně Cílem mé bakalářské práce je navrhnout vizuální jazyk společnosti Puzzle, která se zaměřuje na produkci digitálních služeb, jako tvorba Abstrakt webových stránek, online aplikací a hostingu. Teoretická část se zabývá průzkumem vizuální komunikace techno- logických společností, které seprimárně prezentují prostřednictvím svých digitálních produktů. Velkou část průzkumu věnuji kompara- tivní analýze design systémů, jazyků a stylů vybraných technologic- kých společností. Praktická část je zaměřena na tvorbu vizuálního stylu společnosti Puzzle po vzoru společností z mého průzkumu a tvorbě vizuálního jazyka uživatelských rozhraní digitálních produktů společnosti. The aim of my bachelor thesis is to design the visual language of Puzzle which focuses on the production of digital services such Abstract as website creation, online applications and hosting. The theoretical part deals with the research of visual communication of technological companies, which are primarily presented through their digital products. Much of the research is devoted to compara- tive analysis of the design of systems, languages and styles of selec- ted technology companies. The practical part is focused on creating the visual style of the com- pany Puzzle following the example of my research and creating the visual language of the user interface of digital products of the company. #design systém #vizuální jazyk #vizuální styl #Google #Microsoft #IBM #AirBnB #Uber #Dropbox #uživatelská rozhraní #knihovna komponent Poděkování Na tomto místě bych rád poděkoval všem, kteří mě doprovázeli během tvorby mé bakalářské práce a sdíleli se mnou čas, názory, důvěru i nadšení, a to především vedoucímu mé bakalářské práce MgA. Václavu Skácelovi, který mě svými nápady posunul k novým myšlenkám a možnostem uvažování.
    [Show full text]
  • Design Systems
    Design Systems The Internet has grown from being the strangely, ugly little duckling to a young, slightly matured, handsome beast. Gone are the years when we had no typography, video, or even entertaining animations to be gentle on our eyes. Nowadays, most organizations have their public website, but also a portal, and their custom web applications. “Don’t forget our app!” ah, yes. And an app. But how do you make sure that all these applications remain consistent in style and experience? Enter scene: Design Systems! What you should know about Design Systems A Design System is more than a few colors and fonts. It is a comprehensive ruleset that allows your organisation to create consistent digital experiences over multiple devies and applications. This results in a more consistent brand experience and a positive user experience. Why you should care about Design Systems Concistency Conversion Working with multiple applications on When a conversion page has a different multiple devices, you want to create a look and feel, it's an immediate trust issue! consistent experience Save time By creating re-usable components, you don't have to reinvent the wheel everytime. How did we even get there? We all have that one older brother that, for some reason, has seen it all. He’s gone through everything we are currently struggling with. And for us digital natives, our older brother is print. And print has documented corporate identities for decennia. One of the most famous examples is the analog design system of NASA for print design. NASA’s documentation of its identity solved a lot of issues.
    [Show full text]
  • Traveler Response to Transportation System Changes Interim Handbook
    TCRP Web Document 12 (Project B-12): Contractor’s Interim Handbook Traveler Response to Transportation System Changes Interim Handbook Prepared for: Transit Cooperative Research Program Transportation Research Board National Research Council TCRP Project B-12 Submitted by: Richard H. Pratt, Consultant, Inc. Garrett Park, Maryland and Texas Transportation Institute Cambridge Systematics, Inc. Parsons Brinckerhoff Quade & Douglas, Inc. SG Associates, Inc. McCollom Management Consulting, Inc. March 2000 ACKNOWLEDGMENT This work was sponsored by the Federal Transit Administration (FTA) and was conducted through the Transit Cooperative Research Program (TCRP), which is administered by the Transportation Research Board (TRB) of the National Research Council. DISCLAIMER The opinions and conclusions expressed or implied in the report are those of the research agency. They are not necessarily those of the TRB, the National Research Council, the FTA, the Transit Development Corporation, or the U.S. Government. This report has not been edited by TRB. ii Table of Contents Page Foreword by TRB Staff viii Report Organization ix Author and Contributor Acknowledgments ix TCRP Project B-12 Panel xi 1 — INTRODUCTION 1-1 Genesis and Status of the Handbook 1-1 Scope and Development of the Handbook 1-4 Use of the Handbook 1-7 References 1-17 MULTIMODAL/INTERMODAL FACILITIES 2 — HOV Facilities 2-1 Objectives of HOV Facilities 2-2 Types of HOV Facilities and Treatments 2-2 Analytical Considerations 2-4 Traveler Response Summary 2-5 Traveler Response to Type
    [Show full text]
  • IBM Cognos Analytics Version 11.1: New Features Guide
    IBM Cognos Analytics Version 11.1 New Features Guide IBM © Product Information This document applies to IBM Cognos Analytics version 11.1.0 and may also apply to subsequent releases. Copyright Licensed Materials - Property of IBM © Copyright IBM Corp. 2015, 2021. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. IBM, the IBM logo and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at " Copyright and trademark information " at www.ibm.com/legal/copytrade.shtml. The following terms are trademarks or registered trademarks of other companies: • Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. • Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. • Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. • Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. • UNIX is a registered trademark of The Open Group in the United States and other countries. • Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates.
    [Show full text]
  • Animation-In-Design-Systems.Pdf
    Animation in Design Systems 1: The Case for Covering Animation 3 2: Defining What Your Animation Guidelines Should Cover 5 3: Defining Your Motion Principles 11 4: Defining Your Animation Building Blocks 17 5: Taking It Further 30 Copyright © 2019 Adobe Inc. All rights reserved Cover design: Ainsley Wagoner Content and layout: Val Head Editor: Patrick Faller Animation in Design Systems 2 Animation in Design Systems: Chapter 1 The Case for Covering 1 Animation Design systems come in all shapes and sizes, but not all of them include guidelines for animation. Sure, some teams may have decided that motion wasn’t something their product needed guidance on, but I suspect that in many cases motion was left out because they weren’t sure what to include. In the past few years, I’ve talked with many teams and designers who tell me motion is something they want to address, but they just aren’t sure how to do it. If you’re in that boat, you’re in luck. This eBook breaks down everything to include when integrating animation into your design system, and how to successfully pull it off. Animation in Design Systems 3 So, why animation? Animation is an important design tool for brand messaging. Just like typogra- phy and color, the animation you use says something about your product and its personality. So, when it’s not addressed in a design system, that area of UI design tooling is left unaccounted for. When that happens, people following the design system either do whatever they want with animation—which can lead to a strange mish-mash of animation execution across the experience—or, they just don’t use animation at all because they don’t have time to figure out all the details themselves.
    [Show full text]
  • Front-End Developer
    Rian Tavares Front-End Developer Rio de Janeiro, Brazil 24.01.1994 [email protected] Brazilian +55 21 964675251 /in/riantavares EDUCATION PROFESSIONAL SKILLS 02/2019 - 12/2020 Universidade Estácio de Sá, Rio de Janeiro, Brazil HTML/CSS/SASS Bachelor of Information System. Advanced Undergraduate thesis (Grade: 10): Through a management application and a mobile Javascript application, built to avoid queues, making it possible to predict the amount of food to be Advanced prepared and also associate the food with a customer who must withdraw the order, I React Js presented an approach to order management in food establishments that serves on Advanced demand. Node Js 09/2015 - 03/2016 Intermediate Universität Ulm, Ulm, Germany React Native Computer Science (Exchange Semester) Intermediate As an exchange student, I had the opportunity to study for a semester at the University of Ulm. There I was able to discover and learn some different subjects from the traditio- ADDITIONAL SKILLS nal grid of the computer science course in Brazil like Bioinformatics for example. I engaged myself in german conversation classes, sports activities, and made friends of Vanilla JS • Vue • Apollo • different nationalities. Expo • MySQL • GraphQL • MongoDB • PostgreSQL 02/2013 - 11/2018 • Sequelize • Redux • CEFET, Rio de Janeiro, Brazil Styled Components • Adobe Bachelor of Computer Science XD • UI • Teamwork • At CEFET/RJ I had the opportunity to engage myself with research projects on graph Collaboration • Communi- problems and Movie rating using text of subtitles analysis which enabled me, into a cation • Adaptability • laboratory, to study and solve operational questions. It also gave me the opportunity to Creativity • Critical thinking work with a published professor as my supervisor.
    [Show full text]
  • Futureproof Design Systems with Web Components
    Futureproof Design Systems with Web Components Horacio Gonzalez 2020-06-22 Who are we? Introducing myself and introducing OVH OVHcloud Horacio Gonzalez @LostInBrittany Spaniard lost in Brittany, developer, dreamer and all-around geek Flutter OVHcloud: A Global Leader 200k Private cloud VMs running Dedicated IaaS 1 Europe 30 Datacenters Own 20Tbps Netwok with Hosting capacity : 35 PoPs 1.3M Physical Servers 360k Servers already > 1.3M Customers in 138 Countries deployed OVHcloud: 4 Universes of Products WebCloud Baremetal Cloud Public Cloud Hosted Private Cloud Domain / Email Standalone, Cluster Compute Hosted Private Cloud VM K8S, IA IaaS Domain names, DNS, SSL, Redirect General Purpose VMware PaaS for SDDC, vSAN 1AZ / 2AZ SuperPlan Baremetal Email, Open-Xchange, Exchange DevOps vCD, Tanzu, Horizon, DBaaS, Game T2 >20e DRaaS Collaborative Tools, NextCloud Virtualization Storage T3 >80e Nutanix Storage File, Block, Object, Archive HCI 1AZ / 2AZ, Databases, PaaS for Web Database T4 >300e DRaaS, VDI Bigdata T5 >600e Mutu, CloudWeb OpenStack HCI Databases 12KVA /32KVA IAM, Compute (VM, K8S) Plesk, CPanel AI SQL, noSQL, Messaging, Stortage, Network, Databases VDI Cloud Game PaaS with Platform.sh Dashboard Storage Network Ontap Select, Nutanix File Virtual servers Network OpenIO, MinIO, CEPH VPS aaS Zerto, Veeam, Atempo VPS, Dedicated Server IP FO, NAT, LB, VPN, Router, AI pCC DC DNS, DHCP, TCP/SSL Offload ElementAI, HuggingFace, SaaS Virtuozzo Cloud Deepopmatic, Systran, EarthCube Wordpress, Magento, Prestashop Security Bigdata / Analitics /
    [Show full text]