- Programming languages (fluent)C, C++, Python, x86 assembly, shell scripting
- Programming languages (proficient)Ruby, PHP, Visual Basic, C#. Able to learn most new programming languages with ease.
- Content-description languagesHTML, XML, XHTML, CSS, MySQL, PostgreSQL, SQLite
- Operating systemsMac OS X (10.4+), Linux (Gentoo, Fedora, Ubuntu, etc), Windows 2000 through 8, Windows Server 2003
- Integrated development environmentsXcode (2.5+), Visual Studio 6.0 through 2012, NetBeans
- Revision control systemsStrong experience with Git, Mercurial, and Subversion
- Natural LanguagesEnglish (native)
- Miscellaneous
- professional experience porting games between platforms (Windows, Linux, and Mac OS X)
- experience maintaining and administrating Windows and Linux servers, primarily serving MySQL, Apache and Samba
- experience maintaining a Linux network router for a public network, using iptables and iproute2
- graphics libraries: OpenGL, SDL, and Direct3D (currently only know orthographic rendering well)
- low-level programming and code optimization (data structures, x86 assembly, stress testing)
- excellent troubleshooting and debugging skills (gdb, valgrind, tcmalloc)
| http://www.uplinklabs.net | steven@uplinklabs.net |
Skills
Experience
| Amazon Web Services - Kernel and Operating Systems Team | January 2012 -- present |
| Software Engineer, full-time position | |
|
I currently work on the Amazon EC2 Kernel and Operating Systems team. Most work I do involves the Linux kernel and Xen hypervisor, focusing on low-level performance testing and optimization. This includes block device I/O performance, clock source accuracy/precision/performance, device passthrough with VT-d, network throughput/latency, hypervisor scheduling, scalability with high-density hosts, and so on. I've also developed a Python tool which enables us to run qualifications, benchmarks, sanity tests, etc. on massive numbers of hosts in parallel, allowing for very fast iteration on new product designs or platform refreshes. This tool has also served us well during emergency scenarios where a new fix needs to be deployed on a series of hosts and qualified in a very short period of time. |
|
| Amazon Web Services - Platforms and Performance Team | January 2011 -- January 2012 |
| Software Engineer, full-time position | |
|
I worked in the Amazon EC2 Platforms and Performance team, where I worked primarily on performance tuning and design for cluster compute instance types. I was the lead software engineer in charge of the hi1.4xlarge instance type, and did significant kernel changes to ensure hi1.4xlarge performed well. |
|
| Introversion Software | 2005 -- 2007 |
| Linux and Mac Developer, contract work | |
| Exosyphen Studios | 2009 -- 2010 |
| Linux and Mac Developer, contract work | |
|
|
| Google & Python Software Foundation | Summer 2010 |
| Google Summer of Code Participant, Software Engineer, contract work | |
|
|
| Uplink Laboratories | 1999 -- present |
| Developer, non-profit personal project development | |
Currently the lead developer of several projects including:
|
|
| Dungeon Crawl Stone Soup Development Team | 2009 -- present |
| Developer, Mac maintainer, open source development | |
|
|
Education
| Seattle Pacific University, Seattle, WA, USA | Winter 2007 -- Winter 2008 |
| Student of Computer Engineering | |
| Central Washington University, Ellensburg, WA, USA | Fall 2006, Spring 2009 -- Fall 2010 |
| Student of Computer Science | |
| Moses Lake High School, Moses Lake, WA, USA | 2003 -- 2006 |
| Student | |
|
|
Other Experience and Qualifications
| Future Business Leaders of America | |
|
|
| Speech and Debate | |
|
|
| Scouting | |
|
|