I'm a computer programmer by trade, and a member of the Association for Computing Machinery (ACM), but an instigator for organizational change by nature. Despite that fact, part of me still dreams of playing rock, blues, and jazz guitar for a living; I'm a Jimi Hendrix fanatic and a Beatlemaniac. I'm originally from Hampton, Virginia.
From 2005-2010, I helped lead the Testing Grouplet's five-year effort to drive automated testing adoption throughout Google. From 2009-2011, I also worked on websearch infrastructure. You can read details about my Google experience below, as well as my reasons for leaving Google.
Since then, I attended Berklee College of Music and worked for the United States federal government. I've dabbled in independent consulting practice, and am currently leading organizational change as a part of Cvent. You can view a more detailed résumé on my LinkedIn profile, and follow my open-source programming activity via my GitHub profile.
I welcome thoughtful conversations over email at firstname.lastname@example.org or on Google+. My public PGP key is available via the hkps.pool.sks-keyservers.net key server pool, but you can also download the ASCII version of my email@example.com public key.
Please see my Hire me! page for information on retaining my services to help transform your organization.
I grew up in Hampton and Newport News, Virginia, and lived there until 2005 (except for a brief stint in St. Louis in 1998). From 2005-2014, I lived in Silicon Valley, New York City, and Boston.
I hold two degrees from Christopher Newport University: a B.A. in Fine Arts/Theatre Concentration (1997) and a B.S. in Computer Science (2001). While earning the latter, I helped lead a campus protest that resulted in keeping CNU's computer science and environmental science grad programs. Soon after that, my first programming job was with Northrop Grumman Mission Systems in Newport News.
In addition to the technical and historical writing I've done on this site, I've also written posts and articles for other publications. The two most substantial I've written to date are Finding More Than One Worm in the Apple (for ACM Queue and Communcations of the ACM) and Goto Fail, Heartbleed, and Unit Testing Culture (for Martin Fowler's site). You can also check out my ACM author profile page
I've been invited to give several presentations at Meetups and conferences. My current standard presentation, The Rainbow of Death, attempts to connect the dots between the components of my Google experience and the broader themes involving social change in a challenging, divided client when data, facts, and reason alone often prove ineffective.
My main languages currently are Node.js and Bash, though I'm also very comfortable with Go and Ruby. My main languages for years was C++ and Python, and I'm comfortable with plain C as well. My preferred development environment is bash + vim + tmux + git. I use macOS as my base system and run several Linux distributions (Ubuntu, Arch, and Alpine), FreeBSD, and Windows 10 using VMware Fusion. I also welcome any opportunity to play with Docker.
After three years away from the industry, I returned to work for the United States federal government as part of the General Services Administration. I talk about this experience in The Convergence of Wills and other presentations.
From spring 2013 until summer 2014, I attended Berklee College of Music in Boston, completing four semesters. Since the record deals weren't pouring in, once I was recruited by the government, I left Berklee to reactivate my programming career.Despite leaving Berklee behind, as you can see, I still yearn to strap on a Stratocaster and make things happen:
In my 20% time, I participated in and eventually led the Testing Grouplet and the Fixit Grouplet, both of which had an impact on internal development tools and processes; I organized several testing- and tools-related Google-wide Fixits; and I was an early author and poster of Testing on the Toilet.
I've distilled these experiences into my signature presentation, The Rainbow of Death.
I started one Google-based open source project, Pyfakefs, though I haven't been involved with it since I left the company.
Prior to Google, I worked on shipboard navigation and port monitoring systems for Northrop Grumman Mission Systems in Newport News, Virginia. That's where I cut my teeth on C++ and Python, and began having success with automated (unit) testing.
I also attended Berklee, extremely briefly, once before...
That was immediately after graduating from Bethel High School in Hampton, Virginia, right about the same time when Nirvana was deposing hair metal from its throne. And this is how it all started: