Carl Dunham, Developer in San Francisco, CA, United States
Carl is currently unavailable

Carl Dunham

Python Developer

San Francisco, CA, United States

Toptal member since March 6, 2014

Bio

Carl has a deep passion for building software, systems, and teams. He has built several 0-1 startups and systems at Reddit scale. He is a team player who can lead and operate independently to get things done. Carl always brings something new to his teams.

Portfolio

Reddit, Inc.
Go, GraphQL, GraphQL Federation, Kubernetes, Python, Software Architecture...
Neustar Security Services (now Vercara/Digicert)
Go, GraphQL, GraphQL Federation, React, PostgreSQL, Software Architecture...
Neustar
Python, Internet of Things (IoT), PostgreSQL, Software Architecture...

Experience

  • Concurrent Programming - 20 years
  • System Architecture - 20 years
  • Software Architecture - 20 years
  • GraphQL - 6 years
  • Go - 6 years
  • PostgreSQL - 5 years
  • Kubernetes - 3 years
  • Large Language Models (LLMs) - 1 year

Preferred Environment

Go, Large Language Models (LLMs), Kubernetes, GraphQL

The most amazing...

...system I've ever designed was a full-stack SaaS SEM bid management system that used predictive algorithms, models, and large data sets to optimize campaigns.

Work Experience

Senior Software Engineer, GraphQL

2021 - 2025
Reddit, Inc.
  • Led migration of legacy GraphQL Python monolith to federated microservices in Go.
  • Coordinated cross-functional teams and provided peer support.
  • Developed platform features and tools for contributors in Go, TypeScript, Python, Kubernetes, and more.
  • Ensured high reliability and availability across multiple clouds, regions, and clusters.
Technologies: Go, GraphQL, GraphQL Federation, Kubernetes, Python, Software Architecture, Concurrent Programming, System Architecture, Linux, Agile Software Development, Service-oriented Architecture (SOA), Git, Google App Engine, Event-driven Programming, Apache Kafka, Docker, Large-scale Projects, Redis, Back-end

Director of Software Engineering

2019 - 2021
Neustar Security Services (now Vercara/Digicert)
  • Led a team of eight engineers in building Go microservices for a large-scale DDoS and security product.
  • Drove the re-architecture from Python/Flask to Go microservices, React, and GraphQL for improved maintainability.
  • Collaborated with engineering managers and product management to enhance system features and performance.
Technologies: Go, GraphQL, GraphQL Federation, React, PostgreSQL, Software Architecture, Object-oriented Design (OOD), Concurrent Programming, System Architecture, Linux, Agile Software Development, Service-oriented Architecture (SOA), Git, NoSQL, Event-driven Programming, Apache Kafka, Docker, Large-scale Projects, Redis, Back-end

Senior Software Architect

2016 - 2019
Neustar
  • Led the development of the oneID IoT identity management solution at Neustar, Inc., ensuring secure and authentic communication between devices.
  • Implemented standards-based and proprietary technology to enhance the trustworthiness of messages across various devices.
  • Collaborated with cross-functional teams to expand the solution globally and address identity management for a wide range of devices.
Technologies: Python, Internet of Things (IoT), PostgreSQL, Software Architecture, Object-oriented Design (OOD), System Architecture, Linux, Agile Software Development, Service-oriented Architecture (SOA), Git, NoSQL, REST, Event-driven Programming, Docker, Large-scale Projects, Back-end

Senior Software Architect

2014 - 2016
oneID
  • Architected and developed an identity-as-a-service for consumers and IoT devices.
  • Applied symmetric and asymmetric cryptography techniques.
  • Wrote major sections of an online donations platform used by political and nonprofit organizations.
  • Built out IoT infrastructure for secure communication among edge devices, infrastructure servers, and users.
Technologies: Node.js, JavaScript, PostgreSQL, Python, Software Architecture, Object-oriented Design (OOD), System Architecture, Linux, Agile Software Development, Service-oriented Architecture (SOA), Django, Git, NoSQL, Event-driven Programming, Docker, Large-scale Projects, Back-end

Founder and CTO

2002 - 2015
The Search Agency
  • Built and led the team that developed AdMax platform, a data-driven decision support system for online marketing campaigns.
  • Developed core frameworks in Java and PHP for ORM, page formatting, concurrency control, and other platform services.
  • Led product development of AdMax local platform, including working with Tier I clients to manage requirements and system integration.
  • Performed data analysis using R and Python on large data sets to extract trend and performance insights.
  • Built location taxonomies from public and other data sources in R and Python, including polygon-to-point-radius conversion algorithms and fine-grained population estimates.
  • Served as a member of the Board of Directors, advising on product and technology strategy.
Technologies: Amazon Web Services (AWS), MySQL, JavaScript, MongoDB, R, Python, Software Architecture, Object-oriented Design (OOD), System Architecture, Linux, Agile Software Development, NoSQL, Large-scale Projects, Back-end

