Hi, my name is Thiago Felipe Bastos da Silva 🖖.
I am a C++ Software Developer with a strong background in Competitive Programming and Graph Theory, experienced in building high-performance systems and solving complex algorithmic problems.
Quick Facts
- Software Developer focused on algorithms and performance.
- Strong interest in Competitive Programming.
- Favorite topics: graphs, dynamic programming, combinatorics.
Personal
- I play drums 🥁.
- Anime fan (Code Geass is one of my favorites).
My story 📖
I began my programming journey during technical high school in Systems Development at Colégio Pedro II, where I was introduced to competitive programming and programming marathons. This environment sparked my interest in C and C++, which I started learning early on.
During my undergraduate studies in Computer Science at UFRRJ, I became even more involved in competitive programming, participating in contests such as Meta Hacker Cup, Google Code Jam, the SBC Programming Marathon, and Yandex Cup. To prepare for these competitions, I trained extensively on platforms like Codeforces, AtCoder, and CodeChef, taking part in many contests and dedicating a lot of time to studying competitive programming techniques and algorithms.
In parallel, I also expanded my knowledge of computer science theory through research projects focused on graph theory. I had the opportunity to do this through two scientific initiation projects in graph theory: one funded by FAPERJ and another by CNPq, with a focus on a specific problem related to spanning trees.
Currently, I work as a C++ Developer at Tecgraf/PUC-Rio, working on a wide range of computer science problems.
Academic Background 👨🏽🎓
- System Development Course - Colégio Pedro II (2015–2017)
- Bachelor’s Degree in Computer Science - UFRRJ (2018–2023)
Experience 💼
- Programming Tutor . Colégio Pedro II . 05/2017 - 12/2017
- Assisted students with questions related to the subject
- Solved C# exercises with the class
- Scientific Initiation . Faperj . 09/2019 - 07/2020
- Project aimed at discovering certain properties of a specific class of graphs, the 3-admissible graphs, from graph theory, through algorithms implemented in C++ and using multithreading, data structures, as well as other classical algorithms from the literature, in order to find a way to characterize this class of graphs.
- Scientific Initiation . CNPq . 03/2022 - 08/2022
- Project aimed at discovering certain properties of a specific class of graphs, the 3-admissible graphs, from graph theory, through algorithms implemented in C++ and using multithreading, data structures, as well as other classical algorithms from the literature, in order to find a way to characterize this class of graphs.
- Software Residency . IUUL . 01/2024 - 12/2024
- Development of backend applications using Node.js, SQL, Express, Postgres, and Sequelize.
- Creation and execution of automated tests.
- Development of RESTful APIs.
- Projects carried out following the Scrum methodology.
- Team collaboration in task execution.
- Encouragement of self-learning.
- Backend Developer Internship . Lions pre-owned s.a . 08/2024 - 12/2024
- Development of integrations between platforms using ASP.NET Core, ensuring system interoperability and efficiency;
- Development of intelligent chatbots using ASP.NET Core, OpenAI API, and Embeddings, providing more efficient and personalized support solutions;
- Creation of robust and secure APIs with ASP.NET Core, supporting the company’s system communication and integration needs
- Software Developer . Tecgraf/PUC-Rio . 12/2024 - Currently
- C++ Developer in the Computational Geophysics Group at the Tecgraf Institute/PUC-Rio: involved in the development and maintenance of the V3O2 software, developed in partnership between the Tecgraf Institute/PUC-Rio and Petrobras. V3O2 includes features used for the visualization, processing, and interpretation of seismic data.
Tech Stack ⚙️
- Languages: C, C++, C#, Python, JavaScript, Rust
- Backend: ASP.NET Core, Node.js, Express
- Databases: PostgreSQL, MySQL
- Tools: Git, Docker, Linux
- Concepts: Algorithms, Data Structures, Multithreading
Competitive Programming 🏆
- Codeforces: Candidate Master (2067, peak 2164 - Master)
- AtCoder: 1992 rating (peak 1998)
- CodeChef: 2123 rating
- ICPC (SBC Programming Marathon)
- 3rd place (Rio de Janeiro)
- 29th place (Brazil - First Phase)
- 13th place (Brazil Finals)
- Solved 6000+ problems across Codeforces, AtCoder, CodeChef, Beecrowd, SPOJ, UVA Online Judge and others.
- Participated in 200+ programming contests.