Peter J. Schwarz

pschwarz at mpls.dev
https://github.com/peterschwarz

Skill Summary

Rust, Python, Java, Javascript, Clojure, C/C++, XML, HTML, PostgreSQL, SQLite, Git, Mac OS X, Linux, Windows.

Professional Experience

Feb 2023 - Present. Functrino LLC. Minneapolis, MN
Principal Software Engineering Consultant

Contracting projects including implementing tools for analyzing possible future failures of large-scale energy infrastructure using Monte Carlo simulations, implemented with Python and pandas. Implemented AWS lambdas using Python Chalice and deployed via terraform. Front-ends built in Vue.js.

Jan 2017 - Feb 2023. Bitwise.io. Minneapolis, MN
Lead Software Engineer
  • Core maintainer of distributed ledger projects under the Hyperledger umbrella, including Sawtooth, Transact, and Grid.
    • Lead architecture design and development of Transact, a Rust library which provides smart contract execution for distributed ledgers
    • Lead transition from Python to Rust of Sawtooth, a distributed ledger platform
    • Lead proof-of-concept client development for distributed ledger applications using Sawtooth in ClojureScript and Javascript
  • Core maintainer of additional open source projects: Splinter, Cylinder, and Augrim
    • Lead development on Cargill’s Splinter platform, a platform for building private distributed ledgers; built in Rust
    • Designed and implemented custom JWT implementation in Cylinder, a Rust signing library, using secp256k1 signatures
    • Collaborated on architecture design of Augrim, a general consensus library.
July 2012 - Jan 2017. Freelance (under Bicycle I/O).  Minneapolis, MN
Freelance Software Engineer

Contracting projects including Swing-client development for Siemens Mobility, Android development, P2P Cordova development, and both full stack web development including Grails. Ruby on Rails, Python-on-AppEngine, Clojure, and client-side development in Javascript and ClojureScript.

October 2009 - July 2012. Acrolinx, GmbH.  Berlin, Germany
Senior Software Engineer

Active in both client and server development of the natural language processing system. Developed version management framework for web services.  Developed cross-browser JavaScript client front-end, using REST and JSON for communication.   Optimized the natural language tokenizer from a full document parse to a streamed pull-parser.  

August 2009.  AmeriTrak, Inc, Little Falls, MN 56345
Software Consultant

Ported C-based embedded mobile tracking firmware to Ubuntu Linux, with full GPS tracking and server communication over sockets. 

August 2008 – August 2009. Gemini Observatory, Hilo, HI, 96720
Senior Software Engineer

Lead design of software infrastructure design for near-real-time automated data reduction system using ApacheMQ, Hibernate, GWT and interfacing with Python mathematical scripts.  Participated in the gathering and refining of requirements with a cross-disciplinary team of software engineers and astronomers.  Successfully presented architecture to an external review committee, resulting in the go-ahead for prototype development and design finalization.

June 2006 – August 2008. ObjectFX, Inc, Minneapolis, MN 55413
Software Engineer.

Participated in general development and maintenance of the entire SpatialTools platform (a server-based mapping solution) over a full release cycle.  Developed key AJAX components, including control widgets, a cross-browser event system, and communication protocols for server/client interaction.  Active in a full release cycle for the SpatialRules product (a geospatial intelligence rule engine).  Led design and development of highly efficient topological/geometric relation algorithms, reducing runtime of comparisons from O(n2) to O(n log n). 

Education:

  • BS degrees in Computer Science and Mathematics, University of Wisconsin, Madison, WI
  • Graduate coursework in Advanced Algorithm Analysis and Design, Pattern Recognition, and Artificial Intelligence, University of Minnesota, Minneapolis, MN 55413