Database Engineer2019 - 2019UCSD | University of California San Diego
Technologies: Docker, Elasticsearch, Python, PostgreSQL
- Designed and configured an Elasticsearch cluster including making the decisions pertaining to how Elasticsearch would index and analyze the data in order to maximize search performance and usability. The performance was key due to the quantity of data.
- Deployed the Elasticsearch cluster with Docker and docker-compose using best security practices.
- Ensured that the cluster nodes were distributed on multiple university servers for redundancy and performance.
- Validated data and streamlined the ingestion of data using Python and PostgreSQL.
- Configured an interactive Python interface for university faculty to search and export scientific data using Docker and Python.
- Designed a Python-based data ingestion pipeline to import and index data from many different medical studies.
Software Engineer2018 - 2019Yoshi
Technologies: Python, Ruby on Rails, TypeScript, Ionic, Angular, PostgreSQL, AWS
- Wrote a scraper in Python which collects gas station prices from across the United States daily. Configured this scraper to use AWS Dynamo for data storage and to run as needed on AWS Lambda.
- Integrated mobile application with the Toyota API to access users' vehicles remotely.
- Used the Google Maps API extensively and WebSockets to track and display vehicle locations in real-time. This involved the use of custom Google Maps layovers and pop-ups.
- Worked on a large Ruby on Rails API server for our mobile app.
- Integrated with remote command vehicle APIs (Toyota, OnStar, and so on) using Ruby on Rails to give Yoshi remote access to users' vehicles.
- Wrote extensive unit and integration tests in RSpec. I pushed this company to rely heavily on automated tested and increased testing coverage dramatically.
- Improved our Twilio integration to automatically purchase and enable new Twilio phone numbers, by area code, based on calculations of message delivery latency.
Software Developer2017 - 2018Element Group
- Built a token-sale platform (platform as a service) for companies to sell tokens based on smart contracts on the Ethereum blockchain network. This platform includes a customizable checkout flow for investors to purchase tokens with Bitcoin, Ether, or fiat currency. This platform can also be run on Bitcoin and Ethereum test networks for quality assurance.
- Developed the admin side of the token sale platform for companies to see the investment activity, manage email communications with investors, view analytics, set pricing rules for investor groups, distribute tokens, and more.
- Constructed an onboarding application for customers applying to use Element Group's brokerage services. This application verifies applicants' identities, collects required documents, and integrates with DocuSign for a pleasant user experience. This is a Ruby on Rails application deployed with Docker to AWS.
- Wrote smart contracts in the Solidity programming language which established specifications for the Ethereum-based tokens used in our token sales.
- Developed automated tests for these smart contracts using the Truffle framework.
- Worked within an agile team, with continuous integration and high automated testing coverage.
Freelance Software Developer2017 - 2017BookClicker
Technologies: Ruby on Rails, MySQL, ES6, React, Webpack, Redis, Nginx, Amazon Web Services (AWS), Stripe API
- Created an online marketplace for Amazon authors to buy and sell email promotions. Two weeks after its launch the platform had already seen over $10,000 in gross volume of payments.
- Developed, configured, and deployed a Rails 5 application.
- Integrated various external APIs such as Stripe, Mailchimp, AWeber, and Amazon's Product Advertising API. This API work included OAuth and OAuth 2 specifications.
- Handled all of the DevOps work; configured a Passenger and Nginx server on an AWS Linux Ubuntu box. Redis and Sidekiq were used to manage background jobs. Assets were served through Amazon's CDN CloudFront and site performance was considered heavily.
- Securely stored and encrypted sensitive user data. Followed best practices for web and data security.
Software Developer2014 - 2017BuildZoom
- Developed with Ruby on Rails and followed best practices to write readable, maintainable code.
- Managed MySQL and PostgreSQL databases—building out a data ingestion framework, data modeling, and developing a query optimization to increase the performance of our web application.
- Constructed APIs for our single-page applications as well as APIs to power our data partnerships.
- Built user interfaces which allowed BuildZoom contractors to manage their current projects, communicate with clients, visualize project histories, and manage photo galleries (with AngularJS and jQuery).
- Developed a matching algorithm involving data normalization, stemming, Levenshtein distances, and stop word filtering which has been at the heart of nearly all of our data partnerships with 3rd parties.
- Wrote performant data-processing scripts in Ruby and Python.
- Configured and debugged Elasticsearch (a full-text search engine) indices to improve user search on the site.
- Implemented Google's machine learning Python module (Scikit-learn) to train a classifier and classify building permit data.
- Worked a large Python scraping application to intelligently scrape contractor and building permit data from all over the United States on an ongoing basis. This work also included a data pipeline to sanitize, normalize, and transfer data our Postgres databases.
Physics Teacher2012 - 2013Green Dot Public Schools
- Helped young minds gain an intuitive sense of the physics of the world around them through lab activities and hands-on learning.
Physics Teaching Assistant2010 - 2012Auburn University
Technologies: Fortran, MATLAB
- Gave physics instruction to undergraduate engineering students.
- Assisted students with laboratory assignments.
- Taught as an assistant for four different physics courses.