Rod Oliveira

Rod Oliveira 🍁

Halifax, Nova Scotia - Canada

My name is João Rodolfo Suárez de Oliveira, and I go by Rod Oliveira. I am a Software Developer with vast experience in IT, hold a Bachelor's Degree in Computer Engineering, and have been working with Open Source my whole career, and programming mainly with Java. I hold 4 certifications in Java, 1 certification in MuleSoft, and I have international experience in Brazil, Canada, and England.

I have been experimenting with AngularJS - please check an alternative version of this website here.

My résumé: Rod Oliveira's resume


Android, AngularJS, Blockchain, CSS, DB2, Eclipse, Git, GitHub, IBM Cloud, IntelliJ, Java, JavaScript, Linux, Maven, MuleSoft, MySQL, Node.js, OAuth 2.0, Open-source software, Oracle database, Shell Script, Watson Analytics, WebStorm


Dalhousie University (70% done, since 09/2009)

Master's Degree in Electronic Commerce

State University of Campinas (1994 - 1998)

Bachelor's Degree in Computer Engineering


11) IBM Canadaback to top

Software Developer | Since October 2016 | Bedford, Canada

11.1) Mobile Backend API

Back-end Developer | August 2018 to February 2019 (7 months) | Halifax, Canada

I worked as a Back-end Developer (design, analysis, implementation and test) on a code developed using Node.js and JavaScript, accessing a DB2 IBM database. The code was an API for an iPhone app. I was also responsible for the design and implementation of a database schema, and spent time investigating the use of OAuth 2.0 and OpenID Connect via the IBM cloud service App ID.
I used several JavaScript libraries for the development of this API, for example:

Technical environment: JavaScript, Node.js, Lodash a modern JavaScript utility library delivering modularity, performance & extras, Postman a powerful HTTP client for testing web services, and WebStorm the ultimate development environment for JavaScript and Node.js.

11.2) Connected Car POC

Front-end Developer | April 2018 to July 2018 (4 months) | Halifax, Canada

I worked as a Front-end Developer on a code created using Driver First Framework (DFF) and Next Generation Infotainment (NGI), by General Motors (GM), which is built with modern web technologies (HTML 5, CSS and JavaScript). The code implements a proof of concept (POC) that shows cool features for a car rental application that runs in a native touchscreen interface (no phone required). The POC was created for one of the biggest names in the world in car rental, and it was tested in a GM car using Dev Client.
This POC received a great Survey Feedback, according to results of a survey for the Connected Car POC. Our job was considered excellent, and we provided a great experience for our client. They responded to an IBM Services Project survey and they had an exceptional experience with IBM. Our client is a promoter (scored 9 or 10 on likelihood to recommend).

11.3) Spruce Meadows Fan Experience - Android App

Android Developer | February 2018 to April 2018 (3 months) | Halifax, Canada

I worked as an Android Developer on a mobile fan engagement application:

This is a cool app that allows looking for directions to the closest place to pick up a snack, directions to wash room, or to other places while the user is at Spruce Meadows. The app includes links to live results and activities, which helps the user to plan his/her visit, with a calendar, an interactive map, and a virtual host that helps answering questions.

11.4) Panorama: System for Public Health Jurisdictions

Software Developer | October 2016 to February 2018 (1 year 5 months) | Halifax, Canada

Responsible for maintenance and enhancement of Panorama, an enterprise scale tool for managing preventative and crisis aspects of the Public Health jurisdictions.

10) CGIback to top

Software Developer | March 2013 to October 2016 (3 years 8 months) | Halifax, Canada

I worked for the following clients: TD Bank - Credit Cards, CGI Corporate, CIBC, and a global investment bank.

10.1) CIBC

Software Developer | September 2016 to October 2016 (2 months) | Halifax, Canada

I was responsible for implementing user exit for the Informatica Master Data Management platform using Java, restful request, Json and Oracle database.

Technical environment: Informatica MDM, Java, IntelliJ, Linux, and Oracle Database.

10.2) TD Bank - Credit Cards

Software Developer | April 2016 to August 2016 (5 months) | Halifax, Canada

This engagement consisted of making improvements to a remote banking application that allows branch employees to search for customer credit card statements and authorizations. The following improvements were made: granting access to employees from a different domain, and adding the French translation side by side with the text in English.

10.3) CGI Corporate

Software Developer | December 2015 to March 2016 (4 months) | Halifax, Canada; Fairfax VA, US; Bordeaux, France; and Cardiff, UK

