Software process improvement consultant and appraiser at Implementum Information Technology Consulting since November 2013
Consultant helping Brazilian Software Organizations to improve their engineering processes to achieve better organizational performance.
Software process improvement consultant for the MPS.BR process improvement model (an equivalent to CMMI) at Implementum (Implementum: http://www.softex.br/wp-content/uploads/2013/07/IMPLEMENTUM-Publicacao_Portal_SOFTEX_21_11_2013-a-21_11_2015_17nov14.pdf).
Software process improvement appraiser for the MPS.BR process improvement model (an equivalent to CMMI) at Implementum (Implementum: http://www.softex.br/wp-content/uploads/2013/07/IMPLEMENTUM_IA_Publicacao_Portal_SOFTEX_29_01_2015-a-29_01_2018_v14jan2015.pdf).
Team Leader (Software Engineering Manager) at Jonah Group from March 2020 to November 2020
Developed a business case for a technology update, which was decisive in justifying a project to remove the legacy technologies that started in October 2020. Defined quality strategy (testing plan template, testing strategy, reviews standards, etc.) suitable to the product, guided the definition of non-functional requirements based on the Product Owner's expectations, streamlined the communication between the support team and the development team, communicated and negotiated impact on other teams’ scope, among other things.
Technologies used are Java EE, Spring, Weblogic, among other technologies.
Team Leader (Software Engineering Manager) at Univeris Corporation from January 2018 to March 2020
Responsible for technical decisions and design, code reviews, technical assessments and estimations, prioritization of technical issues, technical debt management, and legacy migration. I'm also responsible for team-building activities, skill-building, and managing the team members, helping them achieve their professional goals.
Some of the achievements were the definition of complex financial calculation methods, usage of historical data with statistics to better estimate initiatives efforts, introduction of practices to ensure software quality, active participation in the software engineering practices committee, participation in the recruitment of new employees, definition of test plans and risk management plans, provided training in testing techniques, established templates to document business requirements, reduced test automation gaps, defined strategies to save on cloud costs, conducted successful PoCs, identified network vulnerabilities and provided support for higher management to define the corporate mission, vision, target market, and strategies to align with the product roadmap and the software development process, among other contributions.
Some of the technologies I use are Java EE, Java 8 (including lambda and streams), Spring, JBoss EAP 6.4, and MS SQL Server.
Software Architect and Technical Leader at O2 Fund from April to August 2017 (contract while waiting for my relocation to Canada)
Acted as an independent consultant in Software Architect and Technical Leader roles. Designed the whole system architecture for high scalability in a cloud-based environment using REST-based on Java/Spring backend and an OLAP component for data analysis planned together for easy integration and simplified ETL process (O2 Fund: http://o2fund.com/). This was a startup with a very fast-paced environment using all the latest technologies, where I was involved in designing new features and thinking of new approaches that could help boost the company's results.
Director of Software Engineering at Petrobras from August 2012 to December 2016
From January 2015 to December 2016 I worked at the Software Engineering Processes and Methodologies department of Petrobras (Petróleo Brasileiro S.A.: http://www.petrobras.com.br/) with statistical analysis on software engineering process performance to understand and explain projects’ performance, identify performance issues and propose solutions to improve productivity and schedule predictability.
From January 2013 to December 2014, I worked with Software Process Improvement and other initiatives at the Lotus Notes development department to keep 4 to 6 development teams' (around 20 people) performance aligned with corporate performance indicators and objectives by improving our development process. I was responsible for shifting to Scrum, introducing agile practices and quality assurance tasks, resulting in an aggressive reduction of effort spent fixing defects (around 0.3% of men-month hours were spent fixing defects in December 2013 against 14.5% in March). Other goals achieved in the period include 100% of the software being accepted by clients at the first demonstration and effort/cost/schedule estimations accuracy varying in less than 10%, facilitating release planning with high estimation predictability.
System Architect at Portal Kaino from August 2013 to October 2016
Responsible for defining the architecture and development/test/production environments, selecting and integrating components and frameworks, and developing some of Kaino Portal's backend. Kaino Portal is a software engineering process innovation portal developed with the Java EE 7 stack (CDI, EJB 3.1, JSF, and Servlets) using JBoss 7.1.1, PrimeFaces 4.0, JPA, Apache Shiro, OmniFaces, and PostgreSQL as SGBD. It was launched in April 2014 (Kaino: http://kaino.se-er.com/).
Software Process Improvement consultant at COPPE/UFRJ from June 2006 to November 2013
Software process improvement (SPI) consultant for the MPS.BR process improvement model (a Brazilian equivalent to CMMI) at COPPE/UFRJ (COPPE/UFRJ: http://www.coppe.ufrj.br/).
Scrum Fundamentals exam Leader at Knowledge Black Belt from January 2011 to January 2013
Proposed, elaborated, and coordinated the efforts for a Scrum Fundamentals Exam, becoming the exam leader during the time it was available (Scrum Fundamentals Exam: http://www.blackbeltfactory.com/QuestionnaireDefDisplay.wwa?questPublicId=1699) at KnowledgeBlackBelt (KnowledgeBlackBelt: http://www.knowledgeblackbelt.com/). This online certification platform was retired in January 2013.
System Architect at Stefanini from May to July 2012
Worked with design and evaluation of Java systems' architectures and artifacts, building and running proofs of concepts, development team technical leading, active participation in the software architecture organization committee for the Caixa Econômica Federal (Brazilian’s Federal Bank) besides support and guidance on organizational software development process definition and improvement (SPI) based on MPS.BR and CMMI models and Scrum practices at Stefanini (Stefanini: http://stefanini.com/en/).
Java developer at Nabble from April to December 2011
Java developer fixing bugs, providing user support, optimizing advertisement/revenue, and other minor programming projects as an independent consultant for Nabble (Nabble: http://www.nabble.com/).
Technical leader at WorkingMinds from August to November 2010
Technical leader, project leader, and Java developer at WorkingMinds (WorkingMinds: http://www.workingminds.com.br/).
Requirements analyst and system architect at the Computer Science Department of the Federal University of Rio de Janeiro from July 2009 to August 2010
Requirements analyst and system architect at the Computer Science Department at Federal University of Rio de Janeiro (DCC/UFRJ: http://www.dcc.ufrj.br/) on a joint project with Rio de Janeiro State’s Military Police (PMERJ: http://www.policiamilitar.rj.gov.br/) and Rio de Janeiro State’s Research Support Foundation (FAPERJ: http://www.faperj.br/) to build a Java software for weaponry allocation and management control for PMERJ. The software features biometric identification of military personnel as well as a visual identification of the weapons using neural networks.
Requirements analyst and system architect on SMER Project, supported by Rio de Janeiro State’s Research Support Foundation (FAPERJ: http://www.faperj.br/). The project aimed to develop a Java prototype capable of identifying geographic positions of individuals carrying encoded radio transmitters featuring voice recognition besides monitoring troops’ positions by GPS, aiming to facilitate missions in urban areas.
Defined a software process based on Scrum and compliant with MPS.BR’s level G, to be used by the SMER’s team as part of a Software Process Improvement (SPI) initiative. Level G is equivalent to Project Monitoring and Control (PMC), Project Planning (PP), and Requirements Management (REQM) CMMI processes.
Software Process Improvement consultant to Geo System from 2008 to 2009
Consulting for implementing software process improvements (SPI) toward MPS level G (appraised on September 16th, 09) at Geo System Informática (Geo System: http://www.geosystem.com.br/) while working for COPPE/UFRJ (COPPE/UFRJ: http://www.coppe.ufrj.br/). Level G is equivalent to Project Monitoring and Control (PMC), Project Planning (PP), and Requirements Management (REQM) CMMI processes.
Requirements analyst and Java developer at Provayo from January 2009 to June 2009
Built a professional social network in Java EE 5, Spring, Apache Wicket, Maven, and MySQL. Provayo was an NYC-based startup, and I worked as an independent consultant.
Also developed a software development process to be used to develop new features for the application as part of a Software Process Improvement (SPI) initiative based on MPS.BR and CMMI.
Requirements analyst and Java developer at COPPE/UFRJ’s Software Engineering Laboratory from December 2005 to January 2009
Requirements analyst and Java developer at Taba Web at COPPE’s Software Engineering Laboratory (LENS: http://lens.cos.ufrj.br/) using Java EE 5 running on a level E MPS process (equivalent to CMMI level 2 plus Integrated Project Management (IPM), Organizational Process Definition (OPD), Organizational Training (OT) among other processes).
The Estação TABA is a software development environment that supports the execution of activities to be accomplished in a software process by a set of integrated tools and a repository with information collected during the project's process execution (TABA: http://lens.cos.ufrj.br/taba).
The system was developed in Java on JBoss 4.2.2 and 5.0 using JSF (with RichFaces and Facelets), Log4J, EJB 3.0 and JPA, JSFUnit, JUnit, and JUnitB3 for automated testing, having Oracle as target DBMS, but keeping portability to other DBMS.
Software Process Improvement consultant to Vertigo Computação from July 2006 to September 2007
Consulting for implementing software process improvements (SPI) toward MPS level G (appraised in September 2007) at Vertigo Computação (Vertigo Computação: http://www.vertigo.com.br/) while working for COPPE/UFRJ (COPPE/UFRJ: http://www.coppe.ufrj.br/). Level G is equivalent to Project Monitoring and Control (PMC), Project Planning (PP), and Requirements Management (REQM) CMMI processes.
Applied Mathematics Laboratory (LabMA) of UFRJ’s Mathematics Institute from October to November 2005
Java developer of applets (in Java SE 1.4) for an educational project addressed to high school for the Rio de Janeiro state's Educational Secretary at Applied Mathematics Laboratory (LabMA: http://www.labma.ufrj.br/) at Mathematics Institute/UFRJ (IM: http://www.im.ufrj.br/).
System analysis, architecture, and project management consultant to UFRJ's Informatics Student Union from July to October 2005
Consulting on requirements analysis, architecture, and project management to UFRJ's Informatics Student Union (CAInfo UFRJ: http://cainfo.dcc.ufrj.br/) on the development of a Site and a System, both in Java EE, to manage jobs exam competitions for Fundação José Pelúcio Ferreira, UFRJ supporting foundation, based on Tomcat and MS SQL Server.
Java developer at COPPE/UFRJ’s Database Laboratory from January to September 2005
Java developer on the Downstream Competence Management System to manage training, certification, and professional capability of Petrobras (Petrobras: http://www.petrobras.com.br) employees, with Java EE (1.4) technology (EJB 2.1, Struts, JSP and Servlets) and Oracle at Database Laboratory at COPPE/UFRJ.
Requirements analyst and system architect, project manager, and technical leader at Computer Science Department – UFRJ from March 2004 to January 2006
March 2004 to October 2005 - Requirements analysis, architecture, and project definition of an integrated development and research environment of logic and artificial intelligence to the Computer Science Department at UFRJ (DCC: http://www.dcc.ufrj.br/) in Java/J2SE, using UML, MVC2 architecture, automated tests, and design patterns.
March to April 2004 – Lecturing a course to the development team on UML and Java SE. Still on system analysis and modeling.
March to April 2004 – Project's site development in PHP (JPE: http://jpe.dcc.ufrj.br/).
April 2004 to October 2005 – Project management using incremental development model, adopting extreme programming (XP) practices. Project documentation was based on RUP's artifacts.
Requirements analyst and Java developer at COPPE/PESC from January to September 2004
Full-stack software engineer (from requirements level to production) of a selection process management system for M.Sc. and D.Sc. courses at COPPE/UFRJ (PESC: http://www.cos.ufrj.br/) with Java/J2EE initially in Tomcat and JBoss afterward with MySQL database.
Java Developer at UFRJ’s Mathematical and Natural Sciences Center in 2003
Development of a flexible library of mathematical Java applets for educational purposes for the UFRJ’s Mathematical and Natural Sciences Center (CCMN: http://www.ccmn.ufrj.br/).
Project Manager, developer, and Requirements analyst at Micro Informatics Consultancy Junior Enterprise from February to December 2002
Project manager, developer, requirements analyst, consultant, and marketing and public relationship director at Micro informatics Consultancy Junior Enterprise (EjCM: http://www.ejcm.com.br/).