|Porto Alegre, Brazil|
|+55 51 91820304|
I have 6 years of experience with web development. I have worked in many different layers of software development, including backend, frontend, mobile and server automation. My main focus is back end and I advocate code quality, readability and maintainability. I include tests on my daily development practice, together with TDD and refactoring.
My main skill is learning, and I like to stretch it in daily challenging situations. I was lucky to have had the opportunity to join my first three jobs without knowledge of the technologies involved and have learned them. I love environments where I can grow, surrounded by smart and interesting people.
I love to code, and more specifically, I love programming languages and paradigms. In my free time, I have experimented with many programming languages and technologies, including SML, Python, Ruby, Haskell, Scala, Go, Rust, Racket, Bash, Clojure, etc and even my own language, Marco. I’m also confident working with fast delivery, continuous integration and many agile ideas. I’m fluent in Portuguese and English and also a game and music enthusiast.
Software Developer at Movinga
Feb 2017 - present
I joined a team of full-stack developers at Movinga and immediately started working on a micro service and its three client applications. I was also responsible for starting a couple of frontend applications from scratch. Later we extracted a pricing micro service from the main legacy code in order to improve deployment times, frequency (from once every two weeks to 10 times a day) and provide better insights about our prices.
- Grape, React, Redux and other supporting libraries for both frontend and backend
- AWS, Docker
Software Developer at Globo.com
May 2015 - Jan 2017
I joined Globo.com to work on the web media platform team. Our team was responsible for receiving and encoding videos to be prepared for internet delivery. We worked on a system that provided both an UI and an API for uploading videos and metadata. This system was distributed in more than 50 locations across Brazil, gathering and processing videos from all partners. We processed more than 2.5TB of videos on a weekly basis, accounting for more than a thousand hours of content.
- Designed a content protection microservice that integrates with 3 third party APIs
- Participated on hiring interviews for most people hired in the Porto Alegre office
- Started an initiative to gather video encoding metrics and better understand our system
- Helped shape the office culture
- Mentored less experienced developers
- Rails and Backbone
- Ffmpeg and x264
- Mongo and Redis
Software Developer at Bearch, Inc.
November 2014 - April 2015 (6 months)
We developed an anonymous social network. The whole team worked with all parts of the development, so I had the opportunity to work with a Go backend hosted on Google App Engine, an Android and an IoS application. All of these technologies were new to me.
- Shipped a huge amount of features in very little time due to our experimental nature
- Created a pipeline for building and deploying android and IoS apps to their respective stores, improving the testing and release cycles
- Created a camera for Android that worked on more devices than the Whatsapp Camera
- Worked daily with unknown technologies and new challenges
- Go on Google App Engine
- Android with Java
- IoS with Objective C
Software Developer at e-Core
March 2013 - November 2014 (1 year 9 months)
We developed a single page application for a remote client in New York. I was hired not only because I knew some of the technologies involved but also because I was willing to learn the ones I didn't know. This was a project that could change very fast.
- Automated the deployment process and reduced the total time from 2 hours down to 160 seconds.
- Helped migrate a legacy application from Grails to Rails
- Experimented with virtual machines, docker and several deployment strategies
- Rails, Knockout.js
- Groovy with Grails
- Puppet, Chef
- Mongo, Postgres, Redis, Solr
- VirtualBox, Docker
Software Developer at Codeminer42
July 2012 - February 2013 (8 months)
We developed systems for startups. It was my first experience with Rails, but also included frontend development. Since each developer was responsible for managing a whole project, our responsibilities involved coding, creating interfaces, thinking about user experience, negotiating with clients, managing infrastructure and deployment, etc.
I was one of the first people to be hired on our branch of the company, so I had the opportunity to help build the culture we wanted. I learned a lot from the experience and it helped shape some of my future career goals.
- Migrated an application from rails 2 to rails 4
- Helped shape the office culture
- Developed a project alone from conception to delivery
Development Consultant at ThoughtWorks
January 2011 - June 2012 (1 year 6 months)
Consisted mainly of consulting and web development for the retail industry, with daily client facing situations. I worked mostly on maintaining and developing new features for a large legacy Java code base. Teams were distributed across Brazil, India and the US.
This was my first contact with agile practices. I have learned much from it, including the importance of pair programming, TDD and Continuous Integration. I had a mentor that helped me build most of my ideas about development.
- Started an initiative to improve development and feedback cycles
- Started a culture of looking into build status
- Extended the development tools, greatly improving development speed and team motivation
- Acquired the trust of some of the clients, making our work much easier
- Participated on ThoughtWorks University, which changed my life
- Started learning about interviewing candidates
- Java and Spring
- Ruby for integration tests
Universidade Federal do Piauí (UFPI)
Bachelor of Science (BS), Computer Science, 2004 - 2007
- Portuguese (Native)
- English (Fluent)