My very first interest on computers dates from my teenage years when the hard drive from my first PC died. I was 12 years old, and while trying to get some fix to my computer, I felt myself ashamed because someone told me that “the issue is the hard drive and the fix will cost you this amount” and I could not do anything about it…because I did not know what a “Hard Drive” was or meant …

Since that day, several situations related to computers intrigued me a lot, always hitting me in a karmatic way … From the obscure DOS commands to several floppy disks needed to install a new game; from the unreliable dial-up internet connection of the end of the 90s to computer viruses and Win98 re-installations … I knew inside that I needed to learn more about all of that.

When I was 15, I started a two-year technical, hybrid Electronics / Electrician course, and I get a chance to learn the very basic foundations on how computers are made : I learned about boolean algebra, transistors, digital circuits, something about microprocessors, and I even “programmed” for the very first time using PLCs. However, I still could not figure out how my PC at home really works … And I knew that I still had more to learn.

At 19 I started my very first bachelor course at UNICAMP on Mathematics. I gave up in first year because I felt that Computer Science should be my way, and Math was my given choice because I was not able to qualify to CS at the admission tests (called “Vestibular”, in Brazil)

I love Math until today, and after trying again and again, I finally owned the admission tests and I had TONS of math courses at USP, the university where I graduated on Computer Science (several years later) and the instituition I own all my formal background, and much more.

While studying Computer Science, ironically I did not see myself as a full-time programmer in the very beginning; I quite disliked programming at my first CS days and courses, and I had much more interest on “computer building blocks” knowledge, like Networks, Operational Systems, Computer Architecture, Databases and so on … My first internship - dealing with front-end development of our library website - using technologies like PhP and Javascript (circa 2008) did not help in this context, either. I started to enjoy programming when I started to use Java to all my practical assignments (😂).

In 2009 the world was totally hyped about smartphones and just had bought my first Macbook. I started to learn about iPhone programming - trying to grasp the Objective-C weirdness with my naive C/C++ background - and when the first iPad was launched, I realized that Mobile could become “the next Ruby on Rails” to focus and learn. I remember that several friends from those days picked up the technical career as a developer with web development, while I developed some course projects with mobile and started to learn something about Android as well, given that I had a not-so-mediocre Java language background.

(and because I could not afford an iPhone and a Macbook at that time)

I have been doing software development for Mobile platforms professionally since 2010. I worked both with Android and iOS in the early days, but since 2013, I decided to become an Android specialist; I deep dived on this eco-system, and offered this knowledge for several successful products delivered in Brazil, like VivaReal, Magazine Luiza and Stone.

I worked for several industries over the years, from content media to e-commerce apps, across dozens of projects, and I faced several different and challenging problems on all of them, always learning a lot. Nowadays, I also have been playing with backend development and I’m quite excited with the backend (again!), mostly because now we have Kotlin as new shining option for JVM-based backends, and we have technologies like serverless growing quite fast.

I’m a father of a beautiful boy, who lives in Brazil with her mother. In the spare time, I like to learn a little bit more about philosophy, sociology and other human sciences. As a computers nerd, I enjoy the most of the usual geek stuff as well - movies, series, books, comics - but I’m not into games for no special reason …

At the end of the day, I see myself just like a curious guy, and a hard worker person instead of a super-clever one. I try to get better over time on everything I do, and only I know that I can improve a lot on so many things … But, in order to keep my own sanity, nowadays I’m just practicing this idea that a friend of mine once shared with me :

“Refactoring myself, a little bit, every day”