Gregory K. Look
- Operating Systems: OS X, Linux (Gentoo/Ubuntu/CentOS), BSD
- Web Frameworks: Yada/Ring, Django, Rails
- Build Systems: Leiningen, Make, Rake
- Configuration Management: Ansible, SaltStack, Puppet
- Infrastructure Management: Terraform, CloudFormation
- Version Control: Git, Perforce, Subversion
- Databases: PostgreSQL, MySQL, Accumulo, DynamoDB
- Cloud IaaS: Extensive experience with AWS, some with Azure
Amperity :: Principal Software Engineer
Crosscutting :: Oct 2017 - Present
Amperity :: Senior Software Engineer
Crosscutting :: Jun 2016 - Oct 2017
- Shortly after starting, wrote a new build tool
to better handle a monorepo for Clojure projects.
- Built the company monitoring and alerting from the ground up, establishing best-practices
for instrumentation and alarm configuration
- Took ownership of the automated test suite and set up a continuous-delivery system to
reduce developer time-to-ship.
- Created and deployed a central workflow management system to orchestrate data flows
across many tenants on a daily basis.
- Built a query abstraction service to simplify a migration away from a problematic technology
choice, which later allowed us to self-host a version of another backend.
- Planned and executed a migration to spin up a copy of the infrastructure in
a second cloud provider to improve resilience and tenant locality.
Counsyl :: Product Development Engineer III
Platform Engineering :: Dec 2013 - Apr 2016
- In the first few months identified a major security flaw with stored credit
card information and coordinated a migration to Stripe to eliminate the risk.
- Managed the company AWS accounts and led projects to inventory and control
costs and improve security.
- Converted the main website build and deployment system from a limited and
manual process into a fully-automated system using continuous delivery with a
self-hosted GoCD stack.
- Wrote a custom CI service on short notice after the company we were using was
acquired and stopped supporting their product.
- Reduced the full-test feedback loop for developers from 4+ hours to 30 minutes
by adding parallelism and auto-scaling to the CD/CI stack.
- Established best-practices around writing new systems in a service-oriented
architecture, including testing, releasing, and monitoring applications.
- Replaced an ad-hoc system of notifications via email, Nagios, and NewRelic
with a unified monitoring stack utilizing Tensor, Riemann, InfluxDB, and
Amazon.com :: Software Development Engineer II
Risk Platform Services :: Aug 2008 - Jun 2013
- Designed, implemented, and supported highly-available distributed systems
used by internal business teams in the anti-fraud group.
- Updated and rewrote old code to reduce technical debt and improve service
performance, scalability, and reliability.
- Owned a critical data-collection piece of the publicly-facing Amazon website.
Granted patent 8,555,384 for new techniques to help identify fraudulent users.
- Built systems to store massive quantities of data and answer queries on key
features of the data within tight SLAs.
- Orchestrated a live upgrade of a critical system from a single Oracle database
to a sharded data store with no downtime or data loss.
- Worked with map-reduce frameworks to perform intensive offline calculations
across large amounts of data.
- Wrote services to train machine learning models from stored data and provide
real-time scoring to client services.
- Provided a web-based interface to give high-level control over the
machine-learning system to non-technical users.
Advanced Micro Devices :: Engineer in Validation and Testing
BIOS Verification :: Jul 2007 - Jul 2008
- Performed extensive test suites on new hardware and BIOS images to verify
- Owned a set of computer subsystems which maintained test case coverage of
related BIOS features.
- Worked with designers and developers to drive bugs and issues to closure.
- Automated several testing procedures to reduce engineering load.
Carnegie Mellon University :: Software Developer
Field Robotics Center :: Feb 2005 - May 2006
- Wrote software for wireless PDA devices to share local area data to give
firefighters a high-level view of the situation.
- Developed a plugin to integrate data from a collection of diverse sensors
to generate a unified command and control map.
- Performed code reviews of other groups' code bases.
- Managed the center's version control systems, successfully migrated the
entire codebase from CVS to SVN.
Carnegie Mellon University :: Class of 2007
- Bachelor of Science in Electrical and Computer Engineering
- Bachelor of Science in Computer Science
Completed a double-major in four years, combining computer hardware and software
courses. Notable capstone projects include a decentralized file-sharing system
and designing a small CPU with the architecture laid out in silicon.
Activities & Interests
Personal programming projects
Burning Man camp founder and leader
- Contact/fire staff spinning
- Nutrition/exercise/quantified-self enthusiast
- General autodidact