Background


I'm a Software Engineer at Stripe based in Ottawa, and hold a Bachelor's Degree of Applied Science in Electrical Engineering from the University of British Columbia.

I spent the first five years of my career working in the Financial Services Industry for Morgan Stanley as a Technology Associate. During my time there I became familiar with full stack development as I was often responsible for designing and implementing all layers of the applications. I primarily worked with Java/Spring for building the web services, on top of a Sybase Database, and ExtJS frontends. The final project I worked on was the most interesting - it was an Order Status application which aggregated trade information across different asset classes in real time. This was my first opportunity to act as a lead developer and exposed me to a Scala backend using the Play/Akka framework. I was primarily responsible for the frontend which was built in AngularJS and leveraged web sockets for realtime updates.

I then joined Shopify as a Front End Developer where I helped extract the Partner Dashboard into it's own service. I got familiar with Ruby on Rails and played a significant role in providing direction for the frontend architecture as the company transitioned to React.

I was fairly quickly promoted to Senior Front End Developer and built the Experts Marketplace. This project gave me an opportunity to get much more comfortable with React and Redux. I also started transitioning to more of a backend developer and was responsible for designing and modelling new product features. This meant that I spent a lot more time building out GraphQL services and became very familiar with Elasticsearch which was leveraged quite heavily for a number of aggregation and search features.

I was eventually promoted to Staff Developer and took the interest I got from working in the backend on GraphQL services and drove an initiative to build out the public GraphQL Partner API. It received a lot of excitement and praise from the partner community, and has new features actively being developed on it.

Most recently, I've decided to join Stripe to work on the Express product as a Backend / API Engineer. I've always been very impressed with Stripe as a company and product and I'm really excited to join.

Work History


Stripe logo

Software Engineer

Stripe Remote

Joined: Mar, 2022
2.3 years

Stripe Connect is the fastest and easiest way to integrate payments into your platform or marketplace. Stripe's APIs enable you to build and scale end-to-end payments experiences, from instant onboarding to global payouts, and create new revenue streams – all while Stripe handles payments KYC.


Shopify logo

Staff Developer

Shopify Ottawa, ON

Promoted: Mar, 2020
2.0 years

Staff Developers use their expertise and passion to multiply the overall output of their development team. They're problem finders. Staff Developers help drive the product vision to its implementation. You and the team will design and build technically innovative solutions that empower all teams at Shopify to build powerful and resilient distributed cloud software. Merchants that depend on Shopify for a highly scalable, performant, and reliable platform benefit directly from the work you do. You will maintain a high bar for quality and think deeply about empowering other developers. You’ll also be hands-on in our code and will contribute technically.

  • Built the public GraphQL Partner API enabling Shopify Partners to programmatically access the data found in their Partner Dashboard.
  • Leveraged GraphQL batching to mitigate issues we saw with high throughput leading to high average response times.
  • Worked with several product teams to define a schema which accurately reflected the complex nature of the different domains surfaced through the API.

Shopify logo

Senior Front End Developer

Shopify Ottawa, ON

Promoted: Nov, 2017
2.3 years

Experts Marketplace aims to connect Merchants that need assistance with Experts that match their needs. Shopify is in the unique position of having both the Merchant and fantastic Partner ecosystem. This enables us to intelligently match Merchants who want to focus on their business with Partners that can assist with Technical expertise. This product refresh started as an experiment I was a part of and was ultimately involved with the complete development of a highly complex system connecting merchants with partners to help solve their problems.

  • Built a dynamic form for collecting scope of work as well as inputs into a matching algorithm using React and Redux.
  • Modelled and implemented the Review system leveraging Elasticsearch for multi-dimensional aggregations.
  • Modelled and implemented the conversational interface including a proxied email system leveraging SendGrid to support responding to emails directly.
  • Built an invoicing tool enabling partners to charge merchants directly through Shopify which has supported millions of dollars being exchanged.

Shopify logo

Front End Developer

Shopify Ottawa, ON

