Resume | Projects | Skills | Experience | Education | Website | LinkedIn | Coding Blog
I'm currently a full-stack engineer at the Courant Institute of Mathematical Sciences at New York University where I work on a Django, React, and PostgresQL stack. I came to software by way of fine arts, and I still have a passion for interactive media and design. As a digital sound artist, I spent years working with top contemporary music ensembles and open-source tech communities on four continents and developing software to generate interactive sound installations and performance art. Eventually software came to dominate my creative practice, and in 2018 I transition to working in software development full time through a 18-week batch at Recurse Center, a self-directed educational retreat for professional and pre-professional developers in New York City.
New York University's Courant Institute of Mathematical Sciences
December 2019 - present (New York, NY)
I work as a full-stack web developer at the Courant Institute of Mathematical Sciences at New York University (NYU) where I maintain and build features to a stack that includes Django, React, and PostgresQL.
John Jay College (CUNY)
July 2019 - present (New York, NY)
As a full-stack developer with the Student Academic Support Center (SASP) of the City University of New York's John Jay College, I helped improve student outcomes and college retention by providing software solutions that help reveal the signal within the noise. My work focused on parsing data collected from 2100+ incoming students with Python/Pandas, designing and building a database in Microsoft SQL Server, adding features to existing PHP/Laravel web applications used by faculty and peer mentors to gather data on incoming and transfer students, and building new tools for internal college use in React.
January 2019 - present
- Developed passion projects with React.js, Node.js, Express, and PostgreSQL and freelanced, in collaboration with with Grubhub UX/UI designer Aaron Cecchini-Butler, on mobile-first responsive front ends
- Worked with New York City startup focused on UI engineering for biomedical companies
June 2018 - November 2018 (New York, NY)
- Developed web applications and tools focused on generative 2D and 3D graphics and data visualisations
- Documented my work in a series of presentations for Recurse Center participants and faculty and in technical blog posts and tutorials on Medium.com
Fulbright-Nehru Research Fellow (Bangalore, India)
August 2017 - May 2018
- Developed open-source software, in collaboration with South Indian classical musicians, for representing non-Eurocentric musical structures through a responsive graphic interface
- Created an interactive audio-video installation for the Bangalore Maker Faire using computer-vision in Processing and OpenCV-Python to control audio synthesis through persistent tracking of physical tokens
- Worked with artists and community stakeholders to organize lectures, workshops, and concerts
Director of New Media Art Curriculum (Los Angeles, CA)
August 2014 - September 2015
- Developed and taught a technology curriculum to approx. 150 children in grades 4-8 every semester
- Taught workshops on Python programming, photo and video processing, wearable tech, etc.
Watson Fellow (International)
August 2013 - August 2014
- Documented the work of media artists and community arts collectives on three continents
- Leveraged a wide knowledge of digital and analog technology to collect quantitative and qualitative data on social and environmental factors influencing local artists and sound designers
To view my most recent work, see my GitHub
Project | Description | Deployment | Technologies |
---|---|---|---|
BOM Squad | An inventory and search tool for DIY Eurorack synthesizer modules and components | in progress | Django, React.js, Webpack, PostgreSQL |
Eyes Above | A Chrome browser extension visualizing data about artificial satellites in a radius above the user. Built in React with audio sonification in Tone.js. | React.js, Tone.js, CSS, HTML | |
@Sunlight_Bot | A Twitter bot that tweets public financial disclosure data on Trump administration appointees. | Node.js, PostgreSQL, Twitter API | |
Faceter | A tool for generating procedural textures and topologies with iterative or recursive fractals and coherent noise, similar to the Diamond-square Algorithm | JavaScript (ES6), Three.js | |
Pretty Mes | An app to generate mesostics (a type of procedural poem) and generative typographies from current news headlines in the style of American experimental artist John Cage | Python 3, Flask, Jinja2, JavaScript (ES6), News API, Heroku | |
Pretty Printing Trump Town | A D3.js data visualisation of ProPublica’s Trump Town dataset, unpacking granular data on the career histories of 2,816 Trump Administration political appointees | ES6, D3.js, jQuery, Python 3, NumPy |
- Core Technologies: JavaScript (ES6) [React.js, Node.js], Python 3 [Django, Pandas], CSS3, HTML5
- Frameworks and Tools: D3.js, jQuery, SASS/SCSS, Webpack, Bootstrap 4/5, P5.js, Three.js
- Databases: PostgreSQL
- Deployment: Heroku
- Version Control / Testing: Git, Github
- Other: Processing, Twitter API, Max/MSP, Sketch, Adobe Illustrator, SVGs
- Activities and Interests: blogging about coding, web accessability, running and fitness
Master of Arts, Digital Musics
September 2015 - June 2017 (Hanover, NH)
Thesis: “Are Scores Maps? A Wayfinding Approach to Composition”
- Implemented three music-visualization apps in Processing and Max/MSP using Open Sound Control to manage live animations based on data from pitch-tracking algorithms
- Defended a book-length research thesis detailing technical and design considerations for sensor-augmented live interactive computer animations
Study Abroad August 2011 - June 2012 (The Netherlands)
Bachelor of Music, Music Theory/Composition, cum laude (Minor: Philosophy)
September 2008 - June 2013 (Appleton, WI)