Simple conversion to Word doc of

Michel Charlton

  • Objective
  • Summary
  • Experience
  • Education
  • Technical Skills
  • FAQ
  • About Me
  • Contact

Objective

I'm currently seeking a position of leadership in an Ottawa-based company that values investing in technical excellence.

Summary of Qualifications

  • Experience building engineering teams
  • Track record delivering scalable web services with high performance and stability requirements at both Microsoft and Google
  • Broad technical experience coding in multiple languages, including Java, C# and TypeScript
  • Financial experience working at RBC, Morgan Stanley and BlueCrest Capital
  • Entrepreneurial, self-reliant, and works well as an individual contributor, team member or team leader
  • Excels at communicating with non-technical audiences

Experience

Scripps Networks Interactive

Software Development Lead (Contract)

Media - Content Delivery & Technology

Remotely from Ottawa, Canada

10/2014 - Present

  • Led an awesome remote full-stack development team. Collectively, we:
  • Expanded the media ingest workflow to accept media from both tape-base specialized hardware and cloud-based file transfers
  • Migrated a variety of legacy ingest services into a micro-service architecture
  • Implemented a Task Dashboard service to gracefully transition from manual processes to automation
  • Expanded the media asset management system to support social media and digital distribution
  • Replaced the close-caption embedding workflow
  • Implemented a revision service to track the change history of ingested media
  • Were first adopters in the company's cloud migration effort.
  • Were early adopters of the company's TypeScript/Angular 2+ effort.
  • Java
  • TypeScript
  • Angular
  • Jersey
  • JMS
  • Spring Boot
  • Spring Data
  • AWS

Royal Bank of Canada

Software Development Lead

IT Finance Core

Toronto, Canada

11/2013 - 10/2014

  • Led the development of the Profit and Loss reporting system for RBC Capital Markets' worldwide operations
  • Made significant contributions towards the greater Core team's platform-based strategy
  • Mitigated risk by soliciting feedback from the business early and often using demos and prototypes
  • Hired contractors. Worked with HR to improve contractor procurement process
  • Angular
  • Java
  • SQL
  • Oracle

Morgan Stanley

Software Consultant (via Sugar Maple Ltd)

OTC Exotic Derivatives

London, England

11/2012 - 10/2013

  • Helped implement a service to accurately capture risk positions taken by the OTC Exotic Derivatives trading desk for deal-related payments. Deployed in London, New York and Hong Kong.
  • Worked on multiple stabilization projects on the TX core engineering team
  • Conducted a technical cost assessment of the TX technology stack, resulting in technical recommendations geared at cost reduction
  • Java
  • Scala
  • SQL
  • Spring
  • JBehave

Ticket.com

Engineering Director, Co-Founder

London, England

1/2010 - 10/2012

  • Responsible for all technology decisions in the firm
  • Hired a mixed team of local full-time and remote contract developers
  • Architected and implemented a scalable multi-tiered e-commerce website that processed secure payments and aggregated ticket inventory from multiple affiliate feeds
  • Represented engineering in quarterly reviews with our investors
  • Led Agile sprint process
  • Contributed daily to the development process
  • Java
  • Scala
  • SQL
  • Memcached
  • In-memory HSQLDB
  • Amazon AWS

BlueCrest Capital Management LLP

Lead Engineer

Systematic Trading, Data Platform

London, England

11/2008 - 1/2010

  • Stabilized the network of legacy data services that the existing systematic trading platform depended on to trade over $9.5B worth of assets
  • Architected a replacement Data Inventory Management System (DimSum) to provide a reliable, maintainable alternative that could scale to meet the demands of their next generation trading systems
  • Hired a mixed team of local full-time and remote contract developers
  • Trained a data operations team to take over day-to-day support
  • C#
  • Vertica

Google

Lead Engineer

The Engineering Underground

London, England

8/2007 - 10/2008

  • Founded an internal developer community within Google
  • Led an EMEA-wide cross-functional initiative of 100+ engineers and 100+ sales people over 25 offices
  • Secured the support and managed budget from Sales and Engineering VPs
  • Implemented project tracking infrastructure to capture requests, encourage collaboration and measure impact
  • Launched an internal data pipeline service to enable rapid development of analysis and reporting projects
  • Successfully lobbied for policy changes to empower and reward engineers
  • Delivered a variety of projects that increased productivity and generated significant revenue
  • Introduced C# coding style guidelines in to Google codebase with Jon Skeet
  • Java
  • C#
  • Python

Google

Software Engineer

Google Mobile Load & Performance Tech Lead

London, England

2006 - 2008

  • Participated heavily in hiring and mentoring to build the London engineering team (Ranked 4th for most interviews given among Google engineers in Jan 2007)
  • Implemented a performance monitoring service that ran a battery of simulated mobile client requests against all mobile-supporting Google services
  • Developed a model-based testing service that tested mobile applications on Blackberries by remote control
  • Hosted European Testapalooza internal engineering mini-conference
  • Gave multiple technical lectures on performance tuning
  • Java
  • Java ME on Blackberry
  • Bigtable

Macadamian Technologies

Software Engineer

Telephony Server Contract for Nortel Networks

Ottawa, Canada

2005 - 2006

  • Implemented support for SIP protocol and Voice over IP features for Nortel's small business telephony switches.
  • Java

