peter.williams@barelyenough.org
720.280.2436
http://barelyenough.org
Software architect with expertise in highly scalable web applications, SOA and high quality software development. Strong understanding of the current state of the art in software development technologies, practices and methodologies. Able to learn new technologies and techniques rapidly, see situations where they may be applied advantageously and coach others in their use. Evangelist for continuous process improvements in both the software development process and business processes to which the software is related.
Accomplishments
-
Achieved an order of magnitude improvement in scalability of a SaaS offering using service oriented principles.
-
Improved software quality though the systemic use of automated unit and functional testing.
-
Re-engineered business processes to achieve notable reductions in complexity and human effort.
-
Mentored others in areas such as effective use of dynamic languages, web services, unit testing and agile methodologies.
-
Effectively coordinated efforts of geographically distributed team.
-
Active open source collaborator: Resouceful, rspec-mode
Skills
-
REST, SOA, web services, JSON, XML, SOAP and HTTP
-
Scalable architectures, design patterns, object-oriented analysis and design and document format design
-
HTML, XHTML, CSS, Javascript, Ruby on Rails and JSON
-
Ruby, Python, Java, C/C++, Javascript, Lisp and shell scripting
-
Agile, scrum, XP, RUP
-
Relation database design, PostgreSQL, MySQL, SQLite, MS SQL Server and Oracle.
Work History
Systems Architect
Gnip, June 2008 - July 2008
-
Designed and documented REST/HTTP web service APIs for data aggregation/filtering and identity management.
-
Implemented availability monitoring system (Nagios plus custom plugins) for multi-component production system.
-
Managed a pure cloud (Amazon EC2 and S3 production deployment of a multi-node high availability system.
-
Java, Ruby, and Python components deployed on Linux
Senior Software Engineer
Absolute Performance, November 2006 - May 2008
-
Lead service oriented re-architecture effort which resulted in a radically more maintainable and scalable system.
-
Designed and documented REST/HTTP web service APIs. This included design of JSON based data formats and API versioning strategy.
-
Evangelized improved quality processes included systemic unit testing, automated acceptance testing, etc
-
Instrumental in switch to Git source control system.
-
Designed system to support software as a service (SaaS) model with multiple customers sharing deployments.
-
Ruby deployed on Linux
Senior Web Developer
WebRoot Software, May 2006 - November 2006
-
Implemented internationalization extensions to template library that allowed website to be much more easily localization.
-
Evangelized improved quality processes included systemic unit testing, automated acceptance testing, etc
-
Liaison to external contractors, including code/design reviews, integration of code into internal source control repositories, performing deployments and debugging hard to reproduce issues.
-
PHP and Ruby deployed on Linux
Technical Lead
Certified Financial Planners Board of Standards, November 2005 - May 2006
-
Lead team of three developers.
-
Evangelized improved quality processes included systemic unit testing, automated acceptance testing, etc
-
Mentored team in the use of Ruby, and dynamic languages in general.
-
Engaged in business process re-engineering efforts resulting in a significant streamlining of the processes involved.
-
Ruby deployed on Linux
Senior Software Engineer
DigitalGlobe, September 2004 - October 2005
-
Designed and implemented highly configurable work flow engine that handled fulfillment of all orders.
-
Designed and implemented dashboard for the order fulfillment system to allow operations to track the progress of an order.
-
Java, PHP and Ruby deployed on Linux
Software Architect
GE Energy, October 1998 - August 2004
-
Lead team of five developers and two QA
-
Designed and implemented web application server.
-
Evangelized the use of web services as a way to implement application integrations.
-
Implemented, and evangelized use of, xUnit testing framework for proprietary language used by my division.
-
Magik, C++, Python on various flavors of Unix and Windows
Software Engineer
Integware, August 1997 - October 1998
-
Designed and implemented data analysis tool.
-
Designed and implemented extensible CAD to engineering document management integration mechanism.
Education
Software Engineering, Certificate
University of Colorado at Boulder, 2002 - 2003
Computer Science, BS (incomplete)
University of South Alabama, 1994 - 1996
Colorado State University, 1997
Alternate formats: PDF
