Personal details

Richard A. - Remote

Richard A.

Timezone: Pacific Time (US & Canada) (UTC-7)

Summary

I'm a software engineer for Uber with a specialty in backend systems and infrastructure engineering, but I like (and dabble) in all types of programming.

Computer science and programming are my passion, and I love spending my free time learning new things and then taking the difficult things that I learned and distilling them down so that others can learn them in a more effective manner. Almost nothing is higher leverage than teaching others, and that really motivates me.

Work Experience

Software Engineer
Uber | Nov 2015 - Present
Python
Node.js
Flask
OAuth
Redis
Cassandra
OAuth 2.0
Tornado
Goalng
I spent the first 18 months of my career at Uber on the Developer Platform team in San Francisco working on externally facing API's, our developer platform itself, and authentication mechanisms. Thinks I worked on during that time: 1) External APIs 2) OAuth servers 3) Single Sign On implementation 4) Large migration from old Flask/Python/MySQL service --> Golang/Cassandra 5) Image processing service that handles millions of images per day Technologies I used: 1) JavaScript (some frontend, but mostly backend NodeJS) 2) Python (Flask/Tornado) 3) Golang 4) Cassandra 5) Redis Some of the services I worked on at that time handled hundreds of thousands of requests per second. After that, I switched to the Observability team in NY which is a backend infrastructure team where we handle all of Uber's metrics data. At the very edge of our infrastructure we're receiving over 500 million datapoints per second. I still work on this team and I spent the vast majority of my time developing M3DB: https://github.com/m3db/m3db which is our custom open-source time-series database that implements streaming timeseries compression similar to the Facebook guerilla paper. Technologies I used: 1) Golang 2) etcd (similar to zookeeper) 3) Cassandra 4) Redis

Personal Projects

2017
Python
React Native
Redux
Go (Golang)
Hyperdash is a tool for monitoring machine learning jobs from your phone.
2018
Database
Go (Golang)
M3DB is an open-source time-series database that I work on at Uber where we use it to store all of our time-series metrics for monitoring and alerting purposes.