Employment

Voxel51 – Senior Software Developer

Dec 2018 - Mar 2020

Tech Lead on the Product Team responsible for Scoop and the Platform: a scalable video processing API. Read the Docs! Backends: Python, NodeJS. Frontends: Vanilla JS, React, and the usual suspects. Other technologies used: Docker(-compose), AWS, GCP, shell, Celery, bull, Redis, Flask, MySQL, and more.

SoarTech – Software Engineer II

Jul 2017 - Dec 2018

Worked on several projects in the robotics business area. Used technologies like ROS, OpenCV, C++, Python, Keras/Tensorflow, PyTorch, HTML/CSS, JS and more, developed and deployed in linux environments. Scope of work ranged from architectural-scale designs, component development, to algorithm research and implementation.

Open Perpetuum Project – Project Manager + Software Developer

Aug 2017 - Present

Open-source community-driven development project of a MMO (Massively-multiplayer online game) server. Led diverse team spanning timezones, nationalities and experiences in game design and implementation. Established software-process, team development best-practices, version control conventions, reviews, and more. Server developed in C# with MSSQL database, with other supporting tools using a wider range including: Python, PHP, React, and more.

CMU – Special Faculty Instructor

Aug 2016 – Jun 2017

Taught two courses on digital fabrication equipment and industrial robotics, including associated software, programming, and safety instruction. Additionally, assisted with robotics-focused studio and seminar, providing software solutions and aiding in student inquiry.

IONTANK – Software Developer

May 2016 - Aug 2016

Developed software component for interactive installation and assisted with other software architecting. Participated in planning, design, and implementation over the entire project's lifecycle. Technologies used: NodeJS, RabbitMQ, Python, JavaScript, HTML/CSS, shell scripts.

CMU – Robotics Fellow

Jul 2013 – Aug 2016

Research and project work related to robotics. Develop and deliver software components, course material and other lab infrastructure. Published research. Research included a project that communicated to the robot controller and sensor devices, computed a model of a scanned environment, and adapted movement commands to changing conditions in an assembly task. Technologies used: Java, RAPID, Arduino/C, Python.

Biologic Design Group – Research Assistant

May 2013 - Jul 2013

Developed software to demonstrate PCM energy savings and design tools with performative criteria for group. Technology used: Java.

CMU – Digital Fabrication Lab Monitor

Oct 2009 – May 2013

Overseeing proper and safe usage of lasercutter, CNC 3–axis mill, 3D printer, Vacuum Former, 6-axis ABB arm. Assist and monitor student lab usage.

Fisher ARCHitecture – Design Intern

May 2012 - Aug 2012

Intern and parametric consult. Led workshops in Rhino and Grasshopper.

CMU – Thesis Adviser

Sep 2015 – May 2016

Selected by thesis candidates for advising and evaluation. Responsible for offering feedback, critique and consultation on students’ work.

CMU – Teaching Assistantships:

Sep 2012 – May 2014

Intro. to Architectural Robotics
Architecture Studio: Difficult Synthesis
Fabricating Customization
Materials and Assembly
Intro. to Digital Media

Education

Degrees

Carnegie Mellon University
Jan 2014 - May 2017
Masters of Science in Computational Design (3.12 GPA)

Carnegie Mellon University
Aug 2008 - May 2013
Bachelor of Architecture with College Honors (3.39 GPA)
Recipient of Design Commends (S’11, S’12)
Dean’s List for seven consecutive semesters (F’09 – F’12)

Relevant Courses

48-624: Parametric Modeling
48-724: Parametric Design
48-789: Shape and Computation
15-102: Exploring Programming with Graphics
15-112: Fundamentals of Programming and Computer Science
15-121: Introduction to Data Structures
15-122: Principles of Imperative Programming
15-214: Principles Object Oriented Software Construction
15-313: Fundamentals of Software Engineering
15-637: Web Application Development

Skills

Programming

  • Java – 6 years
  • Python – 6 years
  • Javascript – 2.5 years
  • HTML/CSS – 5 years
  • C# – 2.5 years
  • C++ – 1.5 years
  • RAPID (ABB robotics) – 5 years
  • G (CNC programming) – 4 years
  • C – 0.5 years
  • PHP – 0.5 years

Frameworks, Libraries & other Technology

Java – JavaFX, Swing, Spark, Encog, Processing
Python – Django, Flask, matplotlib, Keras, Pytorch
JS – Node.js, React, Socket.io, PIXI.js
HTML/CSS – Bootstrap, Materialize
C++ - OpenCV
C – Arduino
Git, Heroku, Amazon AWS, Gradle, Ant, TravisCI, ZMQ, RabbitMQ, SQL, MySQL, MSSQL

Software

IDEs & Editors: PyCharm, Sublime Text, Eclipse, Vim

CAD/CAM: Rhinoceros3D, Grasshopper, RhinoCAM, MasterCAM, RobotStudio, AutoCad

Text & Graphics: Adobe Illustrator, Adobe PhotoShop, Adobe InDesign, MS Word, MS PowerPoint, MS Excel, Google Docs, Google Sheet, Google Slides

OS: Ubuntu/Linux (Preferred), Windows, Mac

Hardware

Lasercutter, CNC Mill, 3D printer, 6-axis Industrial Robotic Arm, Full woodshop experience, Mill, Router, Table Saw, Band saw, Drill press, Vacuum Former, and hand tools.

Contributions & Publications

Open Perpetuum Project – Open Source Project Manager and Contributor

Leading and contributing to open-source MMO game server and related projects.

FreeCol – Open Source Contributor

Contributed to open-source project, developed and merged 2 feature requests. Team project for 15-313 (CMU).

Rob|Arch 2016 Publication

Authored “Autonomous Robotic Assembly with Variable Material Properties” Coauthored “RECONstruction”

Rob|Arch 2014 Publication

Contributed work for “All Bent Out”

ACADIA 2014 Publication

Contributed work for “Seeing is Doing”

[EN]Coding Architecture Publication

Thesis work and cover artwork included in conference publication.