I worked with a team of experts from Delivery Centres worldwide, the CIO's Office, and Corporate Services, developing new tools for ProAction, which is an innovative approach to application services. The goal of the project was to customize the tools inside CGI to achieve an uniform approach for global delivery, supporting common metrics to improve productivity and performance, by implementing an enterprise scale tool for management based on Atlassian JIRA. I was responsible for loading some PSA data from the whole company into the Master Data, via a Java application that I developed. For more information:

Technical environment: Java, Apache Commons, EazyBI, IntelliJ, Jira, Linux, Master Data, Microsoft Azure, PostgreSQL, and Tempo Timesheets.

10.4) CIBC

Software Developer | January 2015 to November 2015 (11 months) | Halifax, Canada

This job consisted of adding new features to a remote banking application from Business Banking Technology, which uses JavaServer Faces, Java Portlets, REST Web Services, and WebSphere Portal Server. The team was located in Toronto, and I worked remotely from Halifax.

10.5) Global investment bank

Software Developer | March 2013 to December 2014 (1 year and 9 months) | Halifax, Canada

I worked for a well-known European investment bank which is a global leader in the capital markets industry. The work consisted of using various elements of Java to implement feeds and integrate back-end solutions that support highly complex pricing platforms and trading systems. I develop a proof of concept to deal with the historic of trades using ElasticSearch. Team members were based in Halifax, New York and London (UK).

Technical environment: Apache Camel, ElasticSearch, Hibernate, IntelliJ, Java SE, Java EE, Jenkins, Jira, JMeter, JMS, Linux, Maven, Oracle Database, Shell Script, Spring, SVN, Tibco Messaging, and Tomcat.

9) Mariner Partnersback to top

Software Developer | December 2011 - October 2012 (11 months) | Halifax, Canada

I worked for the following clients: SHIFT Energy, Bell Aliant, and Medavie Blue Cross.

9.1) SHIFT Energy

July 2012 - October 2012 (4 months)

I worked with SOAP-based web services, which are the back end that integrates the components of EnergyMentor™, a solution that monitors energy consumption in buildings or plants on a real-time basis. I also worked on the front end, using Apache Wicket, CSS 3, and Java.

Technical environment: Apache Qpid, Apache Wicket, CSS3, Linux, Hibernate, HTML5, Java, Jenkins, Maven, NetBeans, PostgreSQL, SOAP, Scrum, Shell Script, Spring, Subversion, Tomcat, WSDL, Web Services, and XSD.

9.2) Bell Aliant

March 2012 - June 2012 (4 months)

I reviewed business requirement documentation and helped to develop the FibreOP™ front-end website, using JSP, jQuery, HTML 5, and CSS.

Technical environment: Ant, CSS 3, Eclipse, HTML 5, IBM Rational ClearCase, IBM Rational ClearQuest, JSP, Scrum, and WebLogic.

9.3) Medavie Blue Cross

December 2011 - February 2012 (3 months)

I worked on an IBM WebSphere Portal project. My job was to develop a mediation module using IBM WebSphere Integration Developer.

Technical environment: IBM WebSphere Integration Developer, IBM WebSphere Portal, Portlets, Rational Unified Process, SOA, SOAP, SVN, Scrum, and WSDL.

8) NTT DATAback to top

Software Developer | June 2007 - June 2011 (4 years and 1 month) | Halifax, Canada

I worked for the following clients: Pason and TIAA-CREF.

8.1) Pason

June 2008 - June 2011 (3 years 1 month)

  • Worked with maintenance and new features of the DataHub application, which is a central data warehouse for drilling data collected at rig sites. This app provides drilling contractors and lease operators with instant access to drilling data and reports and other information on their drilling operations.
  • Designed and developed the Pason API, a system that grants access to drilling data via RESTful-based web services.
  • Worked on the development of new features, performed maintenance on, and provided technical support for Pason Mobile, an application for BlackBerry smartphones that allows the user to view real-time drilling information on active wells.
Technical environment: LAMP (Linux, Apache, MySQL and PHP), Java EE and SE, Python, Pylons, Subversion, and BlackBerry development.


June 2007 - May 2008 (1 year)

The project consisted of upgrading the online enrollment component, with a view to complying with FINRA Rule 2821, which requires the seller of a deferred variable annuity to have a clear understanding of the buyer's financial background and fully disclose all associated risks and benefits. Performed code review to provide support for business analyses, reviewed business requirement documentation, and developed the front end using Struts to support the system's upgrade.

Technical environment: Java EE, Struts, Oracle database, and Oracle WebLogic Server.

7) Motorolaback to top

Software Developer | June 2006 - November 2006 (6 months) | Jaguariúna, Brazil

