Vinicius de Carvalho

Software Engineering | Cloud Computing | Artificial Intelligence

About

profile

A doctor in Computer engineering who really enjoys machine learning stuff and everything related to cloud computing. Ten years ago, my career started as a Web Developer, where I had some experience with web services and systems designed using PHP and Java. After working for almost three years in the industry, I became very interested in the field of Artificial Intelligence and its applications, so I decided to take up full-time studies as a graduate student in the areas of Evolutionary Computing for multi-objective optimization and auto-selection for Machine Learning algorithms. In my research, I dealt with problems from Software engineering, Logistics, Engineering, and mathematical optimization by always applying state-of-art AI algorithms. In terms of programming languages, in my career at the university, I used Java and Python (this last one is especially for data analysis). Three years ago I came back to the industry as a machine learning engineer, where I designed a recommendation system (coded in PHP and Python) and also helped in AWS Cloud improvements (Docker, EC2 autoscaling, and VPC) for an e-commerce website. Finally, I started to work as a back-end engineer/DevOps, where I was able to improve CI/CD, by improving Jenkinsfile and Dockerfiles, and by improving code performance and code test coverage for Python and Java. Apart from that, I keep studying ML and Cloud (especially AWS) as shown by my recent AWS certifications.

education

Phd Computer Engineering, Artificial intelligence @ University of Sao Paulo (USP), 2016-2022

In my Ph.D. thesis, I proposed something similar to a complex ensembling method, which was focused on the automatic selection of evolutionary algorithms, at execution time. This approach aimed to find solutions for different multi-objective optimization problems (which are harder to deal with), such as multi-objective linear regression, vehicle routing problems, and other mathematical optimization;. For more details, please take a look at my Ph.D. thesis (In English) Using multi-agent systems and social choice theory to design hyper-heuristics for multi-objective optimization problems.

Master in Computer Science @ Federal University of Parana (UFPR), 2014-2015

My research entitled "Uma hiper-heurıstica de seleção de meta-heurısticas para estabelecer sequências de módulos para o teste de software" applied Choice Function and Multi-Armed Bandit selection methods to design a hyper-heuristic to find solutions for the Class and Aspect Integration Test Order, a multi-objective problem studied in Software Engineering.

Bachelor degree in Information Technology @ University of Western São Paulo, 2009-2012

Collegiate member in 2011 and 2012. Student monitor in the disciplines Algorithms and Programming Techniques I and II, Logic , Computer Lab II , Data Structures I and Programming Language I. Even always working I had performed well during my course , and when I concluded I was considered an outstanding student .


Experience

Postdoctoral Researcher @ University of Sao Paulo (USP)

2023

Apply artificial intelligence in order to optimize cloud architecture in terms of costs and performance;

Apply artificial intelligence aiming to improve pod allocation in Kubernetes nodes;

Co-advise graduate students.

Back-end Software engineer @ Carta HealthCare

2021-2023

Improved data processing speed by employing multi-thread techniques (vectorization) making the system able to process millions of rows of data;

Improved the continuous delivery by updating Docker Files and Jenkins Files

Reorganized an old Java project to be in a Docker;

Improved Java/Python code performance by employing profiling techniques;

Create Shell scripts for Continuous delivery on AWS EC2 machines.

Machine Learning/Software @ Magote.com

2020-2021

Client and product segmentation using clustering techniques

Text processing using NLTK to improve product search autocomplete

Develop a product recommendation system using social choice techniques

REST webservice developer

Doctoral Fellow @ UoN

2018-2019

Research Visitor at the University of Nottingham (CAPES PDSE scholarship).

Doctoral Fellow @ USP

2016-2020

Doctoral Student at the University of São Paulo (CNPq scholar).

Masters Fellow @ UFPR

2015

Masters Student at the Federal University of Parana (CAPES scholar).

Full-Stack Web Developer @ RevendaMais

2014

