I'm an experienced Software Engineer with 20+ years developing web and mobile applications. During this time, I had the opportunity to work with a wide variety of technologies such as databases, programming languages, frameworks and libraries.
I possess a bachelor's degree in Computer Science and a post-graduate specialization in Software Engineering.
Building things using code is my job, yet not only that, but it is also a hobby that I enjoy and share with my son and friends. I'm passionate about bringing ideas to life, even if just for fun or prof a concept.
👨🏻💻 Work Experience
I started working professionally with IT at an early age. I had the opportunity to work with many different domains, from support to networking, infrastructure, system administration, development, team management, and even as an IT director. That gave me a fantastic view of the tech world.
I was fortunate enough to have a great environment with the freedom to learn and make mistakes, then the opportunity to work in a tremendous government company helping to build public solutions that would impact the whole country.
Later on, I had the chance to accept a challenge to move to Canada and work in a new vibrant and always evolving startup environment. After learning and exploring new products, ideas and sharing the most diverse workspace with people, I decided to take another leap and move to a small local startup that a giant international corporation recently acquired.
Telus AgricultureCorporation that helps food production by leveraging technology innovation through companies/applications such as FarmAtHand and Decisive Farming
I joined Telus Agriculture through FarmAtHand, a small company from Winnipeg that the international group newly acquired.
My first goal at FarmAtHand was to modernize the code, infrastructure and the product itself by bringing a refreshed view from a prominent local success startup, of course, my previous experience at SkipTheDishes.
Then I ended up working on migrating the infrastructure to a complete CI pipeline, hosting and autoscaling platform on AWS, suggesting ways to modernize the tooling, improving the development confidence, and facilitating the release of new features.
After that, we had a corporate merge, with Decisive Farming assuming the FarmAtHand product, and we became part of a bigger group with a new challenge.
Build a new API for the revamped and integrated application, migrating a NodeJs/React/PostgreSQL/AWS application to dotNet Core/Angular/SQLServer/Azure stack, helping to consolidate the standard adopted by all companies within the organization.
Skip the DishesSkipTheDishes is a technology company that enables food delivery in 500+ cities.
SkipTheDishes was the first (and only) company in Canada that I interviewed for while looking for jobs abroad still in Brazil. They hired me in November 2017 to work as a React developer after a remote interview process.
Skip always innovated and pushed changes to be faster, reliable, and competitive with an extremely fast pace and running in a competitive and robust market, being a great environment to learn and experience how to build a high availability product.
I had the opportunity to work with three different teams. With the Customer Team, we migrated the customer application from Python to React/Redux, including i18n allowing, within three months, enabling SKIP to launch the platform in Quebec in French, hitting the market before their competitors.
After that, working with the Ops-Core Team, we revamped the back-office system to automatize flows and processes, provide a better toolset for the operations teams, reduce costs, and improve the overall network performance.
Later on, with the Ops-Courier Team, we crafted real-time applications to support the operations teams through chats and dashboards using GraphQL and AWS Kinesis streams.
DATAPREVBrazilian Public IT Company, responsible for systems and databases of all Brazilian Social Service.
DATAPREV was the second organization I worked for. It was also a public/government organization, however, with a critical difference between how a person can get hired. Reckon you might not be familiar with how the government employs in Brazil. In that case, it looks like that: You register for a public contest, you will take a written exam (sometimes nationwide with hundreds of thousands of other candidates), and will hire the candidates with the best grades under the number of positions opened.
It is a humongous company, present in all 23 states, 3 datacenters, 5 development units, more than 5000 employees where more than one-third are developers. We worked to support and maintain various systems for the Brazilian Social Security Service, Employment Ministry and Economic Ministry.
The stack used at DATAPREV was what you could expect from big companies and government, enterprise-level technology, compliance, security, mostly using J2EE (EJB, JSF, JPA, JMS) and Oracle, always supported by these prominent vendors.
But in my last two years, we saw a movement to modernize the company, the population, and by extension, our government clients were claiming for quality and agility to answer the public needs.
Then I had the opportunity to help build our Agile methodology, including tools and techniques like BDD, code reviews, CI/CD pipelines. Along with that, we modernized our JSF-based applications to SPA and integrated our J2EE application using REST APIs.
My department was responsible for the coordination of this program. I worked leading the training in modern web development tools like React and React Native by creating architectural guides, patterns, documentation and courses.
Vale do Acaraú State UniversityPublic University in Ceará/Brazil.
Vale do Acaraú State University, or UVA for short was my first job and also where I concluded my Bachelor's degree. I've worked there for almost 14 years, and I'll be forever grateful for the safe, innovative and challenging environment I had available to become an excellent professional. It was a place that I started as an intern and left as IT Director (and also e-Learning Director, but that is another subject).
My internship was to support internet users throughout the organization, but after a hardware failure and a shortage of people, I took tasks like configuring and maintaining internet and intranet servers.
By coincidence, a couple of years later, for the same reason, with another teammate, I migrated the academic software from a legacy Clipper-based application to a brand-new built with LAMP stack. Making it possible for the students to carry out their application for online enrollment for the first time at the University.
During the years, I faced many challenges and acted simultaneously as an analyst, developer, and sysadmin, since the University didn't have the means to improve the IT department. This picture changes in 2009 with a new government and a considerable investment in superior education.
In my last year working at UVA, I spent managing a 22 contributors team, supporting all University IT services, including developing and maintaining more than 50 applications in Java and PHP and also maximizing the budget ROI by negotiating contracts and acquisitions.
You might think that is a lot of technology to work with, but you need to consider that it was over more than 20 years and more than 50 projects in 4 completely different companies. I tried to not limit myself and experiment as much as I could, without fear of changing team or project to help, learn and be challenged. Furthermore, I often accepted freelance work exclusively to have experience with a new language, new framework, or a completely different environment, navigating between front-end, mobile, back-end, and even infrastructure work.
I might have become more like a generalist than and specialist, but that was crucial for me to help many companies, teams and projects during my career.