Ronald Suwandi

Self-proclaimed awesome engineer who loves to build high quality products and also a certified barista with experiences in building web applications using Go, Clojure, Java and JavaScript. Familiar with various web frameworks such as React/Redux, Ember and Angular.

My interest lies in leading a team that works on Low Latency/High Throughput Distributed Systems, Data Engineering, Machine Learning, and Martech/Adtech industry.

I'm also a father to two adorably cute and weird sons.

— My experience —

Consulting Engineer

Confluent

November 2020 – Present | Singapore
  • Helped customers from various industries (banking, game, government) with Confluent products deployment, best practices, administration, security setup, ssl/tls certificates and troubleshooting
  • Implemented and tested High Availability (HA) and Disaster Recovery (DR) cluster architecture, end to end encryption with KMS
  • Built a brand new Kafka Connector to connect Google PubSub Lite with Kafka
  • Developed many prototypes with tests to help customers to kick start their Confluent journey (Kafka, Kafka Streams, Confluent Platform, cp-ansible)

Platform Architect & Team Lead

Security Risk

June 2019 – November 2020 | Singapore
  • Designed and built a performant API service for an environment with a low and unstable Internet connection. The service is consumed by both mobile and web apps using Go, Postgres and Postgis
  • Setup and maintained various Ops related flow including incident post-mortem report, managing Kubernetes cluster, logging and monitoring infrastructure using both Stackdriver and Prometheus
  • Managed team of engineers based in Singapore and Australia
  • Implemented web-based frontend client using React and Redux Saga
  • Provided extensive documentation for API, business logic, deployment checklist and operations guidelines
  • Established development workflow to maintain high quality codebase by ensuring a mandatory code reviews and useful tests are written prior merging to main branch

Senior Software Engineer & DevOps Engineer

Security Risk

June 2018 – June 2019 | Singapore
  • Developed an initial backend API using Java, TypeScript, Spring Boot and MongoDB
  • Created and manage multiple Kubernetes clusters for each environments on both local server and Google Cloud using GKE and Helm for managing deployment
  • Setup CI/CD environment to maintain code quality
  • Containerized backend applications using Docker

Senior Software Engineer

Eyeota

July 2015 – June 2018 | Singapore
  • Built a high performance distributed backend system that interacts with many other systems (web application, configuration provider for our low latency backend system, reporting engine) using Clojure, Elasticsearch and Cassandra
  • Ensured system is up and running by performing various DevOps duty using Grafana and Graphite for monitoring metrics, Ansible for managing deployment and MAT/VisualVM for analyzing JVM heap dumps
  • Optimized various inefficient queries that can yield up to 150x improvements in certain cases (5s to 30ms), also improved stability of JVM heap space usage through an in-depth JVM heap dump analysis
  • Led and launched a backend system for a web application that is used to perform manual validation on segment/url predictions for the Data Science team. System is written in Go and PostgreSQL
  • Mentored, interviewed and onboarded new engineers
  • Created and open-sourced Kani, a Clojure-based application for Cassandra backup with Unicode support
  • Developed the frontend for our web application using Ember.js

Software Engineer

Krux Digital

September 2014 – May 2015 | Sydney
  • Developed both backend and frontend for the web application using Python, Django, Tastypie, Amazon Redshift, Angular.js (1.x) and CoffeeScript
  • Upgraded one of the core service using Java, Chrome Remote Debugging Interface, Puppet, and AWS stack (SQS, S3, EMR and RDS)
Local Measure

Software Engineer

Local Measure

February 2014 – September 2014 | Sydney
  • Led and built the frontend for our new product to monitor and notify users from social media posts for user-defined conditions (e.g. keywords, followers count, location, etc) using Angular.js (1.x)
  • Developed the backend for social media monitoring web application using Go and MongoDB making use of channels to aggregate posts and sending email notifications
  • Created Google Chrome Extension for the application

Software Engineer (Contract)

Murray Hurps Software Pty Ltd

July 2013 – February 2014 | Sydney

Worked as a contractor for various projects in Sydney's largest coworking space (Fishburners). Projects include: Leap Touch and Feedback Fast. I worked with JavaScript, AngularJS, Firebase, and Phonegap

SolveIT Software (now Schneider Electric)

Senior Software Engineer

SolveIT Software (now Schneider Electric)

February 2009 – July 2013 | Adelaide
  • Developed various Swing-based applications for various projects including Crew Rostering, Planning and Scheduling Optimization and Supply Chain Network Optimization. Applications are built using Java, Microsoft SQL Server and our Java-based in-house ORM solution
  • Work closely with the science team and business analyst to implement Business Rule Management that acts as a constraint manager that is directly used by the scheduling optimizer

— Stuff I've worked on —

LogWeight

LogWeight

App store link

August 2017 | Singapore

LogWeight is the fastest way to track weight into iOS Health App with simple and intuitive design. Written in React Native.

Neural Networks Library

Neural networks library

Project page

April 2016 – December 2016 | Singapore

Clojure-based neural networks library that is built on top of core.matrix package. I decided to create this library after completing Andrew Ng's Machine Learning course. The library is very modular where you can easily swap optimizer, activation/sigmoid functions, stopping conditions and cost function.

wearther

wearther

http://wearther.cc

April 2013 – July 2015 | Sydney

wearther is a web application (Node.js, Backbone, Titanium SDK for the native app version) that helps you decide what to wear based on the current weather. wearther's optimizer - MACHO (Multiobjective Ant Colony Heuristic-based Optimisation) is derived from an artificial intelligence algorithm (Ant Colony Optimisation) to calculate the best clothing combinations quickly so you can leave home feeling just right. Not too cold, and not too warm.

Featured in both StartupsFM and StartupDaily

#hashtagoverload

#hashtagoverload

http://hashtagoverload.me

July 2013 – December 2013 | Sydney

A simple mobile-first webapp that translate the sentence into a hashtag format and also gives you some suggestion keywords. Powered by jQuery and Big Huge Thesaurus.

— Education —

AWS Certified Developer – Associate

Certificate

September 2021 - September 2024 | Singapore

Confluent Certified Developer for Apache Kafka

Certificate

March 2021 - March 2023 | Singapore

Confluent Certified Administrator for Apache Kafka

Certificate

March 2021 - March 2023 | Singapore

Learn Kubernetes from a DevOps guru (Kubernetes + Docker)

Certificate

June 2018 | Singapore

Docker Mastery: The Complete Toolset From a Docker Captain

Certificate

June 2018 | Singapore

Convolutional Neural Networks

Certificate

December 2017 | Singapore

Structuring Machine Learning Projects

Certificate

November 2017 | Singapore

Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization

Certificate

October 2017 | Singapore

Neural Networks and Deep Learning

Certificate

September 2017 | Singapore

Machine Learning

Certificate

March 2016 | Singapore

Honours, Computer Science (Second Upper Class - IIA)

University of Adelaide

2004 – 2008 | Singapore

© Ronald Suwandi 2016