- Java Developer and ConsultantMy Road Forward2017 - PRESENT
Technologies: Java, MySQL, AWS
- Consulted on and implemented a prototype for a client which aided them in the creation of their product.
- Technical Writer | ConsultantIamOnDemand - IOD2017 - PRESENT
Technologies: Kubernetes, Swarm, Mesos, DevOps
- Wrote technical articles in the area of DevOps; currently, have written about five articles.
- BDD Specialist | DevOps | Android DeveloperTeadate App2016 - PRESENT
Technologies: JBehave, Java, Spring Boot, Google Cloud, GAE, Kubernetes, Docker, Elasticsearch, Google Guice, Android
- Implemented new BDD stories over the back-end services.
- Refactored a BDD project to organize the code and ease development; started using dependency injections (Google Guice) with JBehave.
- Supported Spring Boot applications.
- Implemented corrections and adjustments over the GAE (Google App Engine) application (Java).
- Created Elasticsearch BDD scenarios using the Elasticsearch cloud.
- Created DevOps tasks to deploy Spring Boot applications over a Kubernetes cluster using Jenkins. The entire application deployment is automatic (development, user acceptance testing, staging, and production).
- Implemented minor Android bug-fixes.
- Updated the internal Wiki with internal knowledge so that other developers could start on the project quickly.
- Maintained the Android app and created automated tests.
- Tech LeadQuantum2014 - PRESENT
- Handled the transformation of a legacy system from a monolith to a more modular, small services architecture.
- Used messaging (JMS with ActiveMQ) for service communications; handling service discovery and balancing.
- Improved the UI experience—moving from a table-based layout to a CSS3 and HTML5 layout.
- Introduced BDD (behavior-driven design) using Serenity and JBehave. The integration tests on our web application use Selenium and JBehave and our internal systems use JBehave and JUnit and some internal solutions.
- Handled the product team meetings and worked together with the requirements team to split our work in sprints using the Scrum methodology.
- Worked with a QA team; joining forces to improve automated tests.
- Gained experience with the SQL Server; handling stability with a database consultant.
- Created a tool for our clients so that they are able to connect with our systems through Excel functions and SOAP. The tool is able to handle tasks queues for each user, in that way one user cannot use all of our CPU power.
- Built up the back-end and front-end framework for handling contextual user navigation throughout our legacy web system. The technology shows different information based on what is selected and in which screen the user is in. The solution was challenging due to the legacy nature of the application and we did it in a way so that it is now simple to extend and improve the solution.
- Led the migration from Java 6 to Java 8 of the entire code base (over ten years of code).
- Led the migration from Spring 3 to Spring 4 in order to work with Java 8.
- Reviewed code and mentored developers.
- Helped in the creation of a DevOps area in the company.
- Architected, designed, and developed new products.
- Created several services using different technologies such as Node.js.
- Developed a caching technology using JWT, Varnish, and Java to provide different caching values for groups of users, avoiding massive hits on the backend.
- Designed WebSocket technology for user notification and real-time data.
- Designed and helped on the implementation of a real-time market data tool with an Excel plugin made in C#.
- ProfessorCCE PUC, Rio Centro2012 - PRESENT
- Worked as a professor of back-end development using Servlets, JSP, and JDBC on other low-level technologies.
- Taught databases using Oracle SQL Developer.
- Software EngineerInstituto Tecgraf, PUC-Rio2013 - 2014
- Supported a long-term emergency system for Petrobras with innumerable developers, managers, and QA staff. Using Spring, Java, and JSF.
- Used JavaServer Faces with PrimeFaces and some internal technologies to handle the application.
- Contributed to an internal schemaless database based on description logic.
- Aided in management meetings and provided solutions for handling the products.
- Used Knockout and PrimeFaces for handling the front-end.
- Senior Software EngineerMinds at Work2010 - 2013
- Created a single-page application (SPA) for portfolio management. More information can be found in my portfolio.
- Promoted to be the project coordinator of clients; leading the development of several other single-page applications for the same client (e.g: a due diligence system, a qualitative analysis system, a risk workflow system. and others).
- Took over many other software projects—as we grew, the client canceled contracts with other software providers and gave the projects to us. We had to take a lot of bad code and improve it using software engineering patterns and a lot of refactorings. In one month, we had the system operational, but throughout the years we were always trying to improve the products.
- Helped to create the first QA team of the company. The team was responsible for creating new Selenium integration tests for new products and different clients.
- Project CoordinatorOffice of International Programs | Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio)2004 - 2010
- Maintained a Visual Basic application for the hospital ProCrianca.
- Data-mined Brazil's education ministry.
- Developed a workflow tool in Java for the legislative assembly of Sao Paulo in Java with Servlets and JSP.
- Worked as a project coordinator for legacy software for the Oswaldo Cruz Foundation (Portuguese Fundação Oswaldo Cruz aka FIOCRUZ).