Technical Lead2013 - PRESENTEcxus High Technology
Technologies: Java, Spring, Node.js, Ionic, Cordova, AngularJS, Amazon Web Services
- Guided a team of developers in rewriting a legacy ERP system developed for Hotels called Automo. We aimed to adapt the solution to the modern needs and keeping it refactorable. Using Spring MVC, AngularJS, Bootstrap and WebSockets, the team could deliver a system that fits the needs of a whole set of clients, providing a set of intelligent reports and ensuring scalability and a completely responsive web interface.
- Developed an app—named Mobee—that offers to the hotel guest the control of the whole automation system of his apartment. In addition, it provides access to many hotel services such as digital menu, check-out and satisfaction survey, all directly from the guest's mobile phone.
- Implemented an effective continuous integration process using tools like Git (with Gitflow), NPM, Maven, Nexus, and Jenkins so that the team could minimize the effort to keep software stable and save development time. The team actually reduced the release life cycle by half and could improve substantially their productivity.
- Developed a solution that centralizes the license control of all software provided by the company. The solution provides a REST web service (built on top of Node.js and Express) that integrates all instances of installed systems, receiving license update requests and issuing licenses automatically according to customers' financial situation. This solution has completely automated license management, saving resources and eliminating the likelihood of error or fraud.
- Developed a system that integrates all automation modules available in a TCP/IP or RS485 network and provides a REST API that exposes the modules commands and state. An event-based communication protocol for integration was defined, keeping the system reactive and allowing real-time monitoring.
- Implemented an Artifactory server to be used as a local Maven and NPM repository and also to store snapshot builds delivered by Jenkins on continuous integration workflows.
Software Architect2012 - 2013Indra Software Labs
Technologies: Java, Spring, Apache Wicket, Hibernate, Node.js, AngularJS, Backbone.js, Express
- Redesigned legacy systems with the purpose of reducing the technical debt, providing APIs for web service integration and decoupling the presentation logic from the implementation of business rules.
- Taught courses and made talks with the goal of spreading good practices such as agile development, continuous integration and TDD within the teams.
- Worked directly with clients as a consultant, assisting in the definition of requirements and helping to them to take the best technical decisions.
- Coded the presentation layer of the internet banking system of one of Brazil's biggest banks.