Skip to content
Mike Larah - Software Engineer II

Mike was the first graduate of endjin's apprenticeship scheme.

Meet Mike

Mike is a Software Engineer at endjin with almost a decade of experience in solving business problems with technology. He has worked on a wide range of projects for clients across industries such as financial services, recruitment, and retail, with a strong focus on Azure technologies.

Installing Mattermost using the Azure CNAB Quickstart Library

Installing Mattermost using the Azure CNAB Quickstart Library

Mike Larah

Get started with Mattermost on Azure using the Mattermost on AKS quickstart from the Azure CNAB Quickstart Library.
The importance of specific & immutable dependency versions

The importance of specific & immutable dependency versions

Mike Larah

This post describes the reasons for choosing specific & immutable dependency versions in your software.
Debugging web apps in Visual Studio with custom browser configurations

Debugging web apps in Visual Studio with custom browser configurations

Mike Larah

This blog post explains how you can automatically open a web browser in either private browsing mode or with a custom user profile when debugging web applications from Visual Studio.
5 tips for an awesome Windows Terminal experience

5 tips for an awesome Windows Terminal experience

Mike Larah

Improve the already-great Windows Terminal experience by following these tips for customizing the application to work best for you.
Setting up Porter on Windows

Setting up Porter on Windows

Mike Larah

Porter is a tool based on the CNAB (Cloud Native Application Bundle) spec. It can be used for building, managing, and installing application bundles. This guide will walk you through how to get set up with Porter on Windows.
Setting up Windows Subsystem for Linux (WSL) 2 for Windows 10 & Docker

Setting up Windows Subsystem for Linux (WSL) 2 for Windows 10 & Docker

Mike Larah

In this post, we describe the steps needed to enable Windows Subsystem for Linux (WSL) 2 on Windows 10, and how you can use the WSL 2 features with Docker for Windows.
Introducing the Azure CNAB Quickstarts Library

Introducing the Azure CNAB Quickstarts Library

Mike Larah

In partnership with Microsoft, we have released Azure CNAB Quickstarts Library on GitHub. CNAB (Cloud-Native Application Bundle) is a new specification designed for facilitating the packaging, installation, upgrading and uninstallation of cloud-native solutions in the cloud, on-premise or on the edge. We've created a number of quickstarts covering Apache Airflow, Azure Kubernetes Service, Ghost, Kubeflow, SQL Server Always On and Wordpress to help demonstrate the power of CNAB and Porter.
A brief introduction to GTD (Getting Things Done)

A brief introduction to GTD (Getting Things Done)

Mike Larah

Getting Things Done (GTD) is a workflow designed to increase productivity and decrease stress. In this post, Mike Larah talks about what's involved with GTD, and what he learned whilst attending a recent course.
Comparing GitHub Actions and Azure Pipelines: High-level concepts

Comparing GitHub Actions and Azure Pipelines: High-level concepts

Mike Larah

GitHub Actions is GitHub's new CI/CD platform. It is comparable with Azure Pipelines, which forms part of the Azure DevOps suite. In this post, Mike Larah looks at the similarities and differences in the high-level concepts and terminology between the two platforms.
Passwordless SSH from Windows 10 to Raspberry Pi

Passwordless SSH from Windows 10 to Raspberry Pi

Mike Larah

In this post, Mike Larah explains how to enable SSH on the Pi, how to access the Pi via SSH using a Windows 10 development machine, and how to enable passwordless SSH access to the Pi.
Enforce resource tagging with Azure Policy

Enforce resource tagging with Azure Policy

Mike Larah

This blog post details how we used Azure Policy to enforce Azure resources were tagged with appropiate tags and ensured tags were inherited from parent resource groups where possible.
How to run a script on an existing Azure Virtual Machine

How to run a script on an existing Azure Virtual Machine

Mike Larah

Using PowerShell and the VM Custom Script Extension to download and execute scripts on existing Azure VMs
How we set up daily Azure spending alerts and saved $10k

How we set up daily Azure spending alerts and saved $10k

Mike Larah

Read how we set up Azure spending alerts and saved over $10k
Automating office security with Synology, Surveillance Station, OneDrive and Power Automate

Automating office security with Synology, Surveillance Station, OneDrive and Power Automate

Mike Larah

Read about how we set up automated backups of our office security camera footage and used Power Automate to alert us if anything went wrong
My Apprenticeship Retrospective

My Apprenticeship Retrospective

