Mal Curtis, Developer in Auckland, New Zealand
Mal is available for hire
Hire Mal

Mal Curtis

Verified Expert  in Engineering

Software Developer

Location
Auckland, New Zealand
Toptal Member Since
May 21, 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.

Portfolio

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

Experience

Availability

Part-time

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

Principal Engineer

2014 - PRESENT
Vend
  • 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

Founder

2013 - PRESENT
Apostle.io
  • 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)

Senior Web Developer

2009 - 2014
SitePoint
  • Member of the team that built learnable.com, 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

https://www.vendhq.com/tour/pos-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.

Apostle.io

I founded Apostle.io to address the ongoing disconnect between companies' requirements for transactional emails and the technical skills required to implement them. By implementing Apostle.io, web developers are no longer required to make updates to the emails that web applications send, freeing them up to do the important stuff. Apostle.io 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

https://learnable.com/
I was one of the original developers, and eventually led the development of, learnable.com. 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.

Languages

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

Frameworks

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

Libraries/APIs

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

Platforms

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

Storage

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

Other

Front-end, APIs, Multitenancy, Security

Tools

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

Paradigms

Distributed Programming, Concurrent Programming

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