Working at the intersection between development, QA and program management, my team and I maintained, improved and created new systems to help people do their jobs more effectively by providing easily digestible information to the right people at the right time. Focusing around continuous integration / continuous delivery with automation using Groovy, Java, Gradle and Jenkins to move the build/release to a more seamless process with machines handling the grunt work so people can focus on design and decision making.
- Used TDD process to create and maintain Gradle plugin for build orchestration and release automation allowing integration with SCM, Atlassian suite and Jenkins. System handled: Space difference reports, RC publication, Branch difference reports, patch system, process cleaning etc.
- Transformed simple patch process into continuous delivery system integrated with Jenkins, Jira and Confluence with built in promotion and notification.
- Setup automated just-in-time deployment of firefox / chrome browsers matched to selenium driver versions on Windows and Linux with process cleanup ensuring no rogue processes destabilized builds.
- Automated blackduck intellectual property scan, identification and third party notification publication to reduce effort required and avert license issues earlier in development lifecycle.
- Developed scmSynchronizer to work around lack of branch reporting between jira and github enterprise using SCMActivity plugin.
- Developed release engineering team talent via one-on-one mentoring, coaching, demonstrations and setting up third party training.
- With input from management and release team, charted strategic course for Release Engineering team.