Hi! I’m Ian

I write code and make things

Find out more

Java

Most internal software at Amazon is written in Java. I worked on various parts of the digital concessions backend, but my biggest contribution was a highly available global configuration store based on AWS AppConfig. I also did some work on Ajuda, our internal CMS for help content, which is written in Java and Scala.

Python

Python is my go-to language for personal projects; it is quick to develop with, has an expansive library ecosystem, and works equally well on x86 and ARM.I have also contributed to the GamestonkTerminal project, an open source answer to the Bloomberg Terminal that retrieves open-source data about stocks and markets.

AWS CDK

AWS CDK is a TypeScript-based DSL for creating and deploying CloudFormation templates in AWS. Our digital and device concessions backend, Project Karna, uses AWS CDK to define the infrastructure for the backend as code.

AWS Lambda

Lambda is used heavily at Amazon to power internal APIs, and Project Karna was built with Java 11 Lambda functions.

AWS RDS

Migrated our Oracle help content database to MS SQL Server in RDS. Also maintained a PostgreSQL database in RDS for Amazon's global Acrolinx installation.

AWS EC2

Created and maintained a variety of VM instances to host different things, including Windows Server 2012, 2016, and 2019, Amazon Linux (2012 and AL2), and RHEL.

Other AWS services

Since almost everything at Amazon is built on top of managed AWS services, I have experience with more than will comfortably fit in this document. Other than the above, I have used Directory Service, Step Functions, Route 53, CloudFormation, CodePipeline, and S3 in production, and Cloud9, Workspaces, and Database Migration Service in experiments.

Kubernetes

I'm a big Kubernetes fan and maintain a personal cluster to host most of my side projects, including this portfolio website. It leverages ARM64 single board computers including the Raspberry Pi and Jetson Nano, which gives me a unique opportunity to run real ARM64 workloads on hardware I own and can inspect.

OpenFaaS

OpenFaas is the serverless application framework I run on my personal cluster. This portfolio website is an OpenFaaS function, which permits a level of scalability and durability not usually accessible to websites hosted from garages.

PostgreSQL

Since the company-wide migration off of Oracle DB in at the end of the 2010s, Amazon has preferred PostgreSQL for its RDBMS loads. I also created and maintained a (PostgreSQL-compatible) Amazon Aurora Serverless database instance to provide persistence for Amazon's global Acrolinx installation.

Microsoft Windows

Although Amazon is primarily a Linux shop, I maintained Windows servers and an Active Directory domain for the Tridion service while on Carbon Content Solutions team. Over the years I was there, we used Windows Server 2008, 2012, and 2016.

Microsoft SQL Server

After Amazon moved the entire company off Oracle DB, MS SQL Server was (at the time) the only remaining production quality RDBMS supported by Tridion. While on the CCS team, I maintained several MS SQL Server installations (both EC2-based as well as RDS) for use in the various Tridion production and beta environments.

RWS Tridion

RWS (formerly SDL) Tridion is a CMS for DITA content, used at Amazon as the master repository for virtually all help content at Amazon, from AWS documentation, to the help pages of the retail website, to internal documentation for our customer service associates, across all the languages and countries Amazon does business in. I was responsible for creating and administering Amazon's global Tridion infrastructure, including EC2 application hosts, MS SQL Server database hosts, and nightly backups of both to S3.

Acrolinx

ML-powered intelligent assistant for text content editors and authors. Used at Amazon to implement inclusive language programs, ensure consistency of language and terminology, and improve content quality across a very diverse array of content teams on both the retail and AWS sides of Amazon. I was responsible for launching Acrolinx at Amazon and maintaining the server and database infrastructure for the product while on the Carbon Content Solutions team.

Skills

Click the images below to find out more

Java

Python

AWS CDK

AWS Lambda

AWS RDS

AWS EC2

Other AWS services

Kubernetes

OpenFaaS

PostgreSQL

Microsoft Windows

Microsoft SQL Server

RWS Tridion

Acrolinx

Experience

Software Development Engineer (D2 Concessions)

Amazon.com

August 2021 - present

Program Manager (Carbon Content Solutions)

Amazon.com

May 2017 - August 2021

Customer Service Associate

Amazon.com

November 2016 - May 2017

Education

Seattle University

BA Philosophy/Computer Science

2016