Universidade Estadual do Oeste do Paraná
My entire life I liked to fix and build things, in my childhood I built some complex traps for my toys, in my teen age I was the person in home that everyone requested to fix something into the computer, I think was the natural path to fall into the IT world, I went to the college to study computer science, was hard but I learned many things and specially to program, then I started my professional journey as a developer, again building things. The complex stuffs always catch my eyes, in my free time I started some hobby projects like fixing by my self classic cars, making some small furniture and recently I built keyboards, more specifically split keyboards, I built 4 different models and counting...
With 13+ years of experience in software development, covering several areas from desktop applications to systems / front-end pages. I call myself a curious person who really believes that we always have something to teach and we always have something to learn, a little perfectionist and with a critical sense, I was able to have a positive impact on every role I went through in my career. Although I have a solid background of technical experience, if I had to say a superpower that I have, it would be my empathy, the ability to put myself in the shoes of people, my customers, the user, my teammates and others. It took me several years to realize how important it is to have this skill, if not more than technical skills.
Focused in recent years on the development and architecture of the front end, I like to put my hands and work together with the team, I strongly believe that constructive feedback keeps us evolving, so yes, please give it to me. I'm not the master of knowledge, but the things I don't know I do my best to make it work in the best possible way (at least I try).
Working in some branding and marketing projects together with the design team, helping into internal projects and in some external projects for partner companies as well. using mainly Typescript and Next.js. Not only building the static generated websites with complex design and animations but working with many services integrations and sometime building some migrations scripts to migrate content from one CMS to another.
I learned a lot how to work in a distributed team effectively, using a lot of asynchronously communication like recordings and scheduled messages that works for everyone regardless of the time zones. I'm proud to help not only the internal companies but also many partner companies to grow specially because all these companies aim to make a positive impact on the world.
Working on cryptocurrency ecosystem projects on FE side using React with Typescript for main development I helped to maintain and build new features into the exchange platform and the marketing website as well. Using advanced concepts like context API, custom hooks, render performance check, etc ... For the state of the application we sometimes use the Apollo client cache for GraphQL and where it makes sense we use the context API or Zustand framework. In tests, we use Jest with React Testing Library for unit tests and for e2e tests and we use the Cypress framework. CI / CD with Gitlab, for styles we use Emotion as the main framework and many other auxiliary libraries.
A large company that works with 3 pillars, public administration, civil construction and justice. I worked in the justice sub-company more specifically in the public advocacy unit, but I contributed to many projects across the justice company. I improved my skills a lot, we had a program to measure the maturity of the team, in this program we had many indicators such as code quality (test coverage, line of code, code complexity, and others), agile concepts, relationship concepts, etc... These indicators gave me a direction to improve and learn both technically and personally. We worked on distributed projects using micro front ends to reuse many micro projects that could be added to any project that was needed, to deal with this we created a well structured architecture in which all projects can inherit a main project template that can import several types of micro projects and each micro project can be developed for a different team. We had a custom design system based on Material UI, to which the entire FE team contributed.
The FE stack was around the React framework, using in some projects the Redux framework with redux-thunk or redux-observable, other projects using GraphQL with Apollo Client, for the style some projects we used SASS with BEM and other Styled Component. Jest with React Testing Library for unit tests and Cypres for integration tests / e2e. For CI / CD, Gitlab with some complex pipeline tasks. In addition, I worked reviewing other PRs and with technical interviews for new candidates.
Three things have marked me working in this company, remote work, React and agile maturity. Here I had the opportunity to work on some projects for some large companies in Brazil, I learned and experienced many concepts of agile methodology, many advanced uses of CSS, state management application using Redux. Some projects using SSR with Next.js for better SEO. sometimes worked with Drupal and PHP to serve the content for React applications, touched on some Devops things like CI / CD using Semaphore and some server configurations like creating environments (for local development and server) using Docker, Nginx, etc ...
The entire side stack of FE was based on the React ecosystem, an interesting fact is that even before there was a functional components in the React, we used this concept with a library called Recompose which provided a functional approach and we used Ramda to work the same way for currying some functions. The development team was based on pair programming, so this was a great experience for me as well.
This was my first contact with a corporate style company, with many employees and many bosses, I learned a lot, things like how to behave more formally, speak in public, how to reconcile work with many meetings and, obviously, a lot of technical work, concepts and team work. I worked in the maintenance of the company's internal system developed basically in Delphi for Desktop and Python applications for some integration scripts between servers. I had the opportunity to work on an integration project for a Web-service developed in JAVA, and this was my first contact with the WEB. All data was stored in MySQL databases, and as the company worked with many health diagnostic tests and others we had a huge amount of data and traffic (at that time the company was the largest company in Latin America and the 4th in the world on diagnostic exams.), so I have solid experience with SQL scripts and things related to that.
As a engineer I worked on a desktop application that managed commercial stores in general, with which customers managed their store's finances and sales. We use Delphi and C ++ for code and Firebird to store data. That was my first non-internship role, so I learned a lot of things like working with other people, responsibility for tasks, general concepts about programming itself.