Photo by Hulki Okan Tabak on Unsplash

Like many startups of its age, Airtasker was born as a Ruby on Rails monolith which got a bit bloated.

We believe a modern API architecture consists of a set of loosely-coupled, highly-cohesive bounded contexts. A bounded context is a term from Domain-Driven Design (DDD) which refers to the logical boundaries surrounding a single subdomain of a business.

At Airtasker, greenfield bounded contexts usually come in the form of a Kotlin microservice. But what about the core functionality we already have? …


I hate writing, but I love having written. — Dorothy Parker

Writing is good for you.

Whether you’re cranking out a bestseller or keeping a journal, the benefits on your mind and well-being are indisputable. It can improve your well-being, memory and sleep. Even your immune system!

Many of us would like to write more. For me, writing has always been an aspiration rather than a reality. Like any other creative pursuit, it’s tough to convince your brain to write when there are simpler alternatives to pleasure. Like Netflix.

I was like this for most of my life. I would…


Photo by Gabriel Crismariu on Unsplash

Technical communication is hard. It’s also the most important thing you can do for your career.

Whether it’s a simple explanation to a colleague or a full-blown presentation with a slide deck, technical communication is something we’ve all seen people struggle with. I’ve seen it and I’ve struggled with it myself.

This is a problem, because technical communication is the foundation of all science and engineering. No matter how brilliant an individual is, their contribution is meaningless unless it is shared with the rest of the world.

This is what makes technical communication such a critical skill. Not only does…


I’ve been a tech lead for about a year now and I’m not dead yet.

That’s not a lot of time in the grand scheme of a working life, but since tech lead years are like dog years I’ve got a battle scar or two. These are some of lessons they’ve taught me.

The following points are based on my own experience. Since I’m still new to the role and the responsibilities of being a tech lead differ from company to company, you might disagree with them. That’s great! Leave a comment about it.

1. Saying no is the hardest skill to learn. But also one of the most important.

As a tech lead, you likely…


How we earned our Stripes — Part 5

This is the fifth article in a series of blog posts about our transition towards Stripe as Airtasker’s main payment provider.

In Part 3, we made a decision. We unleashed Stripe onto our system before our poster’s credit cards were migrated, creating two concurrent streams of payment. I shouldn’t say it was a damn fine call, since the impact was more due to serendipity than insight, but damn was it a fine call.

Why? Well, while we intended the token migration to be a fast follow, it took close to three months to see through to the end. …


How we earned our Stripes — Part 4

This is the fourth article in a series of blog posts about our transition towards Stripe as Airtasker’s main payment provider.

Despite all the excellent work getting our own system ready to accept Stripe tasks, we had one glaring omission. Our taskers are paid their hard-earned funds into bank accounts, which were stored and tokenised in the ecosystem of our old payment provider. We had about a quarter of a million of these. If we wanted our taskers to continue to get their money, we needed to add these bank accounts to Stripe.

What’s more —we had to time this…


How we earned our Stripes — Part 3

This is the third article in a series of blog posts about our transition towards Stripe as Airtasker’s main payment provider.

February 2018, we launched in the UK. We’d be lying if we said there weren’t hiccups — we certainly had a few bugs to clean up and a lot of work getting to feature parity with our old provider. But, most importantly, it worked. It worked great.

Our MVP was proven. Stripe’s architecture was meshing well with our own system and everyone was happy. Developers loved working with the pristine Stripe API. Support agents loved the cleaner interface. DevOps…


How we earned our Stripes — Part 2

This is the second article in a series of blog posts about our transition towards Stripe as Airtasker’s main payment provider.

When you start from ground zero, switching payment providers is an intimidating project. Airtasker hosts around 4000 tasks a day, which adds up to a fair amount of dollarydoos moving through our payment system from poster to tasker. That’s not something you want to mess with. It’s as critical to Airtasker as you can get.

When we sat there at the beginning, trying to create a list of all the things that needed to be done was overwhelming. …


How we earned our Stripes—Part 1

This is the first article in a series of blog posts about our transition towards Stripe as Airtasker’s main payment provider.

It’s 2017. You’re a rapidly scaling start-up trying to launch globally, but your payment provider (face blurred to protect their identity) isn’t available outside Australia. What do you do?

Switch to Stripe, of course. And that’s what Airtasker did.

“Ok, sounds great!” we said, after googling Stripe for 5 minutes. “Let’s do it! How long should we book in to switch over? A couple of days? A few weeks?”

Try ten months.

In the dark ages (or the good…

Thomas Pagram

Software engineer.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store