Puppet helps enterprises modernize, manage and bring into compliance hybrid infrastructure through continuous automation.
• Actively working on the Puppet Agent, an open-source collection of software that is required for puppet and its dependencies to run. This includes Puppet, Facter, and other Puppet software, but also vendored dependencies like Ruby, cURL, OpenSSL, and more.
• Participate in all stages of development, from attending product meetings, planning and implementing features, code review, testing and integrating, to releasing on a monthly cadence and preparing demos of the team’s past work.
• Work on automating testing & shipping Puppet on more than 40 platforms and counting. Add support for new platforms by creating virtual machine templates and making them available to our scheduling service which provides disposable VMs. This includes building VMs with Packer and provisioning them with Puppet for ESXi, EC2, and our in-house service which handles devices and virtualization technologies on exotic architectures not supported by vSphere (AIX LPARs and Solaris LDOMs).
• Worked on rewriting PE Client Tools in Go, a set of command line tools to access Puppet Enterprise services from a workstation that might or might not be managed by Puppet. Recurring responsibilities include maintenance and releasing on a quarterly cadence.
• The majority of my work is open-source, which means regularly interacting with our community through various channels of communication (Slack, GitHub, IRC, mailing lists). Community responsibilities include reviewing patches/pull requests and holding office hours on a monthly cadence.
• Contribute and submit patches to upstream Puppet projects that are open-source, such as Ruby, JRuby, cloud-init, Augeas, Chef gems.