I worked for the project Warehouse Management System, and was responsible for the Information Manager module which was developed using Perl, Java, and Struts. The data persistence was performed on an Oracle database. This module is used by production managers in order to have more control in warehouse and production lines, as a support for their decisions. The users were responsible for QA during the development, following some of the Extreme Programming rules, and allowing me direct and constant contact with the client.

Technical environment: Linux, Perl, Java, Struts, Oracle, PL/SQL, JavaScript, and Shell Script.

6) MRO Software - IBMback to top

Software Developer | November 2004 - April 2006 (1 year and 6 months) | São Paulo, Brazil

I was a member of the first MRO software development team in Brazil. My job was to develop industry specific modules using Maximo, an MRO/IBM framework and product. I was responsible for implementing these modules, which extended across all layers of the framework. The development of the UI was declarative and used Ajax. The business side made use of specific business objects, all of which were based on EJB objects and simple business objects that used remote method invocation. All the development was made using Java EE and Eclipse IDE, and deployed in WebLogic. MRO Software was acquired by IBM.

Technical environment: Java SE, Java EE, EJB, Ajax, Tivoli Maximo, JSP, JavaScript, Oracle, PL/SQL, and Oracle WebLogic Server.

5) Bireme - World Health Organizationback to top

Software Developer | March 1999 - October 2004 (5 years and 8 months) | São Paulo, Brazil

5.1) Web Services: I implemented services for user authentication and services for information retrieval, using Servlet and Java SE.

5.2) Information retrieval: I implemented the algorithm Journal Descriptor Indexing and other algorithms based on vector indexing technique and thesaurus.

5.3) Ministry of Health - Glossary: I was responsible for the total Software Development Life Cycle, that is, conducting client needs assessment, architecture, development, building, installation, and testing. The system was designed for users who want to understand the meaning of some words used by the Ministry of Health. The user can make suggestions of new terms, or ask for deletions or modifications. Using the system the manager can decide which suggestion to accept. The system was developed using Servlets and JSP, based on MVC pattern. The queries to the database were made using HTTP protocol through a distributed system. In order to reduce the time of communication between the database and the system, I developed a cache for the queries.

5.4) Web sites: I worked as a developer on the server and client side of the following websites: The Cochrane Library and the Portal of Journals on Health Sciences.

5.5) DeCS - Health Sciences Descriptors: I was responsible for the total Software Development Life Cycle: conducting client needs assessment, architecture, development, building, installation, and testing. Articles in Portuguese and English:

Technical environment: Java SE, Java EE (Servlet, JSP), JMeter, Jakarta Commons, Ant, CDS/ISIS, JavaScript, XSD, XSLT, SQL, Apache, PHP, XSD, Linux, Shell Script.

4) UNDP - United Nationsback to top

Consultant | January 2002 - July 2002 (7 months) | Brasília, Brazil

I worked as a consultant for the Ministry of the Environment, evaluating the Brazilian Net Information about Biodiversity (BINBR) and making an analysis of the information architecture, hardware, access statistics and database. The aim of this report was to gather details that later would be used by the Ministry of Environment in its decision regarding the future of the project.

Technical environment: Linux, Weblog File Analyzer, AWStats, and Analog.

3) Manchester Visualization Centre - The University of Manchester (UK)back to top

Programmer | June 1998 - September 1998 (4 months) | Manchester, England

I was responsible for migrating a MAVIS module from a version based on software AVS5 to the version based on software AVS/Express. I used the C language and Silicon Graphics stations. MAVIS, the Molecular Animation and VIsualization System, is a Molecular Graphics display and manipulation package designed specifically to interface to many popular computational chemistry codes.

Technical environment: C, Silicon Graphic, Unix, AVS Express.

2) Biological Computing - UNICAMPback to top

Researcher | August 1996 - May 1998 (1 year and 10 months) | Campinas, Brazil

At State University of Campinas (Unicamp) I had a two year academic project scholarship, whose aim was to create algorithms to solve problems in the comparison of character sequences with a general formulation and available on the web. It was an academic project and my supervisor was Professor João Carlos Setubal. Article:

Technical environment: C, C++, Sun Solaris, Unix, and cgi-bin.

1) IMECC - UNICAMPback to top

Researcher | January 1992 - December 1992 (1 year) | Campinas, Brazil

At State University of Campinas (Unicamp) I received a scholarship to work on a one-year academic project whose aim was to study Paraconsistent Logic, from both a theoretical and a practical point of view. As part of the project, I also studied Computability (using the book Computability: Computable Functions, Logic, and the Foundations of Mathematics ), Set Theory, and Classical Logic. My supervisor, who is also one of authors of the aforementioned book, was Professor Walter Carnielli.