web development
A web-based adaptation and expansion of Words With Friends game for 4th - 8th grade students to use in the classroom.
Followed separation of concerns (SoC) design principle to create Page, Widget, and WidgetView structures using JavaScript inheritance patterns to ensure modular and componentized codebase.
Constructed tutorial system to transform 80+ steps in JSON data into visual displays mimicking game actions.
Adapted Power Words page to use Hogan templates for various game states as student 'unlocked' definitions.
Recognized mouse hovering over tiles using JavaScript event listeners, adding highlights built with HTML5 and CSS3 as a gameboard object to ensure proper scaling and placement within board.
Implemented UI/UX reconception design using LESS, configuration files, and new assets to overhaul game look and feel while maintaining backwards compatibility with commercial codebase.
Uber surge pricing monitoring and visualization platform displaying data for user-selected locations over a week's time.
Queried the Uber API for ride prices, using Google Maps to extrapolate sample routes from individual points.
Managed data using Ruby on Rails to track interrelations of locations, price queries, price results over time.
Deployed to Heroku, curated records in PostgreSQL, and migrated database to new Ubuntu "Cedar-14" stack.
Architected company site using AngularJS, with custom controllers to render home, contact, and about views.
Collaborated with graphic designer for re-branding and implementation of mockups using Flexbox and LESS.
Managed version control of development using Perforce for improved handling of graphics and binary files.
Classroom feedback tool allowing instructors to poll students confidentially and display aggregate results publicly.
Leveraged Ruby on Rails to control app logic, to integrate data into views, and to facilitate RESTful routing.
Made use of ActiveRecord to manipulate interrelated database tables for users, courses, polls, and poll replies.
Integrated Twilio API to send poll prompts and process poll replies of 0-5 or long-form text via SMS.