Summary
Overview
Work History
Education
Skills
Projects
Timeline
Generic
Tiago Thompson

Tiago Thompson

Kitchener,Canada

Summary

I am a dedicated Software Engineer with 10+ years of experience with a focus on development, architecture, and continuous learning. Throughout my career, I have honed my skills in software architecture and developing, team management, and DevOps, making me a well-rounded professional capable of delivering high-quality software solutions. With a strong background in statistics, mathematics, finance, and programming, I possess a comprehensive understanding of software engineering principles and analytical thinking. My goal is to deepen my programming knowledge and build robust, scalable systems. By staying updated with emerging technologies and best practices, I strive to create innovative solutions and contribute to project success. I am passionate about leveraging my expertise to drive technological advancements and solve complex problems.

Overview

10
10
years of professional experience

Work History

Founder

iBotz
Sao Paulo, Brazil
03.2019 - 05.2023

Built and Maintained a Proprietary Robot Process Automation Platform:

  • Developed and maintained a proprietary robot process automation platform tailored to the financial market using C++/Rust.
  • Delivered innovative and customized automation solutions to clients through consultation and seamless implementation of automation bots using Python and Web Technologies (Typescript/CSS/HTML leveraged by frameworks like React and Vue).

Managed Infrastructure and DevOps Pipeline:

  • Established and managed the infrastructure and DevOps pipeline (Jenkins) using AWS cloud services.
  • Utilized various AWS products and automation tools such as Terraform and Ansible to streamline processes.

Developed and Delivered Products:

  • Focused on optimizing conciliation processes by employing bots coded in python that collect, process, and deliver data efficiently to customized web applications.

Led Developer Team:

  • Managed a team of developers, overseeing both product development and consultation aspects.

Partner Head of Risk/Innovation

Kondor Invest
Sao Paulo, Brazil
12.2005 - 09.2019
  • Designed, built, and maintained systems for monitoring, calculating, and reporting financial metrics and financial simulations using C++/Python.
  • Spearheaded the development and maintenance of an RPA platform dedicated to operations risk mitigation and data collection using C++/Python.
  • Led and managed both the operation team and developer's team, ensuring smooth collaboration and optimal performance.
  • Leveraged automation techniques to streamline processes, improve efficiency, and achieve operational excellence
  • Calculated and reported investment and risk metrics to the Investment Team, providing them with accurate and timely insights for decision-making
  • Modeled pricing and risk of financial products, including exotic instruments.

Risk Analyst

RiskOffice
Sao Paulo, Brazil
01.2005 - 01.2006
  • Asset and Derivative Modeling and Pricing Support
  • Hedge Strategy Discussions and Recommendations
  • Automation of Report Generation using Excel and VBA

Education

Postgraduate Degree - Web Technology

Conestoga College
Kitchener, ON
05.2023

MBA - Pricing And Risk, Financial Risk Modeling

Instituto De Matemática E Estatística - IME-USP)
Sao Paulo, Brazil
01.2012

Bachelor of Science - Electrical And Electronics Engineering

Universidade De Sao Paulo (USP)
Sao Paulo, Brazil
01.2005

Skills

  • Programming Languages: Python, C,Javascript, HTML/CSS, Bash, Rust, C#, PHP
  • Databases: MySQL, MongoDB, Redis
  • DevOps
  • Cloud Management [AWS]
  • Linux
  • Containers and Orchestrators (Kubernetes)

Projects

Project RPA Platform

  • Developed a comprehensive RPA platform for coding, deploying, and orchestrating Python bots.
  • Built using C++/Qt, with embedded Python and V8 interpreters to facilitate Python-based bot creation.
  • Enabled bots to crawl and connect to various data sources such as websites, APIs, and emails.
  • Implemented a lex/yacc approach for parsing data effectively.

Project Authentication and Authorization

  • Developed Authentication and Authorization server consisting of two components:
  • OAuth2 Server Microservice: Implemented in TypeScript using Express to validate and generate access/refresh tokens for other services.
  • User Interface Site: Built in TypeScript using Vue, responsible for delivering the interface for user registration and managing authorizations for services involved in the Authentication process (login screen).

Rust Generic Matcher Library

  • Developed a Rust module specifically designed for TypeScript projects, enabling the matching of two lists of JSON objects, similar to a SQL join table operation, specialized in matching huge lists.
  • The library provides a versatile match function with numerous functionalities, allowing users to configure complex matching logic on large lists.
  • Utilizes the node N-API to seamlessly integrate Rust with JavaScript.

Python Security Register App

  • Developed a desktop application in Python using PyQt to facilitate the registration of financial securities into a database (MySQL).
  • Users can create and save rules within the application to automatically populate specific fields based on the type of security being registered.
  • The application connects to the Bloomberg service to collect relevant information and autofill certain fields according to the defined rules, streamlining the registration process and reducing errors.

NodeJS Schedule Server

  • Developed a service using Node.js and TypeScript to create a scheduler that executes jobs from a Redis queue.
  • Jobs can be configured using a CRON schedule config file, allowing them to run periodically based on the defined schedule.
  • The server spawns child processes to ensure the smooth execution of jobs, providing comprehensive API-based metrics reporting for each job.
  • This server was made to operates using Raft , having many instances where the leader functions as the job creator and controller and the followers function as job consumers.

Rust App Repo

  • Developed a Rust application using Rocket as the API framework, comprising a command-line interface (CLI) app with server and client components.
  • Functions as remote repository manager for receiving binary application files in the form of folders containing all the necessary files to be managed.
  • The client component allows users to send files to the server, while the server handles diffing and version management of the apps files, ensuring efficient storage by saving only increments and creating distinct versions
  • The client can upload, update, or download different versions of the app from the repository, providing flexibility in app management.

Rust Bot Orchestrator.

  • Developed a Rust application that create a Complex Event Process (CEP) server connected to Redis.
  • Watch Redis Streams (events) and transform them into RX (reactive observables) Stream.
  • DSL (Domain Specific Language) to program the interaction of events (CEP) to generate new streams to be watched based in complex logic.
  • API to interact with the server (Rocket) where all server communication can be handled.
  • The server was made to be resilient (High Availability) where can be many instances running at same time managed by a Raft algorithms.

Timeline

Founder

iBotz
03.2019 - 05.2023

Partner Head of Risk/Innovation

Kondor Invest
12.2005 - 09.2019

Risk Analyst

RiskOffice
01.2005 - 01.2006

Postgraduate Degree - Web Technology

Conestoga College

MBA - Pricing And Risk, Financial Risk Modeling

Instituto De Matemática E Estatística - IME-USP)

Bachelor of Science - Electrical And Electronics Engineering

Universidade De Sao Paulo (USP)
Tiago Thompson