Scroll To View More
Mal Curtis, Software Developer in Auckland, New Zealand
Mal Curtis

Software Developer in Auckland, New Zealand

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 now available for hire

Portfolio

  • Vend
    Go, Elasticsearch, JavaScript, Redis, MySQL, Nginx, Docker, Java, PHP
  • Apostle.io
    Ruby on Rails, JavaScript, Go, Redis, Postgres, Heroku, RDS
  • SitePoint
    PHP, Ruby on Rails, MySQL, Redis, JavaScript, Sass, EC2

Experience

  • JavaScript, 10 years
  • MySQL, 10 years
  • Ruby on Rails (RoR), 5 years
  • Redis, 4 years
  • PostgreSQL, 4 years
  • AngularJS, 4 years
  • Elasticsearch, 2 years
  • Go, 2 years
Auckland, New Zealand

Availability

Part-time

Preferred Environment

Mac OS, Linux, Docker, Vim, Sublime, Git

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.

Employment

  • 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: Go, Elasticsearch, JavaScript, Redis, MySQL, Nginx, Docker, Java, PHP
  • 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: Ruby on Rails, JavaScript, Go, Redis, Postgres, Heroku, RDS
  • 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: PHP, Ruby on Rails, MySQL, Redis, JavaScript, Sass, EC2

Experience

  • Vend Reporting (Development)
    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 (Other amazing things)

    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 (Development)
    http://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 (Development)
    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.

Skills

  • 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, AWS EC2, WordPress, Linux, iOS
  • Storage

    MySQL, JSON, Elasticsearch, AWS S3, PostgreSQL, Redis, AWS RDS
  • Other

    Front-end, APIs, Multitenancy, Security
  • Tools

    Git, GitHub, Vim Text Editor
  • Paradigms

    Distributed Programming, Concurrent Programming
I really like this profile
Share it with others