J C Lawrence
Phone: (408) 410-3632
J C Lawrence
á Builds cost-effective massively-scalable systems.
á Customer-oriented and results-driven with 10+ years of engineering leadership.
á Full system and product life-cycle experience for both Software Engineering and Operations.
Senior Staff Engineer, April 2012 – May 2013
á Architected & then built and lead the team that implemented a reliable multi-tenant asynchronous execution system (thousands of worker systems) for model simulations using a constraint-based system to manage task scheduling fairness and resource distribution.
á Designed and implemented operational statistics and billable event collection systems.
á Ported CyModelica (a Modelica compiler) from Windows to Linux and the Gnu toolchain, and then back to Windows; along with refactoring to support team development.
Skills used: Aspect-oriented programming, AWS/EC2/S3, build & release, compiler design and implementation, constraint-based systems, engineering & technical leadership, distributed systems, Java, Lua, Python, RabbitMQ, Redis, REST services, Riak, PaaS, scalability, schema-less/no-SQL databases, StatsD, web services, virtualization and VM-based clusters
YouSendIt – Campbell, CA
Senior Staff Engineer, Storage Architect Dec 2009 – Jan 2012
á Architected & implemented standardized engineering deliverables, build environments, build processes, product packaging, configuration management, and standardized deployment methods, initially for the storage tier and ultimately for all server-side products.
á Built a strong relationship between Engineering and Operations at all levels.
á Assorted technical deliveries: 64bit port of the storage tier, specified & moved the storage tier from DASD to a shared horizontally-scalable storage cluster model, re-implemented the storage tier as light-weight WSGI web services instead of a costly custom Apache module, multiple large customer saves for Sales and Customer Support, etc.
Skills used: Apache, Apache modules, API design, AWS/S3, build & release, C/C++, concurrent programming, engineering lead, distributed systems, GPFS, incident response protocols/teams, gevent/libevent, Luwak, master-less clusters, PDLC and engineering process, product architect, Python, Riak, SaaS, scalability, schema-less/no-SQL databases, storage systems & networks, technical leadership, web services, WSGI, virtualization and VM-based clusters
PayPal – San Jose, CA
Lead Engineer, Manager, Product Architect June 2005 - Nov 2008
á Acted as lead engineer and manager for the Developer Services team, responsible for the PayPal web-services platform ($30B+/year), IPN (API callbacks) and Sandbox test systems.
á Re-implemented merchant APIs to use name-value pair POSTs instead of SOAP. Within 6 months two thirds of all new merchant integrations were using NVP.
á In parallel with the payment-method development teams, rewrote the web-services platform for all payment and merchant APIs, moving it from a monolithic CGI-BIN/server pair to a light-weight dispatcher model routing requests to business-logic servers with good code & deployment isolation.
á Led the rollout of the new web-services tier with no unplanned downtime or lost transaction volume.
á Moved the Sandbox from a 4-system cluster in San Jose to a 100-system cluster in Denver.
á Acted as lead engineer and manager for the Merchant On-boarding team, responsible for merchant-acquisition and merchant-configuration systems. Built and trained the QA team for my group. With a local team and a team in India delivered over a dozen features including rewriting the boarding flow with a 70% reduction in fall-off rate, hierarchal sub-account management and channel boarding APIs.
á As Product Architect for the internal ÒTurboRollerÓ release-orchestration tool, developed and got funded a full web-services/work-flow based replacement architecture with a roadmap to get there from the current system.
á Part of the team that implemented STSI, a rescue re-architecture when internal or external dependencies fail, including the siteÕs Oracle database (which was near crashing from load). I was responsible for parts of the payment methods and the daemon that replayed transactions received during the outage.
á Recognized for exceptional ability to work through others and consistently moving the company forward to both fix the problem and ensure it didnÕt recur.
Skills used: Apache, product architect, business coordination, C/C++, distributed systems, engineering lead, manager, offshore engineering coordination, security analysis, technical leadership, web services, workflow automation
Pfizer Research & Development – Groton, CT
Product Architect, June 2003 – May 2005 (contract)
á Wrote and executed massively parallel custom applications to analyze –omics data (proteinomics, genomics, etc).
á Using Open Source tools and components, designed and delivered an agent-based distributed heterogeneous computational router/framework for non-programmer computational statisticians to express common computational methods and non-statistician/non-programmer research scientists to use work-flow tools to assemble & use those methods for their research analysis.
á Collaborated on distributed computational statistics projects for Pfizer with research groups at Yale and Seattle universities.
Skills used: academic partnerships, architect, ad-hoc heterogeneous clusters, distributed computation, distributed systems, message busses, message passing networks, parallel computation, performance analysis, Python, scientific computing, tuple spaces, web services, workflow automation, virtualization, XML, Zope
Protego Networks – Milpitas, CA
Systems Architect, August 2002 – February 2003
á Designed and implemented logic core of product (aggregation and near-realtime distributed analysis of distributed network events, 20K events/second per node). Patents granted.
Primary skills used: algorithm design, architect, C++, distributed systems, engineering lead, high performance systems, Linux, micro-language design, parsers, scalability, security analysis, SSL, XML
Sun/Cobalt – Santa Clara, CA
Staff Engineer, April 2002 – July 2003 (contract)
á Implemented support for new Squid features and transferred maintenance to in-house staff.
Skills used: C/C++, Linux. PHP
2Wire – Milpitas, CA
Senior Staff Engineer, April 2001 – December 2001
á Reverse engineered and implemented proprietary VoIP protocols (Dialpad).
á Implemented POSIX thread support under pSOS
Skills used: C/C++, distributed systems, pSOS, SSL, VoIP, POSIX, reverse engineering, security analysis
Maxtor, Network Services Advanced Technology Group – San Jose, CA
R&D Team Lead, December 2000 – March 2001 (contract)
á Lead R&D team & researched and advised on future NAS and storage technology directions.
Skills used: algorithm design, architect, C/C++, engineering lead, performance analysis, project management, Python, reverse engineering, technology evaluation
Nuron – Santa Clara, CA
Senior Staff Engineer, August 2000 – November 2000 (contract)
á Assisted in design/development of a Linux-based FPGA-based memory-module device driver aimed at
the SSL acceleration and image processing markets.
Skills used: apache module, architect, cryptography, C/C++, device drivers, Linux kernel, performance analysis, Python, security analysis, SSL
Critical Path – San Francisco, CA
Senior Staff Engineer, October 1999 – July 2000 (contract)
á New product development relating to MIME and Document Object Model (DOM) support for Critical
Path's core webmail product.
Skills used: Apache, C/C++, Linux, Perl, Python, Solaris, SQL, XML