Resume for Kirk Strauser

19 Powers Court, Alameda, CA 94501 - 402-640-6746 - kirk@strauser.com
http://www.linkedin.com/pub/kirk-strauser/0/8b/263

Objectives

An architectural role in Software Development.

Qualifications

Led the design, development, and deployment of scalable, heavily used customer facing features.

Created and maintained both multiprocessing and clustered fault-tolerant Python services.

Experience

Languages: Python, SQL, C, shell scripting, JavaScript
Technologies: Flask, Pyramid, Django, NoSQL, MongoDB, Cassandra, PostgreSQL, AWS, Node.js
Operating Systems: Several major Linux distributions, FreeBSD, OpenBSD

Employment

Coverity

Architect, R&D DevOps
August 2014 - present
San Francisco, CA

Assumed ownership of a server farm that builds, tests, and packages the company's software on several different hardware and software platforms.

Drove the adoption of solid engineering practices to reduce unplanned downtime and manual intervention.

Initiated and drove the transition from manual configuration to Ansible managed configuration for automated, repeatable server deployments. Contributed Kerberos authentication support to Ansible as part of the project.

Gathered requirements and wrote a design and transition plan for a high-performance, low-maintenance, scalable replacement for the existing build system.

Crittercism

Senior Software Engineer
February 2014 - August 2014
San Francisco, CA

Drove the redesign of a large, monolithic application into a distributable service-oriented architecture. This included both selection of functional groupings and authoring code packages used as the common foundation of multiple services.

Wrote a white paper detailing a linearly scalable, ACL-based authorization system for use across hundreds or thousands of servers.

Replaced a proprietary message queueing system with Celery to lower maintenance costs, increase performance, and ease development.

Worked with Operations to design a new Jenkins-based Python build system with an eye toward continual deployment.

Kwarter

Platform Engineer
July 2013 - February 2014
San Francisco, CA

Worked with Python, Linux, AWS, and NoSQL databases (including MongoDB, Couchbase, Cassandra, and Redis) to build APIs capable of sustaining hundreds of thousands of requests per second.

Designed and implemented scalable, highly available features in the backend of a popular iOS/Android realtime game.

Part of a small, self-directed team with a track record of delivering tested and production-quality systems.

GoGrid

Senior Software Engineer
January 2012 - July 2013
San Francisco, CA

Joined the Cloud Services department as part of the team designing and implementing the infrastructure of one world's largest cloud hosting providers.

Researched and wrote design white papers for scalable, highly available architectures.

Assumed ownership responsibilities for GoGrid's highly available, distributed, mission critical Dynamic Load Balancer service.

Modernized the web development infrastructure, with an emphasis on implementing and documenting version control, deployment processes, and testing.

Drove the technical implementation of the company's successful website relaunch.

The Day Companies

Senior Programmer/Analyst
October 2003 - December 2011
Norfolk, NE

Drove the creation of all Unix IT infrastructure, including server purchasing and installation, application development, security, maintenance, and capacity planning.

Designed, implemented, and deployed an external website on FreeBSD, Python, and PostgreSQL, providing data entry and extensive reporting to financial customers and US Military agencies. In FY2008, the system processed over $485M of invoices.

Created the role of Database Administrator and mentored coworkers on database programming and schema planning.

Designed and implemented a major Python application to provide information conduits from US Military sites.

Designed a legacy system replacement, based on PostgreSQL, with an emphasis on scaling and deployment flexibility. The project will cut the company's IT development costs roughly in half as maintenance programmers are reassigned to new development.

Designed and implemented a legacy database migration tool, written in C, and released it as open source. It has been directly downloaded nearly 3,000 times and is packaged for Debian, Ubuntu, Homebrew on OS X, and FreeBSD.

Took over Network Administrator responsibilities for the entire company, including all network maintenance, monitoring, firewall design, and VPN deployment.

Publications

"Scaling with eventual consistency". Crittercism Engineering Blog, April 2014.
http://www.crittercism.com/blog/scaling-with-eventual-consistency/

"Filtering Spam with Postfix". Free Software Magazine, March 2005.
http://www.freesoftwaremagazine.com/articles/focus_spam_postfix

"The History and Future of SMTP". Free Software Magazine, March 2005.
http://www.freesoftwaremagazine.com/articles/focus_spam_smtp

"Introduction to Zope. Part 1: Python". Free Software Magazine, December 2005.
http://www.freesoftwaremagazine.com/articles/intro_zope_1

"PgDBF - Migrating xBase databases to PostgreSQL".
https://github.com/kstrauser/pgdbf

Education

B.S., Computer Science / Physics Minor
Missouri State University
August 2000

Community

Volunteering as an adult mentor for Curiosity Hacked, including teaching Python to teens and supervising 3D printing.