I'm a software developer passionate about Software Architecture, Design Patterns, and TDD. Although I've worked with various programming languages, Python is the one I've specialized in.
I started my career working in small businesses, where I had the opportunity to participate in decisions about product features, architecture, technology, and budget. The teams were usually small and we would take care of all phases of development and ops. Many of those teams were self-managed and established their own work methodologies, mixing different agile techniques such as Scrum and Kanban.
My proficiency in software architecture eventually led me to roles in larger companies where I collaborated with product teams to enhance existing solutions and elevate software quality. During this time, I focused on spreading Test-Driven Development (TDD) practices and SOLID principles across engineering teams.
I work with both front-end and back-end technologies and have a good understanding of DevOps techniques.
In the last years, I've been dedicating my personal studies to statically typed languages, and building projects using Domain Driven Design especially Rust.
03/2023 - 10/2024
Evolution of several Python applications using Flask Framework and MySQL through SQLAlchemy. Creation of new microservices with FastAPI. Infrastructure management with Terraform and Kubernetes. Contributions to architectural decisions to improve the microservices infrastructure. Development team leadership. Requirements analysis and road-mapping.
05/2020 - 02/2023
Evolution of several Python applications using Flask Framework and MySQL through SQLAlchemy. Creation of new microservices with Django Framework. Evolution of Ember.js code base. Contributions to architectural decisions to improve the microservices infrastructure. Development team coordination. Requirements analysis and road-mapping.
04/2019 - 05/2020
Maintenance of Python/Django applications to provide OAuth2 and OpenID authentication protocols in Password and Credentials flows, as well as managing user privacy settings. Preparation to move the applications from on-premise infrastructure to the cloud, using Kubernetes on different infra setups. I was also responsible for maintaining the AngularJS frontend and developing a new frontend using Vue.js while being part of the Incidents Management Team.
07/2017 - 04/2020
Evolution and refactoring of an 8-year-old ecosystem of applications written in Python/Django and Ruby with Sinatra and Rails. Amazon AWS infrastructure update using Ansible Kops, Kubernetes, and Docker. Focus on architecture restructuring, applying Hexagonal Architecture and Domain Driven Design.
07/2016 - 05/2017
Django Rest APIs development for various projects, frontend implementation for some, and deployment on Heroku PaaS. I worked in a completely remote team primarily in New York and Brazil.
07/2016 - 02/2017
Software counseling for development and management teams. Improvement of deploy processes and decoupling of applications to enable unit testing. Provided consultancy once a week.
02/2016 - 07/2016
Development and maintenance of Django / KnockoutJS systems; Testing legacy code and guiding to new architecture standards in an environment of about 40 developers.
08/2015 - 01/2016
Development and maintenance of Django / AngularJS systems; Continuous integration on Amazon Ubuntu and CentOS servers. Technical optimization in the applications. It was where I started to dig into agile methodologies, like Scrum and Kanban. It was also where I could deepen my testing knowledge and apply it in production software. The job was partially remote and the team was distributed.
06/2015 - 06/2019
Planning and execution of all the technological infrastructure for the aosfatos.org portal, using Python/Django, vanilla JS, and AngularJS. Development of a chatbot using Python/Bottery/Chatterbot. Implementation of infrastructure and DevOps practices for all systems.
08/2014 - 07/2015
Development and maintenance of Django / AngularJS systems; manual deployment on CentOS and Debian servers. Initiated the automated testing process; optimization of slow parts of the application; caching implementation.
02/2014 - 08/2014
Evolution and maintenance of vanilla PHP systems. Implementation of HTML, CSS, and JS front-ends. I started as an apprentice and, within 6 months, I was the main responsible for a couple of projects.
05/2011 - 01/2014
Managing institutional projects, especially the Ecofunds database, coordinating teams to rescue legacy applications and rebuild them using Django Framework.
09/2006 - 03/2007
Building websites using Flash and HTML.