Skip to content

jbaugh/me

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 

Repository files navigation

Jarrett Baugh

I love to solve problems and learn new things. I enjoy learning new programming languages and challenging myself. I'm especially interested in fault tolerance and high scalability architecture.

Technical Skills

Languages: Ruby, Elixir, Go, Javascript/Typescript, Python

Web: Rails, Phoenix, Node.js

Datastores: PostgreSQL, MySQL, Dynamodb, Redis, ETS

Professional Experience

ModeMobile, Staff Software Engineer

September 2019 - present
  • Primarily Ruby on Rails with Node.js applications (mostly NestJS)
  • Reduced costs by optimizing database queries, code and architecture
  • Built robust, scalable systems using AWS (EC2, ECS(Fargate), Kinesis, Lambdas, SQS, Dynamodb)
  • Increased API performance and reliability
  • Led backend team to more efficient workflow, code quality improvements, better team cohesions
  • Project: Ad mediation API
    • Scalable, simple and fast NestJS application deployed on EC2 with autoscaling
    • Served ads based on user data (demographics, ad limits, placement)
  • Project: Charge screen
    • Allowed users to earn points while charging their phone
    • Built a solution that scales with our user growth
    • Built security into the solution to prevent fraud
    • Uses redis heavily to keep it fast and efficient
  • Project: Influencer experience improvement
    • Architected a solution to improve system performance while also improving the experience for power users
    • Worked without issue since implementation
  • Project: Performance improvements
    • Re-architected code so that we could remove unnecessary database locks
    • Improved third party integrations to eliminate unnecessary database updates (autovacuums became a problem)
    • Improved transaction code so that user updates were quicker
    • Added caching using redis
    • Improved database queries (examples: adding indexes, reworking queries based on performance tests, changing database schema to better fit our use case)
  • Project: Revenue reporting tool
    • Integrated with advertising partners to collect revenue data in one place
    • Built a fault-tolerant application to better handle third party API failures
    • Worked with product team to integrate into AWS QuickSight for better data exploration

Caremessage, Software Engineer

March 2017 - September 2019
  • Wrote scalale code
    • Processed and worked with millions of records
    • Use background processing to interact with 3rd party APIs and process data
    • Flexible API could join several tables, and response must be kept low
  • Secure code
    • HIPAA compliance to protect privacy of patients
    • Use of brakeman and other audits to maintain security
  • Reliable code
    • Medical offices depend on this application so reliability was a priority
  • Worked on upgrading Rails 4 to Rails 5
  • Maintained different public API versions
  • Worked with Twilio to send text/voice messages, process responses
  • Project: Appointments
    • Worked with existing feature foundation to extend and improve usability
    • Improved performance by reworking queries, caching appropriately
    • Balanced product requirements with engineering requirements
    • Delivered features on time while slowly reducing technical debt
  • Project: File center
    • Improved usability by reducing some possibility of user errors by properly handling duplicate data, invalid data, etc.
    • Improved performance by using business rules to catch validation issues before heavy processing

Leaseful, Lead Software Developer

April 2016 - December 2018
  • Python (Django) application converted to Ruby on Rails
  • Test Driven with emphasis on maintainability
  • Reduced page load time from ~3 seconds to ~200ms
  • Integrated with Braintree (merchant accounts)

BiggerPockets, Software Developer

October 2013 - March 2017
  • Rails 3 converted to Rails 4
  • Wrote scalable, secure and reliable code to handle the rapid traffic growth
  • Worked closely with billing system using Stripe
  • 'Owned' many large projects which were core features of the site
  • Project: Calculators
    • Created calculator tool to help customers make investment decisions
    • Used TDD to ensure accuracy and reduce unnecessary complexity
  • Project: Hard Money Lender System
    • Built a self-serve subscription system for customers
    • Reduced overhead and increased revenue
  • Project: Book Order System
    • Built a system for managing book orders throughout the order's life cycle: purchasing, fulfillment and shipping
    • Improved productivity of team while reducing human errors

Sleepy Giant, Software Developer

January 2012 - October 2013
  • Rails 3 and Rails 4
  • Worked closely with clients (game development studios) to build web sites, billing integrations, game authentication servers and more
  • Integrated with many billing and game APIs to handle the international market
  • Architected several new projects with consideration of expected traffic, reliability needs, client goals and development time
  • Project: Animal Jam
    • Maintained and extended existing site
    • Developed and executed the localization process
    • Integrated with several payment processors to allow customers many ways to pay
    • Provided a robust, reliable and performant API for game servers to interact with
  • Project: ESO
    • Wrote a fast game authentication server to handle consistent and burst traffic
    • Oversaw routine security and performance audits
    • Architected the application into scalable services with fault tolerance in mind

RealPractice, Software Developer

July 2010 - January 2012
  • Helped build new platform in Ruby on Rails
  • Built automated testing framework using Java and Selenium
  • Maintained existing PHP applications (CakePHP / SilverStripe)
  • Project: Client Workflow System
    • Scheduling system for managing recurring or one time events
    • Email parsing using (basic) natural language processing
    • Integrated with their phones and could connect calls from leads to clients
    • Fault tolerant design
  • Project: Website Builder
    • Drag and drop design (using some jQuery UI but also custom plugins)
    • Site was made up of components which allowed very rich designs
    • Satisfied ease of use requirements while allowing custom building by internal admins

Side Projects

Fundraising Site
  • Written in Elixir with Phoenix
  • Supports local schools with fundraising challenges
  • Team, member and event management including donation goals and rewards
  • Inspired by a family member's struggle to find good, affordable software to meet their needs
Online Game Server
  • Written in Go
  • Networked server (using sockerts) supporting clients playing an online game
  • Uses channels for event based architecture
  • Fully featured game including combat, leveling, spells, items and more.

Education

University of California, Irvine
BSc in Computer Science

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published