Christopher Zorn

https://github.com/twonds/

Work experience

June Life, Inc. Jan 2016 — Present

Server Software Engineer

  • Currently at June Life, Inc. which is a smart kitchen appliance company known for its smart oven. https://juneoven.com/
  • Building real-time communication services between Appliance and Companion applications using Python, gRPC, Redis and Tornado.
  • Implementing data analytics collection and processing from ovens using Python, Tornado, Protobufs, Logstash, Amazon Lambda, Dynamodb, Kafka, Elasticsearch and Graphite.
  • Handling and processing real-time events, images, video and data from appliances to provide data to applications for users and business using Python, gRPC, Kinesis, Lambda, and dynamodb.
  • Building Amazon skill for Alexa interaction with June Ovens.
  • Implementing a recipe application server and "cook programs" service for appliances and companions using Python, Flask, Redis, Celery, SQLAlchemy, Postgresql.
  • Building automated testing and bench marking for analyzing and testing june services using Python, statsd, elasticsearch, and mzbench.
  • Implementing Authentication and Authorization for June devices and subscriptions using Python, Flask, SQLAlchemy, Postgres and gRPC.
  • Automating continuous integration, delivery, deployment and service scaling using Jenkins, Terraform, Ansible, Docker, Kubernetes, Helm and Python.

Machine Zone March 2014 — Dec 2015

Senior Software Engineer
  • Mochi Media's engineering team was acquired by Machine Zone
  • Implemented and maintained platform services used by Machine Zone's games.
    • Platform services helps run Game Of War: Fire Age one of the top grossing and played MMOs
    • Platform can handle hundreds of thousands of simultaneous game players that generate millions of messages. 
  • Implemented next generation messaging system.
    • Implementing core technologies in Erlang and C. 
    • Implementing test framework for behavior, integration, and benching platform's services using Erlang, Behave, and Python.
    • Implementing continuous deployment mechanisms for the platform services using Go.cd, Docker, Internal Cloud service, Ansible, Make and Python.  
  • Maintained chat, real-time translation, pubsub, timer (server side deferreds), and messaging services that use Erlang.

Mochi Media Jan 2011 — March 2014

Lead Platform Engineer
  • Mochi Media was a web game ad network and API platform.
  • Lead the engineering team in implementing and maintaining the Mochi API platform which includes advertising, distribution, analytics, game data storage, achievements and scores. 
    • Platform handled over 80 million unique game plays per month.
    • Ad server handled over 30 million ad requests per day.
    • Platform was a mix of technologies that include Erlang, nginx, Actionscript, Python, Postgresql, mnesia, Riak and HBase. 
  • Created and delivered new advertising services.
  • Managed engineers on these and other platform engineering projects shipping quality software in a timely manner. 
  • Deployed scoreboard and achievements backend improvements that used Riak and statebox to replace mnesia.
    • Reduced startup time of downed and new nodes.
    • Improved reliability and availability of this data.
  • Designed and implemented data processing and analytics backend for handling advertiser's, publisher's, developer's and Mochi's data. 
    • Created in house ETL using python and Hadoop to process logs and data generated from platform systems.
    • Built storage system using HDFS, HIVE, and HBase.
    • Built API interface to this data using python and twisted python framework.

Collecta 2009 — 2010

Software Engineer and Co-founder
  • Collecta was a startup that built a real-time push based search engine.
    • Handled thousands of searches sending data to thousands of concurrent users.
    • Processed data at a rate of over 10k messages a second from many social website, blogs and systems including twitter, identica, wordpress, myspace, and others.
    • Presented the user with a search result less than 40-400ms after publish.
  • Created, prototyped and implemented real-time push based search engine and API using XMPP, JSON, pubsubhubbub, ejabberd, erlang and python.
  • Designed and implemented a traditional index based search engine and API using XMPP, JSON, erlang, solr, and couchdb.
  • Built a test framework using twisted python and amazon ec2 to test various parts of the system including API and backend.

Chesspark 2006 — 2009

First Software Engineer
  • Chesspark was an online chess startup that hosted thousands of games, tournaments and players. 
  • Designed and implemented XMPP based API for social interaction, game events, game messaging, game matching and game play.
  • Built backend using ejabberd, memcache, postgresql, twisted and python.
  • Implemented website using python, django, twisted and python.
  • Created test framework using twisted python and amazon ec2 to replay logged API/XMPP data that would mimic the live production system in a test environment.

Medical University of South Carolina 1999 — 2006

Instructor and Software Engineer
  • Created and implemented integration API for various university services to quickly gather information for accreditation auditors using django and python.
  • Built a workflow system used by university researchers, HR and risk management to handled document creation and processing.
    • Built using XML, XMPP, Twisted, Punjab, PHP, Python and postgresql.
    • Used XML, HTML and PDF for manipulating and creating documents.
  • Designed and created many web based systems for researchers using many different technologies including perl, php, python, apache, nginx, java, XMPP and PDF.
  • Engaged in many research and development projects to help improve the medical university.
  • Taught researchers and other technology departments new software, programming languages and technology.

Qualifications

  • Polyglot software engineer, strong in problem solving using the following languages: Python, Erlang, Javascript, Rust, Actionscript, PHP, Java, Ruby, Objective C, C, C++
  • Created and Contributed to various open source projects.
    • https://github.com/twonds/ and https://github.com/mochi
    • Punjab - A BOSH connection manager written in twisted python - https://github.com/twonds/punjab
    • Wokkel - A XMPP framework for twisted python - http://wokkel.ik.nu/
    • Palaver - A multi-user chat XMPP component backend - https://github.com/twonds/palaver
    • Strophe, Strophe.js - A C and Javascript client library for XMPP and BOSH/XMPP - http://strophe.im/
    • Other small contributions to Twisted, Ejabberd, and Django.
  • Consulted with large and small companies on messaging and XMPP projects.
  • Contracted and consulted on many web based API and web site projects using various technologies.
  • Worked with the following database and storage systems: redis, postgresql, riak, hbase, mnesia, couchdb, mysql, memcache and others.

Education

Computer Science Fall 1996 — Spring 2000

College of Charleston
Obtained a Bachelor of Science degree in Computer Science with extra classes and work on databases, wearable computing and graphics.
Made with CV Maker