Ted Middleton, Developer in Vancouver, BC, Canada
Ted is available for hire
Hire Ted

Ted Middleton

Verified Expert  in Engineering

C++ Developer

Location
Vancouver, BC, Canada
Toptal Member Since
July 9, 2020

Ted is a software developer and programmer with 20 years of professional programming experience and close to 25 years of experience programming in C and C++ and almost as long in Python. He enjoys finding clean solutions and producing high-quality, high-value code. Ted also excels at porting and building maintainable cross-platform software and is skilled as a runtime-performance optimizer. In short, the software that Ted writes just works.

Portfolio

NDT Solutions LLC
C++, Software Architecture, Architecture, Qt, Desktop App Development...
Integrated Cinematics
C++, Unreal Engine 4, Unreal Engine 5, C++17, Windows, Windows PowerShell
Fortune 500 Data Science Software Company
C++, Python, C++17, Desktop App Development, Windows, Windows PowerShell

Experience

Availability

Full-time

Preferred Environment

JavaScript, Python, C++, Linux, C, Rust, Linux Kernel, C++17

The most amazing...

...thing that I've developed was a social lobby engine for a game based on coroutines; it let us write a social lobby with just two developers rather than 20.

Work Experience

Senior C++ Developer

2023 - 2023
NDT Solutions LLC
  • Developed a desktop application that performs and analyzes non-destructive scans of materials using eddy current and ultrasonic sensors.
  • Scoped out and managed performance requirements for scan data analysis based on customer expectations.
  • Architected the application's next-generation data presentation framework, which managed large-scale scan data in a set of responsive, high-performance Qt widgets.
Technologies: C++, Software Architecture, Architecture, Qt, Desktop App Development, Mathematics

Software Engineer

2022 - 2023
Integrated Cinematics
  • Programmed single-handedly an MVP Unreal Editor plugin that carried the startup company to their 1st paying customer.
  • Worked with customers to diagnose network and graphics issues with distributed Unreal wall-display systems.
  • Collaborated with company founders to build out our development team and hire top-notch C++ developers.
Technologies: C++, Unreal Engine 4, Unreal Engine 5, C++17, Windows, Windows PowerShell

Software Engineer

2021 - 2022
Fortune 500 Data Science Software Company
  • Closed dozens of customer-critical defects with high-quality, maintainable fixes.
  • Oversaw code reviews for third-party non-Toptal contractors.
  • Solved complex, long-standing customer-affecting problems and bugs related to low-level platform issues and third-party software defects.
Technologies: C++, Python, C++17, Desktop App Development, Windows, Windows PowerShell

Software Engineer

2020 - 2021
Microsoft
  • Diagnosed and fixed user-critical crash defects in a triple-A Xbox One game.
  • Assumed responsibility for infrastructure defects in localization logic, especially for glyphing and right-to-left languages.
  • Created front-end logic-matched multiplayer games.
Technologies: C++, Unreal Engine 4, Unreal Engine, Xbox One, Xbox, Plugins, C++17, Windows, Windows PowerShell

Software Engineer

2017 - 2019
Arista Networks
  • Implemented diagnostics tools that allowed network administrators to view low-level switch chip registers in data center routers to track network irregularities.
  • Designed and implemented sampling logic for debugging register functions in low-level switch chips in data center routers to alert network admins of peculiar network traffic errors.
  • Oversaw the main branch's health and triaged build breakages.
Technologies: Python, C++, Networks, Linux Kernel, GDB, Assembler x86, x64 Assembly, C++17, Embedded Systems, Embedded C++, Embedded Software

Software Engineer

2011 - 2017
Teradici
  • Optimized a sophisticated wavelet video codec with ARM-NEON code to run on a lowly Cortex-A8 CPU. This project achieved an impressive eight times performance improvement and was an enabling technology for a line of general-purpose thin-clients sold by HP.
  • Wrote a Windows, Linux, and macOS remote desktop client based on Qt.
  • Implemented a MacOS driver that made USB device access possible for the company's macOS remote desktop solution.
  • Spearheaded the company's migration from Subversion to Git and SCons to CMake.
Technologies: Qt, JavaScript, Java, Python, C++, Boost.Asio, C, Linux Kernel, GDB, Assembler x86, x64 Assembly, Firmware, Embedded Systems, Embedded C++, Embedded Software, Embedded C, Android, Real-time Operating System (RTOS), System-on-a-Chip (SoC), Desktop App Development, Windows

Software Engineer

2005 - 2010
Slant Six Games
  • Architected and developed an asynchronous network simulation system for network gameplay in a real-time strategy game.
  • Developed a coroutine-based online lobby system for match-making and player chat. Compared to the previous game, this lets us cut out an enormous amount of boilerplate code and developer time.
  • Diagnosed, mathematically characterized, and mitigated the effects of aggressive vertex quantization with rendering glitches and seams. This was a huge memory saving.
Technologies: Python, C++, C, Embedded Systems, Embedded C++, Embedded Software

Software Engineer

2002 - 2005
Electronic Arts
  • Shipped three AAA console video games in as many years, each achieving at least an 80% Metacritic rating.
  • Worked with artists to identify and rearchitect deficiencies in team art tools, especially related to rendering.
  • Implemented vehicle physics, especially related to vehicle damage.
Technologies: Python, C++, Embedded C++, Windows

Desktop Software Clients for the Teradici PCoIP Protocol

http://docs.teradici.com/find/product/software-and-mobile-clients
I wrote most of the original implementation for the Qt-based Windows, macOS, and Linux Teradici PCoIP clients, including the HTTP-client broker logic, the login flow logic, and the in-session window management.

Mainframe: Column-storage Dataframe for C++

http://github.com/tedmiddleton/mainframe
Mainframe is a data-science dataframe tool written in C++, with the flexibility and power of Pandas, but the blistering speed of C++. It uses advanced C++ metaprogramming techniques to provide an ergonomic interface for developers and data scientists while maintaining unmatched runtime performance.

Languages

C++, Python, Rust, MIPS, Assembler x86, x64 Assembly, C++17, Embedded C++, Embedded C, Java, JavaScript, C

Paradigms

Desktop App Development

Platforms

Windows, Linux, Xbox, Android

Other

FIX Protocol, Embedded Systems, Templates, Boost.Asio, Plugins, Firmware, Embedded Software, Networks, SIMD, Linux Kernel, Xbox One, Unreal Engine 5, Real-time Operating System (RTOS), System-on-a-Chip (SoC), Software Architecture, Architecture, Mathematics

Frameworks

Qt, Unreal Engine, Flask, Unreal Engine 4, Windows PowerShell

Libraries/APIs

Pandas, Node.js, Interactive Brokers API

Tools

GDB

1997 - 2002

Bachelor of Science Degree in Computing Science

University of Alberta - Edmonton, Alberta, Canada

1993 - 1997

Bachelor of Science Degree in Physics

University of Alberta - Edmonton, Alberta, 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