Scroll To View More
Matthew Scott, Python Developer in Springfield, MO, United States
Matthew Scott

Python Developer in Springfield, MO, United States

Member since November 11, 2013
Matthew is a calm, efficient software designer and developer who enjoys solving interesting problems. He has extensive experience working as a software engineer in a remote capacity. He enjoys a steady work pace with occasional high-intensity bursts to help maintain a healthy work/life balance.
Matthew is now available for hire

Portfolio

Experience

  • Object-oriented Programming (OOP), 20 years
  • Writing, 16 years
  • Python, 13 years
  • Test-driven Development (TDD), 7 years
  • Git, 6 years
  • JavaScript, 6 years
  • Django, 5 years
  • React, 1 year
Springfield, MO, United States

Availability

Part-time

Preferred Environment

PyCharm, Git, Mac OS X, Vagrant + VMware, tmux

The most amazing...

...thing I've coded is a pure-Python DB and GUI engine that helped my team to iterate through four prototypes in six months and deliver a rock-solid final app.

Employment

  • Data Engineer/Senior Software Engineer
    2016 - 2018
    Assembled Brands
    • Maintained and improved the data warehouse for a retail organization, a project that involved keeping a Rails-based ETL system up to date and maintaining a Looker-based reporting system.
    • Created a "new customer lead allocator" Python app that compares newly-completed Shopify orders against other data sources, determines proximity to a retail store, then follows certain rules to assign new customers to salespersons. The app was built using TDD techniques, to make sure all business cases were covered. By hosting on AWS Lambda, the only cost of this app was the implementation and some minor updates. The usage of the app stayed within the free billing tier.
    • Helped build two React-based front-ends for an online marketplace and merge the two code bases into a single project. Made minor changes to the back-end as needed in the course of work.
    • Created a data dictionary generator as an afternoon project, which transformed a set of LookML source code into a form that is more useful for end users to refer to. Although the project is now dormant since LookML syntax moved away from YAML, the project was fun to write and useful for a few months.
    Technologies: JavaScript, ES6, Python, Ruby, Rails, AWS Lambda, Shopify, Looker, PostgreSQL
  • President
    2009 - 2016
    Elevencraft, Inc.
    • Used SaltStack to deploy groups of staging and production hosts.
    • Set up a complete Windows/Linux/OS X compatible Django project development stack, using Packer to create base machine images for Vagrant and EC2 and using SSH and the PyCharm IDE to connect to a common environment.
    • Designed, implemented, and deployed a cross-platform job execution and storage system plus two reference front-ends using an API for dynamically generating UI elements.
    • Designed and implemented several user interface changes to a large body of existing front-end code using HTML5, Sass, and Backbone.js.
    • Designed and created a transcription crowdsourcing system allowing volunteers to collaboratively turn podcast audio into text.
    • Designed and created a vertical-market social network system using Django to integrate custom and third-party apps, providing a common set of tools to groups of volunteers operating in separate geographical regions.
    Technologies: Python, JavaScript, HTML5, CSS, SaltStack
  • Django Full-stack Developer
    2014 - 2015
    Funding Gates (via Toptal)
    • Performed data science tasks, bug fixes, feature additions, and second-tier technical support for the company's flagship Ruby/Rails/Ember app.
    • Assisted with DevOps tasks such as system monitoring, Ruby/Rails/Ember app deployment, and finding and resolving root causes of errors and performance issues.
    • Designed and created an internal sales, customer service, and analytics/data science tools using Django and RethinkDB on the back-end and React.js on the front-end.
    • Maintained and improved all aspects of Django and WordPress based marketing websites, including third-party service integrations, conversion of PSDs to HTML5+CSS+JS with animations, and integration with the flagship Ruby/Rails/Ember app.
    • Used open source libraries to implement scroll-triggered animations in marketing website pages.
    Technologies: Django, Rails, Ember, React, HTML5, CSS3, AWS, PostgreSQL
  • Django Back-end Developer
    2014 - 2014
    Toptal Client
    • Compared Python-RQ with Celery, based on client needs and their current architecture.
    • Designed and developed a mechanism using Python-RQ for long-running file conversion/export processes involving email notification, page refresh, download tracking, expired media purging, and recreation of expired media.
    • Used a finite state machine architecture to control the export process.
    • Used TDD (test-driven development) techniques to drive architecture design and implementation.
    • Refactored existing export code embedded in a Django view to facilitate both short-term queueing architecture needs and long-term desire by client to support additional export formats.
    • Completed all work in target 2-week time frame on a part time schedule.
    Technologies: Django, Redis, Python-RQ, Django-RQ, Django-FSM
  • Core Developer, Consultant
    2004 - 2008
    Orbtech, LLC
    • Developed software for non-networked workstations to analyze test results from automated electrical testing equipment, correlate it with information about items being tested, record failure and reasons for failed tests, and finally export data for further analysis.
    • Created a reliable, pure-Python, ACID-compliant database engine designed for developer productivity and highly reliable complex schema migrations running on non-networked systems.
    • Created data-bound widget kits for PyQt and PyGTK allowing UI layouts to react to changes in database schema.
    • Helped to create four different system prototypes in six months.
    • Created a new version of the Python database engine to improve performance, reduce memory usage, and accommodate more complex schemata needed by a new app.
    Technologies: Python, PyQt
  • Founder/Lead Software Developer
    2001 - 2004
    OMAjA Information Systems/Nexlink, Inc.
    • Worked with a business partner to provide Linux support, software and networking consultation, web and email hosting, and software development.
    • Designed and managed software projects including to manage internal and customer-facing aspects for a reverse logistics company, and a web-based internal database to manage contacts and policies for a small insurance brokerage.
    • Developed software to manage aspects of a terrestrial wireless ISP, including customer and subscription management, routing, DNS resolution, and bandwidth limiting.
    • Used User Mode Linux to segregate ISP services into virtual machines for deployment into a single physical machine. (User Mode Linux is an early Linux virtualization technique also used by Linode in their early days.).
    • Began work on the predecessor for an open source, pure-Python database engine that I would later help refine to create further commercial products.
    Technologies: PHP, Python
  • Registrar & Database Administrator
    2000 - 2001
    Girl Scouts of the Missouri Heartland
    • Implemented an ETL system using Perl and MySQL and what I would now call a warehouse query interface in PHP. The system corrected several deficiencies in a database schema used by an app that the organization was required to use, resulting in much more accurate reporting, important for fundraising. The query interface dramatically reduced the time it took for field staff to run reports and retrieve information, as it shifted business processes from a paper work-order model to a digital self-service model.
    • Researched the structure and past practices of the client's summer camp program.
    • Designed and created a complete summer camp management system based on the above research.
    • Supported, maintained, and handled clerical and customer service activities related to the camp management system—managed registration and billing, produced attendance rosters and meal plans, and prepared end-of-session reports.
    Technologies: MySQL, MS Access, Linux, Perl, PHP, SQL

