Employment

SoarTech – Software Engineer

2017 - Present

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

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, reactJS, and more.

CMU – Special Faculty Instructor

2016 – 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

Summer 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

2013 – 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.

CMU – Digital Fabrication Lab Staff

2013 – 2016

In addition to typical monitor duties, assistant is tasked with: troubleshooting and diagnosing machine and software issues, augmenting lab resources and space, enforcing and creating lab policy and procedure. Notable contributions to lab features include automated emailing reminders to students upon the day of their reservations on equipment, reducing missed reservations and wasted machine time. Technologies used: Python, PHP.

Biologic Design Group – Research Assistant

Summer 2013

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

CMU – Digital Fabrication Lab Monitor

2009 – 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

Summer 2012

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

CMU – Thesis Adviser

2015 – 2016

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

CMU – Teaching Assistantships:

2012 – 2014

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

Education

Degrees

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

Carnegie Mellon University
2008 - 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, matplotlib, Keras, Pytorch
JS – jQuery, NodeJS, Socket.io, PIXI.js, React
HTML/CSS – Bootstrap, Materialize
C++ - OpenCV
C – Arduino
Git, Heroku, Amazon AWS, Gradle, Ant, TravisCI, ZMQ, RabbitMQ, SQL(Microsoft Server)

Software

IDEs & Editors: Eclipse, PyCharm, Sublime Text, Notepad++

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.