Microsoft

Software Design Engineer

Redmond, WA, USA

2001 - 2005

MSN Ads Performance Testing

  • Analyzed and made recommendations to improve the performance and stability of MSN's data storage and ad delivery servers
  • Designed and ran realistic simulations of system components
  • Wrote efficient tools to drive simulations, analyze and present results
  • Mentored new employees and peers on performance testing methodologies
  • Microsoft Training courses:
  • Dale Carnegie Leadership Course (2005)
  • SQL Performance Tuning and Optimization (2004)
  • Advanced C#: (2005)
  • Writing High Performance C# .Net Web Applications (2003)
  • Windows Debugging (2002)
  • C++
  • C#
  • SQL
  • VB.Net
  • JavaScript
  • Perl

FlightScape

Software Developer

Flight Safety Systems

Ottawa, Canada

1998 - 2001

  • Participated in all aspects of the development and maintenance of the FlightScape's Recovery Analysis and Presentation System (RAPS) used by Transportation Safety Board investigators for flight data recorder analysis
  • ANSI C
  • HP-UX
  • Starbase

Education

Carleton University

Bachelor of Engineering, Computer Systems

Ottawa, Canada

1996 - 2001

  • Senior thesis: Navigation Systems for Autonomous Robotics
  • 2000, 1999 Canadian Millennium Scholarship
  • 1996 Carleton University Alumni Fund Entrance Scholarship.

Technical Skills

Languages (Fluent)

  • Java
  • Javascript
  • Typescript
  • Scala
  • C
  • C++
  • C#

Languages (Experienced)

  • Python
  • PHP
  • Perl
  • Bash
  • HTML
  • CSS
  • VB
  • T-SQL

Frameworks

  • Angular
  • React
  • node.js
  • npm
  • Spring Boot
  • Spring Data
  • Jersey
  • Hibernate

Databases

  • MySQL
  • Bigtable
  • Microsoft SQL Server
  • Vertica

Testing frameworks

  • EasyMock
  • JUnit
  • NUnit
  • Mockito
  • Specs
  • Cucumber
  • Selenium
  • WebDriver
  • Protractor
  • Jasmine
  • JBehave

Version control systems

  • git
  • Perforce
  • SVN
  • CVS

Platforms

  • Ubuntu
  • .Net
  • Windows
  • HPUX
  • Linux
  • Blackberry
  • Android

FAQ

What's the key to good software?

Simplicity. It's the common denominator of all the conventional best practices of readability, testability, modularity, reusability, separation of concerns, ease of refactoring, etc... Even performance, which is often used as a rationalisation for complexity, becomes a false economy as soon as a some underlying assumption is violated. The fastest systems I've ever worked on have all been the simplest.

How many people have you managed?

At Ticket, I managed a team of 11. A core team of 6 local developers, plus 2 full-time remote, plus 3 piece-work contractors.

What's your language of choice?

I'm honestly very language agnostic. I have coded professionally in ANSI C, C++, Java, Scala and scripted in TypeScript, Javascript, Python, Perl and Bash. Every language has it's strengths an weaknesses. Provided the language is appropriate for the task at hand, it's all the same to me.

That being said, I tend to default to Java for the robust and mature set of tools and libraries that are freely available. I'm quite impressed with TypeScript for UI work.

What's the most financially sensitive system you have worked on?

I had an occasion to work on Google's Ads database which is responsible for recording all of Google's ad revenue transaction as they come in. At $37B/year, this equated to a consistent flow of $4.2M an hour every hour. Any interruption was money that Google wasn't getting back.

What's the biggest system you have worked on?

My first code change at Google was to their global load-balancing system, through which all Google traffic flows.

All of it.

Why did you leave...
RBC

To move to Ottawa. Although it was also not a good culture fit.

Morgan Stanley

To move to Canada after my son was born.

Ticket.com

Although we had successfully built a service that user's liked and were selling at volumes that otherwise would have made us viable, we were locked out of access to ticket inventory at margins that could support our business.

BlueCrest

One of the main reasons I joined BluesCrest was to be at the centre of a business rather than in a remote office. Within a month of joining, they announced that they were moving their headquarters to Geneva. C'est la vie.

Google

At the time, Google had issues in London with compensation, and visibility of achievements for remote employees. Since my departure, the compensation issue has been corrected, and I've been told that I would have received a Founder's Award for my efforts had I still been there to receive it. Sadly they don't give out posthumous awards.

Macadamian

To join Google. I enjoyed working at Macadamian, but Google was too good an opportunity to pass up.

Microsoft

My departure from Microsoft had more to do with leaving the U.S. due to Visa provisions that prevented my wife from working. Despite it's reputation, it was an excellent employer.

About Me

I'm the proud father of two crazykids.

I like to travel. I've lived in 3 countries, and travelled to about 30.

I'm fluent in English and was once fluent in French.

I met the Queen and David Hasslehoff at Google.

My first code change at Google was to their global load-balancing system (through which all Google traffic flows).

I hosted London Barcamp 3 with Ben Laurie.

I love to cook.

I held a Guinness World Record for Syrtaki Dancing.

Contact

For anything employment related, I prefer to be contacted via my linkedin profile

You can find a Word version of this document here.