Mal Curtis, Developer in Auckland, New Zealand

Mal Curtis

Software Developer

Auckland, New Zealand
Toptal Member Since
March 14, 2015

Mal has extensive experience building and maintaining both front- & back-end systems in Go, Ruby on Rails, Node.js, and PHP in traditional hosting environments, Amazon's AWS platform, and Heroku. He has worked in teams of all sizes, and prides himself on his communication skills and ability to get the job done.

Mal is available for hire
Hire Mal


PHP, Java, Docker, NGINX, MySQL, Redis, JavaScript, Elasticsearch, Go
Heroku, PostgreSQL, Redis, Go, JavaScript, Ruby on Rails (RoR)
Amazon EC2, Sass, JavaScript, Redis, MySQL, Ruby on Rails (RoR), PHP


Auckland, New Zealand



Preferred Environment

Git, Sublime Text, Vim Text Editor, Docker, Linux, MacOS

The most amazing...

...thing I've built is a reporting system for retailers to deep dive into their sales data across millions of items sold in real time.

Work Experience

2014 - PRESENT

Principal Engineer

  • Technical lead for the next-generation reporting feature for retailers to better understand their business data.
  • Implemented Docker containers for continuous integration.
  • Implemented seamless migration strategy to a BCrypt password hashing algorithm.
  • Contributed to the Java API service that reduced API response times for large calls from multiple tens of seconds to tens of milliseconds.
  • Architected an Elasticsearch cluster for real-time bucketing and aggregation of sales and payment data.
Technologies: PHP, Java, Docker, NGINX, MySQL, Redis, JavaScript, Elasticsearch, Go
2013 - PRESENT

  • Responsible for the entire product from development and operations to support and business management.
  • Implemented a highly scalable queue-based system for receiving, processing, and delivering emails to delivery providers that has handled tens of millions of emails.
  • Implement best practice API, with OAuth Bearer Tokens, for consumption by the Angular Front-end and third-party integrators.
  • Implemented an Angular Front-end for management of email templates, delivery analytics, email insights, and account management.
  • Created a small decoupled "microservice" architecture for important features to avoid high maintenance costs and/or decreased performance of the main application.
  • Implemented payments with Stripe.
  • Created tooling for application-level replication of Postgres for zero downtime migration from a "locked in" Postgres provider.
Technologies: Heroku, PostgreSQL, Redis, Go, JavaScript, Ruby on Rails (RoR)
2009 - 2014

Senior Web Developer

  • Member of the team that built, I was responsible for the Course Builder component that allowed instructors to generate their own courses (comprising of video, articles, and file downloads).
  • Built the reporting infrastructure for author royalties from both traditional eCommerce sales and subscription-based revenue apportioning.
  • Built a metrics system responsible for targeted advertisements on landing pages based on page content, referrer queries (Google etc.) and custom weightings.
  • Maintained legacy eCommerce and email campaign tools.
  • Built a screenshot API that returns screenshots of webpages from various devices utilizing Selenium Grid, EC2, and a custom Ruby on Rails application.
Technologies: Amazon EC2, Sass, JavaScript, Redis, MySQL, Ruby on Rails (RoR), PHP


Vend Reporting
Architect and Tech Lead on the next-generation reporting project. Built from scratch using Go, Elasticsearch and Angular.js, this project lets retailers deep dive into their sales, payments, and inventory data. They can mix and match dimensions, aggregates, and filters to create completely custom reports as their business requires.

Book: Level up Your Web Apps with Go

My book, targeted at web developers looking to learn Go. It covers the syntax, the toolchain, testing, concurrency and deployment, and guides the user through a full web application project from start to finish.

I founded to address the ongoing disconnect between companies' requirements for transactional emails and the technical skills required to implement them. By implementing, web developers are no longer required to make updates to the emails that web applications send, freeing them up to do the important stuff. is a transactional email service that lets you effortlessly send, edit, and track transactional emails, and integrates with all the popular email delivery providers.

Learnable: Become a better developer
I was one of the original developers, and eventually led the development of, Learnable was originally a two-sided marketplace for instructors to build and sell their courses online. I was responsible for most aspects of the application over time, and helped transition the application from three distinct applications (PHP, Ruby on Rails, and Django-based) to a single unified Rails application.



PHP, JavaScript, Go, Ruby, SQL, Sass, Objective-C, Swift, Java


AngularJS, Ruby on Rails (RoR), JSON Web Tokens (JWT), OAuth 2, Symfony 2


Redis Queue, Node.js, GitHub API, Twitter API


MacOS, Amazon EC2, WordPress, Linux, iOS, Docker, Heroku


MySQL, JSON, Elasticsearch, Amazon S3 (AWS S3), PostgreSQL, Redis


Front-end, APIs, Multitenancy


Git, GitHub, Vim Text Editor, NGINX, Sublime Text


Distributed Programming, Concurrent Programming

Industry Expertise