|
Resume
Jeremiah
W.,
BIOGRAPHY
| |
|
|
Jeremiah was a founding member and a veteran of
Amazon.com’s Database Systems team. He was one of the original
architects of Amazon.com’s IT infrastructure and a top level
Amazon.com escalation point for Oracle problem resolution. In
addition to his extensive database administrator expertise, Jeremiah
is a regular lecturer and author at industry and user group
conferences. Jeremiah has been honored by Oracle Corporation as
one of the first five Oracle 9i Certified Masters. On numerous
occasions Jeremiah has been interviewed and featured in the Wall
Street Journal, Information Week, Oracle Magazine and Select
Magazine. His professional areas of interest include high
availability theory, massive systems concurrency - scalability, rapid
incident recovery and systems internals. Throughout Jeremiah's many
years of professional IT experience he has always been
customer-focused.
|
Expert IT Skills
-
Product
Oracle 6.0.22 – Oracle 10.1.0,
SQL*Plus, SQL*Loader, Export/Import, RMAN, etc.
Precise SQL
BMC Patrol
GNU tools
HP ServiceGuard
-
Platforms
Linux 2.1 – 2.4 and GNU tools on Intel
HP-UX 64-bit 11.00 – 11.11 on HP 9000-series servers
Compaq Tru64 Unix (Digital Unix/OSF) 4.0B – 4.0F on Compaq (DEC) Alpha
Vax/VMS on DEC Vax model 11
-
Programming Languages
Perl
PL/SQL
Oracle Certifications
-
2001 Oracle 9i
Certified Master (Hon.) Oracle Corp
.
-
2000 Oracle Internals Training (Oracle Support CoE)
-
1999 Hewlett-Packard ServiceGuard Cluster training, HP Education
-
1996 SAS Certification, SAS Institute
Education
-
1993 Bachelor of Arts (BA) International Studies / East Asia, Earlham
College, Indian
(US
News and World Report second-tier ranking)
-
1992 Chinese Language Certificate, Nanjing University, China
Employment History
-
Sep. 2003 – Nov. 2003
Amazon.com
Seattle, WA Database Administrator,
Technical Lead
-
Sep. 2002 – Sep. 2003
Amazon.co.uk Slough, UK
Database Administrator,
Technical Lead
-
May 1997 – Aug. 2002
Amazon.com Seattle, WA
Database Administrator,
Technical Lead
-
Jul. 1995 – May 1997
CompuServe Seattle, WA Database
Administrator, Programmer
-
Oct. 1994 – Jul. 1995
LaserDirect Kent, WA
Oracle Programmer
-
Oct. 1993 – Oct. 1994
Earlham College Richmond, IN
Oracle Programmer
-
Sep. 1992 – Aug. 1993
Earlham College Richmond, IN
Cabling Specialist
-
Sep. 1991 – Aug. 1993
Earlham College Richmond, IN
System Operator, Helpdesk Staff
-
Nov. 1987 – Aug. 1990
MetroVideo Wellesley, MA Machine Vision Technician
Experience Details
Amazon.com
My greatest professional experience
Ninety percent of my IT knowledge comes from my involvement with Amazon.com.
My interest, drive and skills in IT prior to my employment with Amazon.com
were miniscule in comparison to today. I cannot overstate the intensity of
my experiences with Amazon.com, including 72-hour straight crisis management
sessions and many nights spent on the floor of my office, or worse, at the
keyboard. I have scooped water into buckets in a flooded machine room,
killed the ventilation system for our offices to prevent tear gas being
sucked in during anti-WTO protests, and managed a critical media recovery
during a building evacuation. Working for Amazon.com has been an intense and
draining experience. Through my involvement with Amazon.com, I have been
inspired to become a true industry activist, speaking at conferences,
working on publications, and actively participating in mailing lists and
newsgroups.
The first DBA
I was the first DBA hired at Amazon.com, during the company’s pre-IPO
period. Prior to my employment, the company’s databases were managed by a
handful of software developers. I established the Database Systems group. I
played a key role in building the group, which now numbers 40 employees, and
handles all design, modeling, systems engineering, database administration
and systems administration for Amazon.com’s database systems. I have
probably interviewed over 300 candidates since being hired. Among the key
values I tried to impart to the group are:
Using intelligence over procedures
-
Hiring smart people rather than focusing on
experience
-
Retaining group responsibility for and expertise
in the whole system (programming standards and API, data model,
application design, schema, database operations, software, systems
administration, hardware design, network, etc.).
-
Understanding system internals
-
Developing a close working relationship with the
upper-levels of Oracle’s development and support organization (BDE/DDR,
development leadership).
Scaling and availability
From the beginning, the clear challenge at Amazon.com has been achieving the
dual goals of scalability and availability. These goals were made more
challenging by three years exponential growth, a rapidly changing
application set, and hundreds of Oracle software defects that were uncovered
by our unusual load characteristics. During my tenure, the company has grown
from:
-
One Amazon.com website to 50 websites, including
borders.com, toysrus.com and target.com
-
Two Oracle instances to over 150 Oracle
instances
-
200 employees to thousands of employees
-
200,000 customers to over 50 million customers
-
50 orders per minute to thousands of orders per
minute
-
One country to six countries
-
One product line to hundreds of product lines
As a result of these challenges, I developed
skills in a variety of areas:
Standby database
-
I developed scripts that allowed planned
failovers and failbacks to be achieved without reinstantiation of the
standby. Also I developed techniques that reduced the overall failover time
to less than two minutes.
-
I developed techniques for maintaining a standby
that reduced the amount of DBA intervention necessary to maintain it. These
techniques included:
Intelligent exception-handling log
application scripts
-
Automatic datafile create capability
-
Intelligent monitoring of nologging activities
on the primary and appropriate file refresh on a file-by-file basis.
-
Zero downtime instantiation using hot backup
mode and network copy.
Clusters
Shared-nothing architecture
Availability tiers/factoring
Software design for availability
Replication (multimaster and other)
Shared Server (MTS)
Application caching strategies
Designing to “solve the problem” rather than
to “use the product/feature”
-
Seeking the solution to a problem, rather than
evaluating random “products”
-
Challenging gratuitous use of in-vogue languages
and features
Wait and resource-based tuning strategy (v$session_wait,
v$session_event, v$sesstat)
-
Overall philosophy that the most important
measure of scaling and availability is how long it takes to provide the
results.
-
Subsequent breakdown from the client-level,
through the application, service and the database (v$session_wait,
v$session_event, v$system_event), of time spent making requests.
-
Focus placed on largest time chunks and how to
reduce them through novel approaches.
-
Secondary focus on resource statistics and query
optimization as tools to reduce time spent per unit work.
CPU, memory and execution statistics as recorded by v$sesstat
and v$sysstat.
Query execution plan and optimizer tuning (histograms)
-
Timing using empirical sampling tools such as
Precise SQL
-
Whole-session analysis using 10046 trace and
parser such as tkprof or homegrown.
Rapid problem solving and crisis management
skills
-
Development of problem-solving bailout rules
-
Required diagnostic steps before bounce
-
Clear escalation and collaboration plan for
major incident problem solving
“Mission Critical” is my middle name
-
Truly enjoy the heat of troubleshooting major
problems
Stability through the CBO
Traditional and novel recovery strategies
-
Single-table point-in-time recoveries
-
Logminer backout of user “oopses”
-
Faster recovery through recovery tuning
Resource and time-saving backup strategies
Management of issues within Oracle Support
Understanding of what to collect for Oracle support
-
Systemstate/hanganalyze dumps for resource
pileups that cannot be untangled via the dynamic performance views
-
Errorstack(debugger backtrace)/strace/truss/tusc
of processes that are spinning but not doing work
-
Errorstack on error number of sessions
encountering error but no evident reason why
-
Numerous other dumps as listed in oradebug
dumplist.
Extensive experience escalating and
managing issues within Oracle Support
High working efficiency
Maximized productivity through use of time-saving Unix shell features
in bash and zsh
Platform agnostic
Happy to use MS or Unix platforms interchangeably or interoperatively
Other skill areas developed at
Amazon.com
-
Basic system administration and networking
skills in Compaq Tru64 (OSF), HP-UX, Linux and Solaris
-
Logical Volume managers and “raw” datafiles
(Compaq/Digital LSM, HP-UX LVM, Veritas Volume Manager)
-
Asynchronous I/O
-
Basic Oracle Financial Applications experience
(patches, concurrent manager)
-
Oracle Networking (multiple listeners, multiple
interfaces, failover, round-robin)
-
Table partitioning
Previous Experience Details
CompuServe
I started out with SPRY, producers of “Internet in a Box.” The company
was eventually bought by CompuServe, and re-designated the CompuServe
Internet Division. I was part of a group of six who built custom corporate
web applications and scalable websites for the earliest web presences of
Oracle Magazine, United Stationers and others. We created end-to-end
solutions, including database, C, C++ and Perl CGI, server software,
hardware and hosting. The greatest skill I gained at CompuServe was how to
program in Perl and perform basic database administration tasks (install,
configure, start, stop, backups, basic tuning and optimization). I was the
only DBA in the group.
LaserDirect
LaserDirect was a “Direct Marketing” firm. They used Oracle to generate
massive promotional mailings. In essence, I was responsible for a variety of
projects executing the requirements of marketing campaigns, extracting names
and addresses, and generating large numbers of mail pieces using large
service bureau printers. At LaserDirect, I was introduced to Oracle v7.x,
and honed my skill in query tuning, PL/SQL and SQL*Plus formatting features.
Earlham College
My alma mater was the first environment in which I worked as an Oracle
professional. After graduating, I was invited to apply for a position as an
Oracle programmer. I jumped at the opportunity, and spent over a year
working on the college’s administrative computing systems, which are
Oracle-based. I gained excellent mentoring from mature professionals in the
optimizer, SQL, SQL*Forms, SQR and application design. Before graduation, I
held a number of positions within the Computing Services department as a
student employee, including networking specialist and helpdesk staff.
|
|