Andrew J. Reitz
Objective
Experienced software engineer with 20 years of expertise in UNIX systems,
networking, and programming, seeking to improve the developer productivity for
companies that leverage technology.
Skills
- UNIX systems including Linux, macOS, FreeBSD, and Solaris
- Programming in Ruby, Python, shell, Perl, Java, Go, and C
- Data networking including TCP/IP, Ethernet, VLAN, Routing, Firewall, NAT, and DHCP
- Tools including Jenkins, Review Board, puppet, git, Confluence, Jira, GitHub Enterprise, AWS, and Pants
Experience
Reddit Inc. |
San Francisco, CA |
8/2023 - present |
During my tenure on the Release Infrastructure team at Reddit, I played a
key role in stabilizing and improving the GitHub Enterprise Server
installation. I accomplished this by establishing a staging cluster that
mirrors production, developing automation for major version upgrades, and
successfully executing three major version upgrades. Prior to these
improvements, GitHub upgrades were daunting, often resulting in excessive
downtime and significant challenges for the team. Now, upgrades are
rigorously tested before rollout, and they are installed efficiently. As a
result, Reddit is not only on a supported version of GitHub Enterprise
Server but can also leverage the much-desired Merge Queue feature, which I
integrated into Reddit’s key frontend repository. This involved
reworking aspects of the CI builds to better align with Merge Queue and
creating comprehensive end-user and administrator documentation.
I also led the rollout of GitHub Copilot, designing a self-serve
onboarding flow and crafting internal documentation for users.
I enhanced transparency and internal communication within the team by
pushing to open our Slack channel for company-wide visibility, initiating a
devx-notes@ email list for sharing meeting notes with vendors and
stakeholders, and consistently posting daily work updates in Slack. The
quality and level of my work has culminated in a promotion to Staff
Software Engineer.
|
Stripe Inc. |
San Francisco, CA |
1/2016 - 8/2023 |
In my 7.5 years at Stripe, I served as a senior engineer focused on
ensuring Stripe’s engineers could write code with velocity and
safety. I started off helping to maintain Stripe’s Continuous
Integration (CI) system, developer environment, and source control (SCM)
systems. Over time, as the company grew, I focused more on Stripe’s
core SCM and Code Review tooling and the integrations between these systems
and CI.
I joined Stripe as part of an experimental batch of SREs, but my role
and body of work were indistinguishable from other software engineers at
the company. During my time at Stripe, I helped to maintain and push
forward various tools used by engineers internally. I helped the company
grow by completing over 450 interviews, writing design documents, managing
projects, managing customer expectations, working across teams, mentoring
junior engineers (including several interns), and partnering with
recruiting on improving hiring practices. In 2022, I focused on building a
team around code storage, search, and review. This initiative involved
mentoring new members of the team, setting the overall direction, and
leading the scoping, design, and implementation of projects. In addition, I
owned Stripe’s relationship with GitHub, participating on their
customer advisory board, negotiating contracts, and directing Stripe on the
best ways to leverage GitHub’s software.
For over 6 years, I was primarily responsible for the maintenance,
performance, and reliability of the GitHub Enterprise Server at Stripe. I
lead the development of Stripe’s first Merge Queue, which enabled
engineering velocity to be maintained as Stripe grew. I was heavily
involved in developing Stripe’s processes around code storage and
code review. As a key stakeholder in Stripe’s code review system, I
was able to lead the development of several projects focused on improving
code review processes, including the development of a system that could
automate reviews when we could statically assert that a proposed change was
safe. I also directed the migration of over 600 git repositories from
github.com to an internal GitHub Enterprise Server instance.
|
Twitter Inc. |
San Francisco, CA |
7/2011 - 10/2015 |
Software Engineer, Build Team |
4/2012 - 10/2015 |
In April of 2012, I joined a newly formed team at Twitter focused on developer
productivity. During my time on this team, I performed a variety of duties,
ranging from maintaining internal git and Review Board services, maintaining
our use of maven in a large scala repository, and helping to maintain Pants
(Twitter’s homegrown build tool). Along the way, I worked on projects to
convert said scala repository from Maven to Pants, performed critical
integration work to upgrade Pants, and worked on getting Twitter into a
monorepo, with a true monobuild. I also wrote documentation, developed training
courses (that I frequently delivered inside of Twitter), and provided excellent
support to our customers. During this time I worked on several side projects,
including revamping Twitter’s internal people directory which included adding a
feature to support employee recognition.
|
Software Engineer, Release Team |
7/2011 - 4/2012 |
As a release engineer at Twitter, my team was responsible for daily deploys of
Twitter’s frontend Ruby on Rails application. This role entailed not only
performing deploys but also performing light QA, site reliability functions,
and on-call support. I also helped maintain several in-house tools (written in
everything from Ruby, to Rails, to Java). In addition, I was part of a small
team that built out a new test environment and built a complete copy of Twitter
from scratch. This effort involved learning how to install and configure every
layer of Twitter’s stack, including discovering service dependencies, rewriting
config files, and figuring out how to bootstrap the system while including
enough data for the test site to be useful.
|
Sugar Publishing Inc. |
San Francisco, CA |
4/2008 - 6/2011 |
For two years, I was the sole dedicated member of the operations staff at
PopSugar Inc. I was in charge of all aspects of the operation of PopSugar’s web
properties. This included maintaining two different software stacks (one
Java/Tomcat, the other PHP/Lighttpd) in two separate managed facilities. I
built and/or maintained the following: alert monitoring, performance
monitoring, on-call support, build/release, MySQL administration, backups, and
tools for development. Notable projects included: building an environment that
passed PCI DSS audit, a full data center migration, and building alert
monitoring from scratch.
|
Aggregate Knowledge |
San Mateo, CA |
9/2006 - 4/2008 |
As a Systems Administrator and Developer I helped to build out Aggregate
Knowledge’s web infrastructure, including managing Linux and Solaris machines,
performing code releases, building networks, managing in-house IT resources,
and automation programming. Notable projects included: building a new
co-located facility from scratch, crafting a flexible on-call rotation system,
writing custom Nagios plugins, and implementing custom statistics
gathering/graphing scripts.
|
EDS |
Sunnyvale, CA |
4/2003 - 8/2006 |
As a Field Engineer in the Automated Operations business unit at EDS (formerly
Loudcloud, Inc.), I provided advanced support and maintenance of a
state-of-the-art operations system. In this role I supported various legacy
systems, including an automated network device configuration tool that
functioned as part of the Opsware system. As a software developer in Production
Engineering, I was part of a team that built custom software for EDS’ global
operations. This role included writing new functionality in Perl and Java, as
well as refactoring legacy Perl code, promoting stability, code reuse, and
supportability. I also promoted next-generation communications technologies,
including blogs, Wiki and RSS, to promote easier collaboration within the
organization.
|
CCSO, University of Illinois |
Urbana, Illinois |
3/2000 - 5/2001 |
Held the position of research assistant in the Workstation Services Group.
Designed and deployed pilot SunRay project (which required network design,
system integration, documentation, troubleshooting, and ongoing support). I
investigated the feasibility of a unified campus-wide storage system, under the
auspices of the Storage Project Working Group. As part of this effort, I
researched Samba, clustering, AppleTalk integration, and authentication issues.
|
Ameritech Broadband Lab |
Hoffman Estates, IL |
1995 - 1998 |
For four consecutive summers I was an intern at Ameritech and worked on testing
network devices and protocols such as ATM switches, ATM NICs, ADSL CPE, Redback
PPP concentrator, Frame Relay ISDN dial backup, Frame Relay to ATM
interworking, PPP over ATM, and Fax/Voice/Video over IP. I provided advanced
technical support for Ameritech’s initial ADSL trial, including management of
production IP firewalls and direct customer support. In addition, I managed
several UNIX systems, including web, DHCP, and SMTP servers.
|
Education
Masters Thesis
“ The Dynamic Port
Reservation Protocol”. With advisor Robin Kravets, I designed an
UDPv4 protocol to simplify inbound port reservations on NAT gateways,
solving the “NAT traversal” problem for applications.
Last updated: March 27th, 2022
|