Joined: Feb, 2017
9 months

Shopify has one of the largest front end architectures in the world, and our front end development team works on making our client-side scalable, approachable, and an exceptional experience for hundreds of thousands of shop owners across the world. In addition to building and maintaining our HTML, CSS, and JavaScript architecture, front end developers build both new product features and developer-facing tools. Their goal is to make the complex approachable for merchants, and to enable the rest of our R&D organization to build UI of the highest code quality and best user experience possible.

  • Extracted the Partner Dashboard into its own service while migrating to the new Shopify Polaris design system.
  • Played a significant role in providing direction for the frontend architecture as the company transitioned to React.
  • Gained familiarity with Ruby on Rails.

Morgan Stanley logo

Technology Associate

Morgan Stanley Montreal, QC

Joined: Aug, 2012
4.5 years

Wealth Management Technology is the technology department responsible for the design, development, delivery and support of the technical solutions provided to Morgan Stanley's large community of Financial Advisors and their retail Capital Markets Trading Desks. My main responsibility has been to develop the new features & enhancements requested by the Business Unit, and I've also re-designed the build infrastructure to improve the stability and reliability of the application.

  • Lead developer on the Order Status application. Written in AngularJS and used by ~25,000 FA's, this application provides real time updates on trades across all asset classes using WebSockets.
  • Designed and developed a system to process 2 Million Monitor Reports. Reduced the existing processing time by a factor of 100 using logical batching, MQ, and batch JDBC operations.
  • Built a custom Sleeved Grid ExtJS component supporting animations for displaying Scheduled Reports.
  • Designed and Implemented the Project's Continous Integration Environment using Jenkins which handled testing, building, and deploying the application.
  • Introduced Unit Tests to the front end code base using Karma/Jasmine test Frameworks.
  • Introduced End to End Tests to the front end code base using the Protractor Framework.

Skills


  • Backend
    Ruby on RailsNodeJSRSpecGraphQLRESTMySQLPostgreSQLElasticsearchRedisKafka
  • Frontend
    TypescriptReactJestCypressReduxNextJSAngularJSExtJSjQueryChrome Extension
  • Build/Development Tools
    AWSVercelDigital OceanHerokuesbuildWebpackJenkinsCircleCIGit
  • Observability Tools
    SplunkSignalFxGrafanaDataDogNew RelicBugsnagSentry

Education


University of British Columbia

Vancouver, BC

Started: Sep, 2007

Completion: May, 2012

  • Bachelor of Applied Science in Electrical Engineering Nanotechnology and Microsystems
  • Enrolled in EECE Project Integrated Program

Technology Analyst Program (TAP)

Mallon & Associates Manhatten, NY

Started: Aug, 2012

Completion: Nov, 2012

  • Received intensive training from Mallon Associates instructors on a variety of topics including OS’s (Linux, Windows), C, C++, C#, Java, Python, Perl, and SQL (Sybase & DB2).
  • Gained a global network of peers, since employees from Europe, Asia, and NY all took part in the training together.
  • Worked on a project for displaying customized metrics in a team of 3 sponsored by the Retail Structured Products Business.

Awards


ROC Award (Recognition of Outstanding Contribution)

Morgan Stanley

Awarded on: April, 2015

ROC Awards recognize the high quality and excellent work specifically when it comes to demonstrating or driving Innovation, Collaboration, Resourcefulness, Client Service & Support and Operational Efficiencies. Specifically I was recognized for dedication to educating team members and improving the development life cycle.


Technical Guru

Mallon & Associates Training

Awarded on: Nov, 2012

Was nominated by the other ~50 students as the Technical Guru of that class.

Publications/Presentations


Presented on: Jan, 2016

Delivered an AngularJS workshop at the Canadian Celebration of Women in Computing conference where I explained the fundamentals of AngularJS through an example of recreating the Netflix browse page.


Published on: Feb, 2008

A short math tutorial on finding the intersection point of a line and plane shared on Youtube which has received over 25,000 views.