Geoffrey Booth

web developer and programmer

Geoffrey Booth’s Résumé

full-stack web developer passionate about creating elegant user experiences

Geoffrey Booth’s Portfolio

Contact Geoffrey Booth

Proficiencies

  • Languages: JavaScript/Node.js (contributor), CoffeeScript (project maintainer), TypeScript, Python, Java, PHP, BASH, HTML, CSS.
  • Frameworks: Meteor (contributor), Vue, React, Ember, Backbone/Marionette, Express, Serverless, AWS Lambda, WordPress, jQuery, Twitter Bootstrap.
  • Technologies: Docker, Docker Compose, Terraform, LocalStack, S3, SQS, RDS, API Gateway, MongoDB, DynamoDB, PostgreSQL, MySQL, Google Analytics, Google Maps API, Handlebars, D3, responsive design, Facebook/Twitter sharing, WebdriverIO, Cucumber, TestCafe, Puppeteer.
  • Software and Systems: Git, GitHub, GitLab, Travis, AppVeyor, Gulp, Webpack, Grunt, Jira, Confluence, Sublime Text, VS Code, Photoshop, Illustrator. DevOps including CI/CD, server instances and Amazon Web Services. Agile/Scrum project management and test-driven development.

Experience

  • Node.js Support for ECMAScript Modules. github.com/nodejs/modules Member of the Node.js Modules Team, contributor of several features in the Node.js core codebase, and author of Node.js modules public announcements and most of the ES modules docs. Creator of the .cjs file extension and savior of .js files supporting ES module syntax in Node.js. github.com/nodejs/modules/blob/master/doc/new-implementation-announcement.md
  • CoffeeScript 2. coffeescript.org Maintainer of the CoffeeScript language since 2016. Led a team of 17 open-source contributors on the CoffeeScript 2 project, to modernize the language and add support for features added in ES2015+ (ES6) JavaScript. coffeescript.org/announcing-coffeescript-2
  • Senior Software Engineer, Walt Disney Imagineering. Dec 2015–present Product owner, technical lead and developer on various projects:
    • Media Vault. Led a team of seven developers, two quality analysts, one project manager and one business analyst for four years, including running dailies and Agile sprint planning and retrospectives, for this search engine for over one million media assets of Walt Disney Imagineering. Built a new, easier-to-use and mobile-friendly user interface atop commercial digital asset management product; open sourced at github.com/disney/dockerized-opentext-media-management. Built unit and end-to-end tests for all components, with scripted deployments.
      • Docker
      • Docker Compose
      • JavaScript
      • Node.js
      • Meteor
      • Vue
      • Express
      • Java
      • Spring
      • MongoDB
      • PostgreSQL
      • Terraform
      • Amazon Web Services
      • S3
      • Lambda
      • RDS
      • GitLab CI
    • Parklink. Built cloud-native APIs to support kiosks at attractions in Disneyland and Disney World where guests can email themselves photos and videos. An app on-site in the parks uploads media and metadata from the kiosks into Amazon S3, triggering Lambda functions to process the media and email guests. Other Lambda functions serve landing pages for guests to see, download and share their media; and show analytics and the overall status of the system.
      • Amazon Web Services
      • Lambda
      • S3
      • Simple Queue Service
      • DynamoDB
      • JavaScript
      • Node.js
      • Terraform
      • LocalStack
    • Star Wars land; Millennium Falcon: Smugglers Run. Designed API for allowing guests to save their interactions across Star Wars land. Built automated tests management web app for 3D graphics engine in Smugglers Run.
      • Python
      • JavaScript/Node.js
      • Meteor
      • Vue
      • Lambda
      • S3
      • Jenkins
  • Nerve prop web app. Built an app as an interactive prop for actors to use during filming of the movie Nerve. Implemented live video from phone cameras with graphics overlaid, real chat rooms and voting leaderboard, and a control panel for an admin to send alerts and direct graphics. Set up wifi router and MacBook Pro to serve the site on set, no Internet connection required.
    • Meteor
    • realtime
    • device camera
    • background video
    • Greensock
    • Mac server setup
  • Developer/Technical Lead, Trailer Park. Oct 2014-Dec 2015. Technical lead for the following sites:
    • Jurassic World. jurassicworld.com Designed architecture for the site, a highly-optimized single-page app visited by over 6 million people, including over 300,000 in a single day; with over 30 million pageviews so far. Implemented responsive design, analytics, social sharing, animated data-visualization widgets, SVG icons and templates, a custom zoomable map, touch-friendly photo galleries, video and localization. Built compilation process so that the entire site could be static files served via fast, globally-distributed CDN. Created data models to simulate park capacity and realistic attraction wait times and monorail schedule.
      • CoffeeScript
      • Backbone/Marionette
      • Handlebars
      • Grunt
      • Bootstrap
      • Leaflet
      • SVG
      • Greensock
      • responsive
      • D3
      • Google Analytics
      • PhantomJS
      • Apache .htaccess
      • CDNs
    • Trailer Park. www.trailerpark.com Built custom CMS admin site and designed architecture for a future public-facing site. Used Ember framework in both sites to create single-page apps that communicate with a JSON API. CMS includes drag-and-drop flexible page sections and galleries, OAuth2/Active Directory authentication, and a media library that validates image and video types and dimensions before upload. Agile project with behavior tests.
      • CoffeeScript
      • Ember
      • JSON API
      • Gulp
      • Bootstrap
      • media validation
      • responsive
      • HiDPI design
      • Agile
      • test-driven development
  • Developer/Architect/IT/Director of Production, Film Finances New York. Feb 2013-Jul 2014. Built the following internal, employee-facing web apps:
    • Production Tracking. Web interface for remote hosted FileMaker database. Provides powerful tools for searching contacts and films based on multiple criteria, with contact search results downloadable as mobile-friendly vCards. Visualizes films’ progress with interactive graphs and progress bars. Plots Film Finances’ active projects on a world map. Custom UI widgets parse film-specific data types such as page counts and payroll hours. Built using Meteor framework with a custom-built HTTP API endpoint written in PHP to sync MongoDB and FileMaker databases.
      • CoffeeScript
      • PHP
      • Meteor
      • MongoDB
      • FileMaker
      • responsive
      • Bootstrap
      • Handlebars
      • Underscore
      • D3
      • jQuery
      • X-Editable
      • X-Charts
      • Google Maps
    • Locations Map and Gallery. Shows locations and photo galleries on map, with buttons to rate them.
      • CoffeeScript
      • Meteor
      • Google Maps
      • Dropbox
    • Open from Email. Email links to shared files that open those files when clicked; eliminates the need to send attachments.
      • AppleScript
      • Dropbox
    • Degrees of IMDb. Finds connections between any two people or companies on the Internet Movie Database.
      • Meteor
      • PhantomJS
      • screen scraping
  • Software Developer, New Regency. Dec 2012-Feb 2013. Built web app to find and replace sets of text pairs across folders and subfolders of Word and Excel documents. Features a Web interface where users can upload an entire folder and download it processed and zipped. Also wrote guidelines for digital asset management.
    • CoffeeScript
    • PHP
    • Meteor
    • MongoDB
    • Twitter Bootstrap
    • Ajax
    • jQuery upload plugins
    • OpenTBS
    • Zip extension
  • Stephen King: “The Basement.” stephenking.com/promo/mr_mercedes/the-basement/ Interactive game to promote the Stephen King murder-mystery book Mr. Mercedes. Users explore seven web-based “desktops” that simulate the computers used by the killer in the book, unlocking achievements and discovering clues about the book’s mystery.
    • JavaScript
    • PHP
    • heavily-modified Symbiose WebOS
  • Developer/Assistant to Producer, Keep Your Head Productions. Oct 2011-Dec 2012. Wrote software and provided IT support for Academy Award-winning producer Anthony Katagas on various projects including films 12 Years a Slave and The Immigrant. Built the following internal apps and scripts:
    • PDF Watermarker and Emailer. Automates the creation and email distribution of watermarked PDFs.
      • ActionScript
      • Python
    • Printable Map Stitcher. Combines high-resolution Google Maps tiles into poster-sized maps that look sharp when printed.
      • Python
      • Google Maps
    • Secure Video Streamer. Presents video on password-protected site via secure stream
      • WordPress
      • Amazon CloudFront
      • RTMP streaming video player
    • Contact List Generator. Generates traditional film industry three-column contact list from a group vCard or folder of vCards.
      • PHP
      • vCard PHP
    • Day Out of Days Poster. Converts cast work schedule paginated PDF into a single colorful table, printable as a poster.
      • VBA
  • Emerging Pictures. Search engine for films and showtimes of a global network of 500 movie theaters, handling 350,000 users per year. Users enter a location to see an animated map with theaters near them, including films and showtimes. Built as a custom WordPress plugin.
    • PHP
    • JavaScript
    • MySQL
    • WordPress
    • Google Maps API and Geocoder
    • Ajax
    • jQuery
    • jQuery templates
    • cookies
    • detection of users’ language and locale
  • Middlemarch. www.middlemarch.com Designed and coded WordPress-based site for the documentary film production company Middlemarch. Features custom interactive JavaScript checkerboard where thumbnail tiles slide on hover, implemented as a WordPress plugin with its own client-accessible admin page. Implemented custom-styled monochrome Google map as well as inline videos. Created help website with detailed instructions with screenshots for clients to easily administer their site.
    • JavaScript
    • PHP
    • WordPress
    • jQuery
    • jQuery UI and animation
  • Piano Adventures. www.pianoadventures.cn, .com.au, .co.uk; www.pianoadventures-es.com Designed multilingual foreign sites for Piano Adventures, the #1 bestselling piano teaching method in the United States. Developing relaunch of American website, featuring searchable database of 298 publications including page and audio previews.
    • PHP
    • JavaScript
    • SASS
    • WordPress
    • WooCommerce
    • WordPress MultiLingual
    • responsive design

Education

  • Columbia University. School of the Arts, 2005–2009. Master of Fine Arts degree in Film Producing.
  • Cornell University. College of Arts & Sciences, 1999–2003. Bachelor of Arts degree in Film with a focus in Computer Science.
Jurassic World An award-winning website for a record-breaking movie. Designed as an in-world website to help plan your visit to the world’s premier theme park, JurassicWorld.com has been visited by over 6 million people, including over 300,000 in a single day; with over 30 million pageviews so far. The responsive site features an interactive zoomable map, touch-friendly image galleries, HD video, and animated widgets powered by data models that simulate realistic park capacity, attraction wait times and a live monorail schedule. The site received a cameo in Lego Jurassic World and inspired a real theme park. All built on an architecture strong enough to withstand trailer releases, the film’s opening weekend, and the day the site was featured on the front page of Reddit.
Production Tracking This web app was designed as a faster, more convenient and mobile-friendly interface to a remotely-hosted FileMaker database.
Stephen King: “The Basement” This website is an interactive game to promote the Stephen King murder-mystery book Mr. Mercedes. Users explore seven web-based “desktops” that simulate the computers used by the killer in the book, unlocking achievements and discovering clues about the book’s mystery.
Replacer This web app was created to provide a faster way to create the sets of documents, mostly contracts, needed at the start of a new project. A set of files are kept as templates, revised as policies and legal language change; and when each new project begins, the set is uploaded to Replacer to be filled in with the new project’s specifics.
Piano Adventures international sites A new content management system and new design was required to handle the bilingual demands of Piano Adventures’ Chinese and Spanish-language sites.
Middlemarch Middlemarch is a film production company specializing in documentaries and educational films. They wanted a website that would show off their body of work in a captivating way. This was achieved with an interactive checkerboard, where hovering over thumbnails slides out films’ titles.
Marquee: Theaters and Showtimes Search Engine Emerging Pictures, a chain of over 500 art cinemas, needed a search engine so that users could find theaters near them and see those cinemas’ titles and showtimes. Since launch in 2010, the site has averaged over 350,000 visitors per year.
Locations Map and Gallery I have created variations of this app over the years to show information geographically, from potential new offices in New York to filming locations for 12 Years a Slave around New Orleans, from locations for the TV series Blue Bloods to research into historical locations for the film True Story.
Voice Survey This web survey made possible a university research project into voice teachers’ relative knowledge about different types of singing.
Degrees of IMDb Like Six Degrees of Kevin Bacon, except that this app connects any two people or companies on the Internet Movie Database, within two degrees of separation. It was built for the company Film Finances to answer the question “who do we know who knows X?”