Experience

  • Metrasynth (Development)
    https://github.com/metrasynth/

    This is by far the most passionate I've been about an open source project that I've founded, because it involves making music, and solving challenging programming tasks.

    Metrasynth is a set of tools that surround a popular "indie" digital audio workstation called SunVox. I reverse-engineered and documented the file format, and have created implementations in both Python and ES6.

    SunVox is a beautiful music app, and offers its sound engine as a DLL that you can embed on a variety of devices. That's how Metrasynth is able to extend the features of SunVox far beyond its built-in capabilities.

    I am currently using portions of the Metrasynth project as the backend for a professional introductory video course about music programming with Python.

  • Schevo (Development)
    https://github.com/schevo/schevo/

    A pure-Python database system, optimized for single-process document-oriented desktop applications that require the enforcement of a complex schema that evolves over time. It is designed for developer comfort and rapid prototyping.

  • Fanscribed (Development)
    https://github.com/fanscribed/fanscribed

    I conceived, developed, and maintain this audio transcription service targeting the podcast market. It is built using crowdsourcing techniques: It splits podcast audio into manageable tasks that both casual and dedicated contributors can easily approach.

    Originally written using Python, Pyramid, and Git as an experiment, it was recently rewritten to use Python, Django, and PostgreSQL. It is open-source licensed.

  • Django-iris (Development)
    https://github.com/snswa/django-iris

    A reusable Django app implementing an experimental platform for topical discussions, with some unique characteristics such as: arbitrary content types, where you can include more than typical "messages" in a conversation; arbitrary participants, where discussions can include any Django model object as a participant, not just the user—for example, a group of users or a bot/agent; and fluid participants, allowing them to come and go from discussions as they please.

Skills

  • Languages

    Python, Bash, JavaScript, Sass, CoffeeScript, SCSS, HTML5, CSS, SQL, Ruby
  • Platforms

    Ubuntu, Linux, Mac OS, Docker, Rackspace, iOS, Amazon Web Services (AWS)
  • Frameworks

    Django, Qt, Pylons, Twisted, Pyramid, Bootstrap, Knockout.js, Hype, Ember.js, Ruby on Rails (RoR)
  • Libraries/APIs

    PyQt, jQuery, React, Backbone.js, Handlebars, SQLAlchemy, AMQP, PubSubJS, Requests, jQuery Mobile, Puppet.js, RQ
  • Tools

    Git, SaltStack, PyCharm, Vagrant, Mocha, Nginx, Tmux, uWSGI, IPython, Pivotal Tracker, Emacs, Asana, Bitbucket, GitHub, Sublime Text, RabbitMQ, Ansible, Celery
  • Paradigms

    Model driven development, Evolutionary Database Design, Test-driven Development (TDD), Object-oriented Programming (OOP), Rapid Prototyping, Refactoring, Functional Programming, Event-driven Programming, Continuous Integration (CI), Cross-platform, Incremental development, Pair programming, Pipeline programming, REST, UX Design, Concurrent Programming, Declarative Programming, DevOps
  • Storage

    PostgreSQL, ZODB, RethinkDB, MySQL, Memcached, Redis, SQLite
  • Other

    Writing, Screencasting, Software Architecture, Documentation, Tornado, Single-page Applications (SPA), Apps
I really like this profile
Share it with others