Richard (falun)
Distributed Systems, Baking, Theater
Richard (falun)
Distributed Systems, Baking, Theater
San Francisco Bay Area
Overview
Work Experience
Staff Engineer / Principal MTS
2018 - 2023
Search infrastructure & distributed databases. Extensive history owning tier-0/1 services. Designed & supported high availability distributed systems, responded to high visibility incidents, migrated PB of data, and was an engaged mentor for interns -> Staff+ engineers. Probably my favorite experience was prototyping a collection management tools I later pitched for a new team to build "for real." This was staffed and eventually opened sourced as the first release of VTAdmin -- https://vitess.io/blog/2022-12-05-vtadmin-intro/. Tech: Golang, Vitess (Distributed MySQL, Consul, PHP, Python, AWS, Memcache, Solr, Java, Scala, Terraform.
Founding Engineer
2015 - 2018
Turbine Labs built a management plane for the service mesh. Initial focus was on proxy (Envoy) configuration management, service discovery, request routing tools, service release processes, and customer-centric observability. Engineering lead for API & business logic work. Built consul & ECS adapters for our service discovery framework (https://github.com/turbinelabs/rotor). Pinch-hit doing some React/Redux dev as necessary. Non dev work included managing our sprint planning and running our post-mortem process. Tech / Skills: Go, (dog)statsd, ES6, React/Redux, Kubernetes, AWS, docker, Reverse proxies (nginx & Envoy), API design, service mesh, service ownership, UX design
Staff Software Engineer
2012 - 2015
Held various roles: Design Shepherd -- provides guidance for new projects to ensure production readiness; Tech Lead of Social Graph Service -- owns business logic around user connections; Core Services engineer at large -- assisting user data migration projects; IC on User Service -- owns user object lifecycle & read/write access to internal clients. Tech / Skills: Scala, distributed systems, cache coherency, project management, Ruby/Rails, service ownership / scaling, etc
Sr Member of Technical Staff
2009 - 2012
VCOps: Distributed system design & implementation work for the 5.6 (2013) release of vCenter Operations Manager. Workstation: Feature development for the Linux Workstation 8 release including portions VM sharing and the remote host stat dashboard. VMRC: Lead Linux developer and API design. Linux VMRC is a browser plugin that exposes terminal access and core VM operations (i.e. power and device) through a javascript API. Initial consumers were products VI Client and vCloud Director; eventually released as a public SDK - https://www.vmware.com/support/developer/vmrc/index.html. Tech: Java, C/C++, gtkmm, API design, various plugin architectures, Maven, Distributed Caching
Graduate Research Assistant
2007 - 2009
Part professor/TA, PM, dev, student mentor. I designed class projects, gave a few lectures, helped manage the lab, reviewed student project proposals, led brainstorming sessions. The GRAs for my lab were pretty much all forced to be jacks of all trades. In the lab I designed a system to track users by WAP association events and then built an API on top to enable application development using passively reported user location. I led a team of 3 students to build this. Java, Perl, MySQL, REST API design, Glassfish+Jersey, SNMP, network management
MTS Intern
2008 - 2008
I was shown the Windows UI for Virtual Disk Mounting and told to implement that feature for Linux Workstation. For the most part I was self-directed with the occasional nudge to the correct team when I had a question or two. This was a fairly straight forward project with just a few tricks to make various internal libraries play together nicely. Completed and ready for QA by the end of my internship and shipped with WS 7.x. C/C++, gtkmm
Software Development Engineer
2006 - 2007
I worked on the Customer Reviews team at Amazon. Maintained and extended the metrics system that monitored my team's performance. Built out metrics monitoring user experience and implemented error-detection/an early warning system that alerted on pipeline failures before the weekly rollups. Experience staffing oncall rotation for a highly visible service. Java, Perl, MySQL, bash scripting
Teaching Assistant
2002 - 2006
Software Engineer Intern
2002 - 2005