Mike Larah

In this post, Mike Larah reflects on his experiences going through the endjin three-year apprenticeship scheme

Improve your Windows Command Prompt and PowerShell experience with ConEmu

Mike Larah

Mike Larah shares his tips for how to best customize ConEmu to improve your terminal experience for Windows Command Prompy and PowerShell
Using Lazy and ConcurrentDictionary to ensure a thread-safe, run-once, lazy-loaded collection

Using Lazy and ConcurrentDictionary to ensure a thread-safe, run-once, lazy-loaded collection

Mike Larah

In this post, Mike Larah discusses how to ensure your C# collections are thread-safe, only run-once, and are lazy-loaded.
Improve your SpecFlow scenarios with custom step argument transformations

Improve your SpecFlow scenarios with custom step argument transformations

Mike Larah

One of the great benefits of using SpecFlow is that it allows you to write your specifications in a human readable format. Learn how you can create reusable step argument transformations to apply custom transformations to your parameters, so that you can keep your specifications easy to read.
Unit testing AngularJS with Visual Studio, ReSharper and TeamCity

Unit testing AngularJS with Visual Studio, ReSharper and TeamCity

Mike Larah

In this post, Mike demonstrates how you can test AngularJS with Visual Studio, ReSharper and TeamCity for the full local and CI/CD DevOps experience.
Restrict access to Azure Websites by accept-listing

Restrict access to Azure Websites by accept-listing

Mike Larah

By utilising the IP and Domain Restrictions feature in IIS, it is possible to lock down your Azure Website to only allow access to IP addresses and domains that you have specified in a accept list. Learn how in this post.

Azure From The Trenches: Updating Service Configuration Whilst Running In The Emulator

Mike Larah

A quick tip for updating your Azure cloud service configuration while running in the emulator

Introducing endjin composition framework 2.0 : Part 5 - Debugging

Mike Larah

Learn how to debug the endjin composition framework.

Introducing endjin composition framework 2.0 : Part 4 - ASP.NET MVC/WebAPI

Mike Larah

Learn how to use the endjin composition framework inside ASP.NET MVC or Web API

Introducing endjin composition framework 2.0 : Part 3 - Using the content factory

Mike Larah

Learn how to use the endjin composition framework content factory

Introducing endjin composition framework 2.0 : Part 2 - Getting Started

Mike Larah

Learn how to use the endjin composition framework for dependency injection.
Introducing endjin composition framework 2.0 : Part 1

Introducing endjin composition framework 2.0 : Part 1

Mike Larah

Learn why we created the endjin composition framework for dependency injection.

A step by step guide to building a Twilio voice app with Web API

Mike Larah

Discover how to build Twilio voice apps using asp.net MVC and debug it using port forwarding tools.

Integration testing with Web API

Mike Larah

A quick example of how to set up integration testing for HttpClient and HttpServer

DDD10 Conference

Mike Larah

Reviewing the Developer Developer Developer conference held at Microsoft HQ in Reading

Using the endjin composition framework in an MVC application

Mike Larah

A quick guide to using the endjin composition framework with ASP.NET MVC Applications.

Windows 8 Development Camp

Mike Larah

A review of the Windows 8 App bootcamp help at Microsoft.
Apprenticeship Week 2

Apprenticeship Week 2

Mike Larah

In his second week as an Apprentice, Mike covers writing functional tests, automation scripts, working on a pet project, creating mindmaps and UX mockups and attending Microsoft TechDays.
End of the first week

End of the first week

Mike Larah

Mike reflects over his first week as and apprentice and gets to grip with using tools to diagnose problems with his code.
Day 3: Client meeting

Day 3: Client meeting

Mike Larah

On his third day Mike gets to meet a customer and understand more about the commerical nature of the company.
Day 2: Errors and Debugging

Day 2: Errors and Debugging

Mike Larah

On his second day, Mike gets introduced to debugging errors in the PowerShell scripts he wrote on day 1, and is introduced to Visual Studio and C#
Day 1: PowerShell, BDD and Git

Day 1: PowerShell, BDD and Git

Mike Larah

Mike starts his first day as an Apprentice with an introduction to PowerShell and being onboarded to endjin's various tools and platforms, while attempting to automate the entire process.
Mike Larah is an Apprentice Endjineer

Mike Larah is an Apprentice Endjineer

Mike Larah

Mike is a mechanical engineering graduate, who has become endjin's first apprentice.