Managing Director, Simpli

2000 - 2002
United Online
  • Led teams of scientists and engineers to develop state-of-the-art microtargeting technology. Initial applications of the technology resulted in a 3x increase in click yield.
  • Developed a business plan for a next-gen advertising delivery service and collaborated with advertising traffic operations to streamline processes.
  • Managed a $2.4 million operating budget and successfully led the sale of Simpli to Search123 in 2002.
Technologies: MySQL, JavaScript, Software Architecture, Object-oriented Design (OOD), System Architecture, Linux, Agile Software Development, Large-scale Projects, Back-end

Director of Software Development

1999 - 2002
Simpli
  • Designed and coded features in Java, JavaScript, and HTML, working with cognitive scientists and linguists to develop new search enhancement and targeted content technology.
  • Used corpus-based/statistical NLP techniques and neural network technology heavily.
  • Led successful joint project to develop browser plug-in tool with parent company, resulting in on-time and under-budget product release.
Technologies: MySQL, JavaScript, Software Architecture, Object-oriented Design (OOD), System Architecture, Linux, Agile Software Development, Large-scale Projects, Back-end

Experience

Useful Cookery

https://github.com/carldunham/useful-cookery
Simple website to publish the "USENET Cookbook", an early version of crowdsourcing via a moderated newsgroup. Involved translating TROFF (typeset) files into MongoDB documents by way of JSON, and publishing them through a template-driven Python back end.

Climate Data Analysis

https://github.com/carldunham/climate-data
I used MapReduce on AWS to pull from a large meteorological data set and produce maps in R showing wind speed variability. I also combined analysis with visualization to show the effect and applied spatial statistics to summarize.

System and Method for Determining Weighted Average Success Probabilities of Internet Advertisements

http://www.google.com/patents/US8224698
A method and related system for determining the weighted average conversion (or click-through) probability (WACP) associated with an activity, such as an internet advertising bid activity. The method involves gathering information associated with prior actions relevant to future actions, such as bidding on internet advertisement placement, for example. The gathered information, such as clicks, impressions, and conversions resulting from an advertisement placement, is used in an algorithm to calculate the WACP. The method may be carried out as part of a system that includes one or more computing devices and the execution of instructions embodied in computer-readable media. The algorithm may include the option of weighting the data used, such as by valuing recent data more than older data.

Patent: Method and System for Attributing an Online Conversion to Multiple Influencers

https://www.google.com/patents/US20110231239
A method is provided for identifying and crediting interactions leading to a conversion, comprising acts of for each of at least one defined time interval, defining a recency factor used to scale a credit amount given to an influencing event occurring during the defined time interval; identifying at least one influencing event that influenced a conversion event; for each of the at least one influencing events, identifying a defined time interval in which the influencing event occurred and accessing the recency factor for that defined time interval; and apportioning the credit amount given to the conversion event among the at least one influencing event according to the recency factor for each influencing event.

Patent: Cost-per-action Search Engine System, Method and Apparatus

https://www.google.com/patents/US20030216930
Embodiments of the present invention are directed to a search engine system, method, and apparatus comprising a search engine, a participant management system, at least one storage database, a listing database, and at least one feedback mechanism. The search engine accepts input data and utilizes the input data to search for information related to the search terms. Upon retrieval of relevant information, the data analysis module organizes the data related to the search terms into a search results list. To determine the placement of listings upon a search request, the data analysis module determines the probability, for each relevant listing, that the user will ultimately complete the desired action if the listing is shown, wherein the probability of action is determined by a plurality of factors. This probability is then combined with the specific CPA for the advertiser. Transaction information derived from a search and click is returned through the feedback mechanism to the search engine for revised calculation of listing placement.

Education

1995 - 1997

MBA Degree in Business

University of Rhode Island - Kingston, RI

1980 - 1985

Bachelor's Degree in Computer Science

Brown University - Providence, RI

Skills

Libraries/APIs

Node.js, React

Tools

Git

Languages

Python, Go, GraphQL, JavaScript, R, C, Assembly

Paradigms

REST, Agile Software Development, Object-oriented Design (OOD), Concurrent Programming, MapReduce, Event-driven Programming, Service-oriented Architecture (SOA), Management

Platforms

Linux, Amazon Web Services (AWS), Apache Kafka, Docker, RStudio, Google App Engine, Kubernetes

Storage

MongoDB, MySQL, PostgreSQL, Redis, NoSQL

Frameworks

Django

Industry Expertise

Marketing

Other

Software Architecture, GraphQL Federation, Back-end, System Architecture, Spatial Statistics, Large-scale Projects, Scientific Computing, Large Language Models (LLMs), Finance, Computer Science, Internet of Things (IoT), Web Marketing, Statistics

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