MailSlurp is a free email API service that lets you create real email addresses in code. You can then send and receive emails and attachments in C# applications and tests. This is great for testing user authentication flows or C# applications end to end.

Show me the code!

This section describes how to get…

Streaming data events from your application to an analytics dashboard is easy with Quicksight.

Having a way to view and analyse metrics from your application is essential for monitoring product-health and engagement. There are tons of solutions out there, from GoogleAnalytics to MixPanel, but for my latest project I chose AWS Quicksight. It lets you manage your own data (in S3) and plays well…

AWS offers a range of container hosting solutions such as ECS, EKS, and ElasticBeanstalk. For a small application, ElasticBeanstalk is a fast and simple way to get up and running.

Recently I started rewriting a project called MailSlurp. It’s a SAAS API that let’s you send and receive emails from…

If you’re a developer who needs to track time or submit monthly timesheets why not automate it? I mean, that’s what we’re good at right?

A good timesheet makes you look great!


You probably commit regularly to a GitHub repository for your work. Why not use those commit messages to…

Getting paid. Arguably the most important part of a developers job.

I love my job as a freelance developer but invoicing each month can be time consuming and complicated. Here are some tips I’ve learned along the way.

Consider registering a company

Invoicing as a company instead of an individual gives you a lot of tax advantages. It’s pretty easy to do these days. I…

Here’s a quick and easy way to integrate continuously updated task definition deployments on AWS ECS with Terraform and Jenkins.


This approach assumes that you have setup an ECS cluster, service and task definition defined in Terraform and output various variables for use in the application’s build pipeline. …

Malformed API requests are the most common form of error in microservice infrastructures in my experience.

The most common form of bug in a microservice architecture is usually the result of malformed requests to changing REST APIs. I’ve learned this through years of building distributed systems and have lately come up with a easy way to mitigate it.

In agile development environments API requirements change regularly…

Document your codebase with graphs like this in the text based DOT format.

Agile programming means regularly diving into unfamiliar codebases. With the rise of microservices understanding components of your infrastructure at a glance is becoming more and more difficult. That’s why I use visual documentation.

DOT and Graphviz

Graphviz is an open-source graphing CLI that can turn DOT files into dependency graphs. The DOT syntax…

Complex infrastructure is difficult to comprehend. That’s where DOT graphs can help.

I build infrastructure for a living. Usually this involves many micro-services interacting with one-another. The network of calls and responsibilities quickly become difficult to comprehend. …

Hello, my name’s Jack and I’m a software engineer based in Berlin. I’ve been working in the industry for almost ten years and decided I’d share some of my experiences and thoughts online.

I’ve gained a lot through the writing and posts of other developers so it’s probably time to give something back. Let’s see how it goes!

More details at

Jack Mahoney

My personal programming and development blog. More at

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