Wesley Moy Software Engineer




Android engineer for Google Currents.

  • Android Jetpack
  • Google Material with the Design Support Library
  • Dagger with internal Hilt-like system



Front-end engineer for Nextdoor.com, the Nextdoor Agency Platform, and internal tools.

Android core engineer and React Native platform engineer.

  • Functional reactive programming: ReactiveX, RxJava
  • Inversion of control: Dagger 2
  • React Native
  • Gradle build system (build system migration from Ant), project modularization
  • JSON (shared preference) and SQLite based persistence
  • Styles/themes
  • Django
  • jQuery, Backbone.js



Front-end engineer for Google Developer Console. The Developer Console replaces the APIs Console and the App Engine admin console as the single interface to all of Google's developer offerings.

Software engineer for the APIs Explorer. The APIs Explorer is an entirely browser-based web app that uses Google's Discovery API to provide a playground for all of Google's APIs.

  • App Engine: Java, Go
  • Closure Tools: Closure Templates, Closure Library, and Closure Compiler
  • AngularJS
  • GWT
  • Perforce-like SCM
  • Buck-like build system



Engineer and Support Engineer on Sencha GXT (formerly Ext GWT). GXT is a user interface toolkit built on GWT (formerly Google Web Toolkit) that provides a variety of user interface widgets and data presentation elements not provided by GWT.

Engineer on the Java port of the AT&T API Platform, a Servlet-based translation of a Ruby on Rails service.

  • GWT, both 1.x and 2.0
  • Sencha GXT 2, GXT 3
  • Ant, Maven
  • Jenkins

Citrix Systems


User Interface Engineer, Synchronizer for XenClient, an administrative management interface to XenClient.

Technologies used

  • Sencha GXT 2 (formerly Ext GWT 2)
  • GWT (formerly Google Web Toolkit
  • CherryPy
  • SQLAlchemy
  • Adobe Flex
  • Flare visualization library for Adobe Flex


University of British Columbia

2004–2009: B.Sc. in Computer Science; graduation with distinction

Specialisation in human-computer interaction, including the principles of HCI, techniques in interface prototyping, and user research and data collection.



Currently undergoing maintenance

Conapp helps people at conferences find each other. In indoor venues and in close quarters, traditional checkin and geolocation apps don't represent fine enough detail for team members to find each other.

By letting users enter their location as free text, updates can be much more descriptive and can include locations not officially part of the venue. For example, a user can update their location as “Panel Room B”, “Hilton Lobby”, or even “Chipotle on 4th”.

Conapp is composed of a Go-based server backed by PostgreSQL, and frontends on web, iOS, and Android. iOS and Android users receive push notifications about location updates. (The backend also supports SMS through Twilio, but this option has been retired.)

This resume

This resume is built on Bootstrap 3 and is available on GitHub.

Talking Stick

Talking stick is a Go App Engine app developed as a 20% project to facilitate the polite sharing of resources at Google. There are often shared test instances of apps like the Developer Console. By using Talking Stick, an engineer can claim this instance for exclusive use for a configurable amount of time. This triggers notifications via an internal chat system and email.

JIRA Integrations for IRC

This IRC bot watches conversation go by in channel and expands JIRA tickets for configured projects when they are mentioned.

This bot was written in Python. It uses suds to access resources from the JIRA SOAP API.

JIRA HipChat bot

This IRC bot polls JIRA Studio, later Atlassian OnDemand, for changes in issue status and for the status of automated builds.

This bot was written in Python. It originally used urllib2, then later requests, both to request resources from the JIRA REST API and to send messages using the HipChat API.


JForum is an implementation of a basic web forum in Java Servlets/JSP. We developed it in a four-person team as the final project for Advanced Software Engineering (CPSC 410 UBC) for the fall 2008 term.

The system uses MySQL, Java EE (Servlets, JSP, JDBC), and HTML, CSS, and JQuery on the frontend.

JForum is a basic forum with simple features, such as sections, topic threads, moderation, user authentication, and user profiles. JForum became an exercise in Java Servlet/JSP, HTML, CSS, and JavaScript, while simultaneously challenging the team to write best-practice code that handles requests in a straightforward MVC manner.

We developed under the waterfall model, including writing of specifications and user testing (grading).


This is a BitTorrent-like peer-to-peer filesharing system that is more robust to cases where sources for a piece of a file are scarce or missing. We use the Parity Volume Set format – popularised in Usenet binary newsgroups – to generate check segments that can act as wildcards. These can correct for any missing segment of that size that is no longer available from any peer on the network. Once a full set of source files is obtained, any check segments not downloaded can be generated locally. Best of all, this system could be overlaid over existing protocols, such as BitTorrent.

I worked on a team of three students to develop Rareshare as the Distributed Systems (CPSC 416) term project for fall 2008.

More code


My contributions on StackOverflow

My writing on Medium


Head First Design Patterns

AngularJS (O'Reilly)

Hacker News


Comfortable in Java, Python, Go, JavaScript

Have tried Objective C, Haskell, Prolog


Comfortable using GWT, Sencha GXT, servlets, Swing, Django, Jinja 2, Flask, AngularJS, Closure Library, Bootstrap

Have some experience with SQLAlchemy, JDBC


5684 Bay Street
Apartment 456
Emeryville, California


+1 415-484-6749