Michael Richardson =

Skills

Languages

  • JavaScript/TypeScript
  • C#
  • Python

Tools

  • Docker
  • Node.js
  • Angular
  • React
  • Express
  • Selenium
  • Wordpress
  • Bot Framework
  • AWS
  • Azure
  • Git
  • Linux

Databases

  • CosmosDB
  • MongoDB
  • SQLite
  • PostgreSQL

Everything needed to build beautiful, efficient, full-stack web apps and software.

Portfolio

Portfolio

You're here! Building this in React is probably overkill, but I wanted the practice and I leaned a lot building it.

Like many aspiring developers, I built this site to showcase my previous work and let you know a little bit more about me. It's definitely overkill to build this in React, since it's mostly a static site. However, this made it easier to integrate the blog.

  • Uses Node.js, Express, and NodeMailer for Contact form
  • Works in Chrome, Edge, IE, and mobile
  • Hosted on an AWS EC2 instance running Ubuntu
  • 100s on all Lighthouse Audits
    Lighthouse scores
  • Did you find any easter eggs?

read more

Blog

Blog

My blog is part of this portfolio site, but adds enough functionality to warrant it's own project listing

Since my portfolio is built in React, it made sense to add the blog alongside it. This project uses databases more extensively than any of my others and was great for learning more about async/await, MongoDB, and running Node.js servers.

  • All data is stored in and retrieved from a MongoDB server
  • Has a small Admin CMS
    • Login authentication
    • Add new posts
    • Edit posts
    • Add new post tags
    • Preview unpublished articles
  • Articles are filterable by tags

read more

Home Server

Home Server

My home server runs several containers and VMs, including the portfolio that you're viewing now!

I like tinkering and decided to build a home server. It's a very fun, ongoing project and it's mainly allowed me to take full nightly backups of all of my computers and run a lot of other always-on software that I use around my home. I get very excited thinking about new things to add and ways to upgrade!

  • Hosts:
    • This Portfolio Site (in a Docker container)
    • Home Automation Software (Home Assistant)
    • Firewall (OPNsense)
    • Ubuntu VMs
    • File Server
    • Various Media Applications

read more

beerRecommenderBot

beerRecommenderBot

Intelligent web chat bot that provides beer recommendations. Built in under 3 days.

This is an intelligent web chat bot built using the Microsoft Bot Framework, Node SDK v4. It gets user beer flavor preferences and recommends the matching beer style, and then provides a recommendation for a new beer to try and displays where they can purchase it.

  • Uses a machine learning-based service for natural language recognition
  • Implements multi-turn conversations and user interrupts for “help” and “cancel”
  • Uses custom LUIS choice prompt class that first looks for LUIS intents and if not found, prevents a list of valid options
  • Built in under 3 days

read more

Treat Dispenser

Treat Dispenser

PWA with user authorization that controls a self-built and self-programmed dog treat dispenser

This is a progressive web app used to control a dog treat dispenser made with a Particle Photon (similar to Arduino). The treat dispenser can be triggered to dispense via a web app, custom time intervals, and/or a customizable feeding schedule.

  • Full-stack (MEAN) application with user authentication
  • Works in Chrome, Edge, and IE
  • Treat dispenser hardware was programmed by me, using C/C++

read more

FUTpuppeteer

FUTpuppeteer

Auto-clicking bot used to buy and sell players on EA’s FIFA 18 Ultimate Team web app

This is an auto-clicking bot that utilizes Selenium to buy and sell players on EA Sports FIFA 18 Ultimate Team web app. It it my largest project at over 8,000 lines of Python code.

  • Numerous and extensive strategies and customization options
  • Able to run for days without user interaction, sniping and bidding on players
  • Uses randomized delays and off-center clicking to mimic human interactions and avoid detection
  • Has IMAP support, so users can auto-login with 2-factor email authentication

read more

RES Domain Filterer

RES Domain Filterer

Scrapes domains from selected pages of MediaBiasFactCheck and adds them to Reddit Enhancement Suite's Domain Filters

This is a command-line tool written in Python that scrapes domains from selected pages of MediaBiasFactCheck and adds them to Reddit Enhancement Suite's Domain Filters. For example, I used this to hide the most biased and untrustworthy news sources (about 1200 unique domains) so that I no longer see them when browsing Reddit.

  • Supports all bias categories from MediaBiasFactCheck
  • Users can select multiple categories and filter them all at once
  • File loading and saving is done using tKinter
  • Web scraping is done with requests

read more

Projects
About

I've been a hobby developer since the GeoCities and Angelfire days, back when "the Internet" came on a CD, web pages were ugly, and half the text blinked or scrolled. I’ve built my own PCs, ran Ubuntu as my main OS for ~2 years just for fun, flashed custom firmware to my router and smart light switches, wired my whole house up with Cat6, and have automated just about anything I can think of with EventGhost (Windows), Tasker (Android), andHome Assistant (Smart Hub).

Despite always being interested in technology, I earned a BA and MBA in Marketing and spent my first six years of employment as a marketing manager. After ramping up my hobby development projects and self-study, I landed my first software gig as a Support Engineer for Microsoft, which involved more debugging of others' code than anybody should be subjected to. Nonetheless, it was a role that I really thrived in; I love being around code.

Call me a masochist, but I really, truly enjoy banging my head against a wall trying to solve a problem just to get that tiny little rush of endorphins once I figure it out and make things work.

Outside of programming, I enjoy spending time with my family and my dog;  watching either the Cougars or the Sounders;  playing video gamesguitar, or drums; obsessively perfecting coffee; homebrewing beer; or hiking and camping outdoors in the beautiful Pacific Northwest.

I'm results-driven, quick-learning, can code just about anything, and love a good challenge.

Location

  • Seattle

Can To Relocate To

  • Portland, OR
  • Out of Country

Looking For

  • Full-Time Employment
  • Open to Offers

Get in Touch

Whether you have a project you'd like some help with or just want to say hello, contact me and we can chat.

Contact

You broke something. Return the value to true to fix it!

A content update is available.
REFRESH
DISMISS