Bill Yang, Developer in Calgary, AB, Canada
Bill is available for hire
Hire Bill

Bill Yang

Verified Expert  in Engineering

Distributed Systems Developer

Location
Calgary, AB, Canada
Toptal Member Since
January 17, 2017

Bill is an expert in distributed systems and high scalability, with a wide range of experience from web startups, consulting to enterprise and education software. Having increased top-line revenue by 100 million at a unicorn startup, saving a key system from crumbling under load, setting direction and plans for a core part of the product, Bill is looking forward to bring his expertise to new projects.

Availability

Part-time

Preferred Environment

Node.js, Python

The most amazing...

...project I've built is a dynamic delivery fee model while working at DoorDash, that increased the company's revenue by 5% —around 100 million at the time.

Work Experience

Senior Software Engineer | Tech Lead

2019 - 2020
DoorDash
  • Led a cross functional team to expand restaurant availability via dynamic delivery fees, which ultimately led to a 5% or over $100 million increase in revenue by the end of 2020.
  • Worked closely with several other technical leads to design our new microservice architecture and resolve cross-team architectural issues.
  • Led several technical projects extracting various pricing logic from our Python and Django monolith into a new Kotlin and Kassandra-based service, forming a new engineering team around this new domain in the process.
  • Led several other pricing-related projects to support more flexible pricing adjustment for both driving volume and response to regulatory changes.
Technologies: Kotlin, Python, MySQL, Cassandra, Amazon Web Services (AWS)

Senior Software Engineer

2017 - 2019
TuneIn
  • Took part of the team responsible for the majority of our core back-end platform, including systems powering homepage, search, player, and other content-related functions.
  • Led a project from ideation, getting support to completion to improve homepage recommendations, resulting in a 3% increase in conversion.
  • Investigated and mitigated distributed hacking attempts.
Technologies: C#, SQL

Lead Developer

2016 - 2016
Clevertech
  • Created a message-processing system that can scale to millions of messages per day.
  • Migrated our message queue technology from Azure MQ to Amazon SQS.
  • Mentored other developers on the team.
  • Worked on a related front-end application based on React and Electron.
Technologies: Message Queues, Microservices, Node.js, JavaScript

Senior Developer

2013 - 2016
Alberta Ministry of Education
  • Developed a curriculum development application using Angular, C#/.NET, and SQL Server.
  • Resolved various performance issues—primarily related to search and querying complex data.
  • Participated in the Agile transformation of the team and the department.
Technologies: Angular, JavaScript, Microsoft SQL Server, C#, .NET

Solution Consultant

2010 - 2013
DevFacto Technologies
  • Delivered consistently successful software projects, sometimes under pressure.
  • Provided technical advice to the clientc.
  • Advocated engineering best practices like Agile to client teams.
Technologies: Backbone.js, Angular, jQuery, JavaScript, Azure, Git, SQL, C#

Software Developer

2008 - 2010
Upside Software
  • Developed new features and maintained the existing code base with a million lines of code.
  • Provided technical support to implementation teams.
Technologies: JavaScript, SQL, C#

Programmer

2007 - 2008
Idea Market Design Inc.
  • Developed new websites in the Joomla! Framework.
  • Managed the Linux servers at the company and for some of our clients as well.
  • Worked on a data gathering/processing initiative.
Technologies: Joomla, PHP, SQL, Linux

Programmer

2005 - 2006
Seneca College
  • Patched an open source network tool for a specific security problem that we faced.
  • Developed a project management website.
  • Managed server farms and wrote the corresponding documentation for them.
Technologies: SQL, Linux, C, PHP

Time Tracker

The time-entry application is designed with a straightforward approach, utilizing Angular for the front-end development, Node.js to power the REST API, and MongoDB to ensure efficient data persistence and storage. This combination of technologies enables seamless time tracking and management capabilities.

Curriculum Development Application

I worked with a cross-functional team to develop an application digitizing curriculum development process. I was involved in all parts of the development process, and my main contributions included:
- Improving performance of a very complex search functionality.
- Creating a separate public-facing application to allow staged content publishing and a higher-performance consumer app.
- Modifying a TinyMCE editor to support math symbols.

Main technologies used: C#, AngularJS, SQL Server.

Shipping Middleware

I led a team to develop a centralized back-end system for a shipping company. The system is made up of a collection of microservices written in Node.js and acts as a distribution center linking other applications and databases.

My primary contributions include:
- Scaling the system to handle millions of messages per day.
- Migrating our message queue technology from Azure MQ to Amazon SQS.
- Tune-logging to find the optimal point for debugging and performance.
- Diagnosing some product issues under pressure.
- Mentoring other developers on the team.
- Managed client inquiries and requirement changes.

Main technologies used: Node.js, Microservices, Azure Message Queue, AWS SQS.

Google AI Challenge | Ants

https://github.com/analyst74/aichallenge-ants
Developed a game bot to compete in an AI challenge sponsored by Google and ranked 57 out of 8,000+ participants.

Main technologies used: Python, Numpy, Cython, Algorithms Design.

Soccer Field Search

https://github.com/analyst74/rec-search
A simple tool to search for soccer fields in Toronto using a dataset from the Toronto government's open data website.

Main technologies used: Node.js, MongoDB.

Construction Document Management System

Helped build a document management tool for PCL—a large construction firm to share documents between different branches and on-site workers.

Main technologies used: C#, SharePoint.

Upside Contract

I worked on a large enterprise contract management system with a wide variety of functionalities resolving around contract creation and management.

Main technologies used: C#, SQL Server.

Languages

Python, C#, JavaScript, SQL, PHP, C, Kotlin

Libraries/APIs

jQuery, Node.js, Backbone.js, REST APIs

Paradigms

Microservices, Agile Software Development, Microservices Architecture, Concurrent Programming

Storage

Elasticsearch, MySQL, Microsoft SQL Server, NoSQL, Cassandra, MongoDB

Other

Distributed Systems, Scalable Architecture, Message Queues

Frameworks

AngularJS, .NET, Angular

Platforms

Amazon Web Services (AWS), Azure, Linux, Joomla

Tools

Atom, GitHub, Git

2003 - 2006

Diploma Degree in Computer Programming and Analysis

Seneca College - Toronto, Canada

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring