Profile photo.

Tiago Ceccon

Software Developer

I am a software developer from Porto Alegre, Brazil, with a Bachelor's degree in Computer Science.

Throughout my years of experience in the industry I have primarily been involved in developing cloud-based systems, focusing on backend development. I am also an enthusiast of Agile methodologies and have worked as a Scrum Master in complex scenarios that required cooperation among globally distributed teams. In both my roles as a developer and a Scrum Master, I have always worked to foster the adoption of Extreme Programming techniques, as well as promote Agile values and principles within my environment.

During my free time, I enjoy developing simple games as a means to learn new languages and frameworks, and to enhance my skills in those I am already familiar with. Additionally, I have a strong interest in how technology can help to shape society by enabling new possibilities and in how it interacts with culture and people's habits in general.

At the bottom of this page you will find links to my profiles in several platforms, feel free to get in touch.


Projects

Screenshot of a chatbot application running on terminal

JenAI

JenAI is a command-line interface frontend for chatting with local LLMs. It supports saving conversations, loading conversations on startup, and two response modes: streaming and block. Block response mode displays token usage metrics after each message. I developed JenAI as a way to familiarize myself with creating systems around generative AI models, a chatbot being a good starting point.


Java

Screenshot of Local Language Practice application with an ongoing chat

LLP

Local Language Practice (LLP) is a desktop application to practice languages through conversation with local LLM models. Users take part in a conversation between two characters, controlling the answers for one while an LLM model controls for the other. A default scene is provided, but custom scenes are also supported. In addition to the conversation, there are translation widgets for the practiced language, so that users can clarify their understanding without changing screens.


Java

Screenshot of PyPong game with a match in progress

PyPong

Pong in Python, using Tkinter for the GUI. Players try to outscore the AI, while the ball gets faster the longer it takes to either one score a goal. This is a project I initially developed when I was starting in software development and which I have been refactoring and improving sporadically across the years to practice dealing with (my own) legacy code.


Python

Screenshot of SnakeJS game with a match in progress

SnakeJS

Implementation of everyone's sweet childhood memories as a webapp. Players control a snake on a limited grid and try to eat as much food as they can without hitting the walls or biting themselves. For this project I used ChatGPT to generate the user stories that served as the basis for the development, more details can be checked in the repository. It uses purely HTML, CSS and vanilla JavaScript.


JavaScript


Contact