Software engineer, teacher and speaker.

A technical leader with more than 12 years of programming experience designing and building versatile APIs, growing teams and delivering products with a fantastic user experience.

Replace vs Replace All

There is a good chance that replace does not work how you think: const numbers = "10.00.00.0000" const replaced = numbers.replace(".", "_") console.log(replaced) // '10_00.00.0000' Wait what? It only replaced the first instant, replace is a simple ...

Folding Results

Kotlin is a fantastic language. Every day, I find a new function or method that makes programming in it a breeze. One of my go-to functions I keep reaching for recently is fold. You can think of fold like a reduce; however, reduce starts with the fir...

Padding Strings

We have been messing with arrays in the last few blogs, so let's switch gears and look at some string methods. There are a lot of built-in methods on a string, but two you might not know are padStart() and padEnd(). So what do they do? They pad a str...

What's In My Array

Arrays are some of the most common data types you work with as a programmer. We filter them, we map over them, we edit them and more. As we spend so much time with them, JavaScript has created some great helper functions to make them easier to work w...

Stay up to date

Get notified when I publish something new, and unsubscribe at any time.

Work

  1. Company
    Atlassian - Cloud FinOps
    Role
    Senior Software Engineer
    Date
  2. Company
    SheCodes
    Role
    Lead Mentor for JS and React
    Date
  3. Company
    ClimateClever
    Role
    CTO
    Date
  4. Company
    MongoDB
    Role
    MUG Perth Chapter Leader
    Date
  5. Company
    Apps People
    Role
    CTO
    Date
View & Download CV