PHP (with CodeIgniter) development coding systems and REST APIs, Front-end development with jQuery, PostgreSQL database management (creating procedures, views and triggers), and third-level support.

Full-Stack Web Developer @ Magote.com

2011-2014

PHP (CodeIgniter) and Java EE (JSF and JSP) development, Apache Webserver management, Front-end development (HTML, CSS and jQuery), and second level support.

Junior Web Developer @ WebLibre

2011

PHP, WordPress and Joomla development

expertise

Skills

Software Engineering

AWS

Kubernetes

Python

Java

PHP

GoLang

Evolutionary Computation

Multi-Agent Systems

Machine Learning

Deep Learning

Recent Publications

Satisfying user preferences in optimised ridesharing services: A multi-agent multi-objective optimisation approach

V. R. de Carvalho and Fatemeh Golpayegani

Applied Intelligence , 2022

Multi-agent systems Social Reasoning Multi-objective optimization Autonomous Decision Making Multi-objective Evolutionary Algorithm Ridesharing

Comparative Analysis of Selection Hyper-Heuristics for Real-World Multi-Objective Optimization Problems

V. R. de Carvalho, Ender Özcan and Jaime Simão Sichman

Applied Sciences, 2021

Multi-agent systems Hyper-heuristic Multi-objective optimization Reiforcement Learning Multi-objective Evolutionary Algorithm

Hyper-Heuristics based on Reinforcement Learning, Balanced Heuristic Selection and Group Decision Acceptance

Valdivino Alexandre de Santiago Júnior, Ender Özcan and V. R. de Carvalho

Applied Soft Computing, 2020

Hyper-heuristic Multi-objective optimization Reiforcement Learning Vehicle Crashworthiness Water Resource Space applications communication WFG DTLZ UF

Applying Social Choice Theory to Solve Engineering Multi-objective Optimization Problems

V. R. de Carvalho, Kate Larson, Anarosa Alves Franco Brandão and Jaime Simão Sichman

Journal of Control, Automation and Electrical Systems, 2020

Multi-agent systems Hyper-heuristic Copeland Kemeny-Young Borda Count Vehicle Crashworthiness Water Resource Machining Travel Salesperson Problem

Evolutionary Computation meets Multi-Agent Systems for Solving Optimization Problems

V. R. de Carvalho and Jaime Simão Sichman

Letters of the Special Discussion on Evolutionary Computation and Artificial Intelligence, Tokyo, 2018

Evolutionary Computation Multi-agent systems Hyper-heuristic Mono-objective optimization Multi-objective optimization

Solving real-world multi-objective engineering optimization problems with an Election-Based Hyper-Heuristic

V. R. de Carvalho and Jaime Simão Sichman |

OptMAS 2018: International Workshop on Optimisation in Multi-Agent Systems, Stockholm, 2018

Hyper-heuristic Multi-agent systems Multi-objective optimization Vehicle Crashworthiness Water Resource Machining Copeland Voting

Multi-Agent Election-Based Hyper-Heuristics

V. R. de Carvalho and Jaime Simão Sichman |

IJCAI DC 2018: 27th International Joint Conference on Artificial Intelligence Doctoral Consortium, Stockholm, 2018

Hyper-heuristic Multi-agent systems Multi-objective optimization

Applying Copeland Voting to Design an Agent-Based Hyper-Heuristic

V. R. de Carvalho and Jaime Simão Sichman |

AAMAS 2017: 16th International Conference on Autonomous Agents and Multiagent Systems, pg:972-980, São Paulo, 2017

Hyper-heuristic Multi-agent systems Multi-objective optimization Copeland Voting WFG

Uma hiper-heurıstica de seleção de meta-heurısticas para estabelecer sequências de módulos para o teste de software

Master Thesis, Federal University of Parana (UFPR), Curitiba, 2015 |

Advisor: Silvia Regina Vergilio

Hyper-heuristic Multi-objective optimization Class Integration Test Order Multi-Armed Bandit Choice Function