Anthony J. Foiani

[A printable, one-page summary of this resumé is available in A4 or US Letter format.]


Contact

Email: anthony@foiani.com
USPS: 414 Kehoe Ave / Half Moon Bay, California, USA / 94019
Phone: +1 650 296 9563
Also available via Google Hangouts / Meet, and Zoom


Introduction

My most recent role was as a Senior Site Reliability Engineer at YouTube / Google. I enjoyed working with their amazing technology, learning the ins and outs of global service provisioning, and dealing with incidents (managing and mitigating them as they occur, and then running a postmortem process to ensure they never fail that way again).

For me, though, the most fulfilling part of the job was the educational and mentoring aspect. Google was all about scaling sub-linearly -- having more impact than a single person can have with their own action. I found teaching others to be a wonderful example of this: I can't do everything, and I can't write all the tools to do everything, but if we have enough smart engineers, we can get closer to that goal.

I also enjoy working with problem space owners -- "application domain experts" -- and helping them translate their needs onto available technology, or finding out if there are gaps where we need new technology.

My favorite roles have combined those two features: education, and expertise. I very much enjoy researching and investigating a system in depth, and then finding ways to help others within the company apply that technology stack to solve their problems. (And I make sure to learn the complementary systems, so I know when I can honestly recommend some *other* system to teams. I'm not about growing my "turf"; I'm about using the best technology for the job.)

I'm currently based out of the San Francisco Bay Area, but I'm open to many different locations, both within the USA and abroad, and also remote work opportunities.

Within the USA, I'd be open to almost any of the typical tech hubs -- Seattle, Portland, Bay Area, San Diego, Denver, Austin, etc. I haven't spent as much time on the East Coast, so I don't have strong opinions there, but I'd probably be ok anywhere I can live somewhere with trees around. :-)

I can speak a bit of German, and am comfortable everywhere I've been in Western Europe.

(Regardless, I expect most work to be remote through most of 2021, so discussions on eventual location can probably be deferred.)


Skills

Instruction and Consulting

I have a knack for extracting requirements from users and managers; an ability to help different parties gain a shared understanding; the technical background to understand systems deeply; and a passion for encouraging the best solution for each situation while minimizing overall complexity.

Expert:
Mentoring: new employees, or internal transfers
Creating Training: research, development, presentation, training-the-trainer
Facilitating Communication: understanding each party individually, then helping create a mapping between them
Promoting Best Solution: learning the strengths and weaknesses of multiple systems, then helping other groups evaluate their needs against those systems, encouraging compromises to reduce final system complexity
Skilled:
Extracting Requirements: user studies, similar systems, design patterns

Computer Languages

Expert:
C++ (+ Boost), Java, Perl, C, Shell Scripts, Makefiles, Regular Expressions
Skilled:
Python, JavaScript, Oracle SQL (+ DDL Optimization), Emacs-Lisp, awk, sed, VBA
Some Experience:
Go, Tcl, Fortran (and many more...)

Operating Systems and Platforms

Expert:
Linux (1995+): userspace, kernel, and embedded
U-Boot firmware loader
Skilled:
Containers / Virtual Machines
Microsoft Windows (3.1+): power user, some programming
Other Unix-derived systems: Solaris, SunOS, HP/UX, AIX
Mac OS X (2001+): power user, unix-mode programming
X11 (1988+): power user, some programming
Older mainframe, micro, and embedded systems

Data Representation and Interchange

Expert:
Protocol Buffers, XML, JSON, HTML, ASN.1, UTF-8, CSV
Skilled:
Character Encodings, Compression Algorithms and Archive Formats, PNG, SVG, PDF, PostScript, LaTeX, RTF, nroff

Digital Security

Skilled:
PKI (X509, CA)
Smart Cards / Crypto Tokens / U2F
Secure Shell (SSH)
OpenSSL (command-line and API)
CMS, ASN.1

Embedded Development

Expert:
I2C Bus
Toolchains Creation and Use
Linux Kernel customization
Flash Memory (NOR vs NAND, MTD / UBI etc)
Realtime Constraints
Hardware Interfaces
Skilled:
Boot Loader
Device Tree
Serial Ports (RS-232, RS-485, etc)
Oscilloscopes / Logic Analyzers

Programming Techniques

Expert:
POSIX Threads
Test-Driven Design
C++ RAII
Google RPC
Profiling / Optimization (both low- and high-level)
Skilled:
Design Patterns
Pair Programming
Input Fuzzing
Disassembly / Reverse Engineering

Source Code / Configuration Management

Expert:
git, SVN, Perforce (g4)
Skilled:
Mercurial (hg), CVS

Networking Protocols

Expert:
IP (TCP, UDP), BSD Sockets API
HTTP, Telnet, FTP
Skilled:
SSL/TLS, SSH, FTP, NTP, TFTP, SNMP, SMTP

Google Internal Tools

Expert:
Production Deployments: GCL/BCL, Borg (especially Dedicated Machines and SSD), GSLB, cluster migration, capacity planning;
Monitoring: GMon, Monarch, Mash, Viceroy, BorgMon, Nebgua;
Data Storage: Colossus, Effingo, Placer, BigTable, Piper;
Data Analysis: GoogleSQL (Dremel, F1), gqui;
Search Technology: SuperRoot, Laelaps, Muppet, Raffia, Union, ST-BTI, FBM
Skilled:
KeyStore, Piccolo, Spanner (especially Spanner Queues / Manifold)

Specialties

Skilled:
Nuclear Safeguards Instrumentation (Neutron Counting hardware and software)
Open Source licensing
Journeyman-level Electronics
Some skill with:
Computer Graphics
Basic competency in German

Ancient Skills

Many older skills have been moved to another document.


Experience

Google Inc

Mountain View, California, USA; October 2013 — July 2020

YouTube Trust & Safety SRE

Original Tech Lead for the Site Reliability Engineer (SRE) team formed to support and productionize the YouTube Trust & Safety tools (for managing abuse, fraud, child safety, etc).

YouTube Search & Discovery SRE

First member of the SRE team dedicated to managing YouTube's “content discovery” systems: Search, Personalization, Watch Next, Recommendations, etc.

Internal Consulting, Educating, Mentoring, and Interviewing

This wasn't a distinct role; instead, it calls out the areas where I ended up specializing and providing extra value to my teams.

Foiani LLC

Albuquerque, New Mexico; July 2009 — October 2013

Universal Non-Destructive Assay Platform: Software Architect / Implementor

Yahoo! Inc.

San Diego, California; October 2004 — July 2009

Worldwide Data Distribution System: Architect / Implementor

Mobile Entertainment Provisioning: Architect / Implementor

Backoffice Data Reorganization: Manager / Architect / Implementor

Miscellaneous Knowledge Sharing

MusicMatch.com

San Diego, California; November 2001 — acquired by Yahoo! in October 2004

Digital Audio Processing Engineer

Inherited and extended a distributed audio processing system:

Database Application Programmer

Streaming Digital Audio Engineer

Miscellaneous Knowledge Sharing

Previous Jobs

Older entries have been moved to the historical file.


Publications

The Perl Journal


Education

Bachelor of Science

Bachelor of Science in Computer Science and Math, with a minor in German.
New Mexico State University
Las Cruces, New Mexico
Date of graduation: May 1995
GPA: 3.00 out of 4.00


Activities

Community Contributions

Groups

I follow and contribute answers to many lists, including:

Projects

I contribute answers and a few patches to many lists, including:


References

References are available upon request.