I build software based solutions to hard problems, including the problems I face while building software.I help developers build quality software quickly with automation. My background includes 20 years of working in and improving jvm based development environments. Development efforts ranged from improvements to build tools (maven), linters (checkstyle, pmd, spotbugs), APT (spring annotation APT processor, and takari's apt compiler) compiler extensions, testing libraries and techniques including Test driven development with junit, testng, and mockito, and behavior driven development with cucumber-jvm and webdriver and embedded web servers. Continuous integration with GitHub actions/travis-ci/drone.io, and automatic releases to repositories like nexus are some of the tools I use to empower developers with the fast, accurate, and automated feedback.Finally, meta-programming and dependency injection with spring framework/CDI/guice or Dagger allows for extremely loose coupling and late binding that enable true agility in an IT organization. I've invested heavily in mastering these tools because as a software developer I trust machines to check my software for adherence to my desired architecture and correctness more than I trust other developers or myself.Hacker and teacher, just as happy building a solution to a difficult problem, or helping engineers grasp difficult concepts. Fan of pair programming and kanban boards.In order to expand my skill set and help others outside the jvm based community to benefit from learnings of that mature community I've spent the last couple years working on tooling in Diem project, include code coverage, testing, automated docker testing and deployment in github actions, and more recently have worked in a smattering of languages including rust, python, c++, and typescript.Since moving on from Meta, have supported Android OS development at Google by accelerating IDE based workflows primarily by bringing deviceless testing in to Android OS to facility faster and more accurate software development for AOSP and Pixel teams at Google and Android OS Partners with Robolectric.
Listed skills include Maven, Spring, Hibernate, Java, and 13 others.