Skip to content
Liam Mooney - Software Engineer I

Liam is a member of endjin’s Software Engineering Apprenticeship Scheme 2021 cohort

Meet Liam

Liam studied an MSci in Physics at University College London, which included modules on Statistical Data Analysis, High Performance Computing, Practical Physics and Computing. This led to his dissertation exploring the use of machine learning techniques for analysing LHC particle collision data.

Before joining endjin, Liam had a keen interest in data science and engineering, and did a number of related internships. However, since joining endjin he has developed a much broader set of interest, including DevOps and more general software engineering. He is currently exploring those interests and finding his feet in the tech space.

View Blogs
How to step into external code when debugging a Python Behave test in VS Code

How to step into external code when debugging a Python Behave test in VS Code

Liam Mooney

Learn how to configure VS Code to enable stepping into external code when debugging a Python Behave test
C# Design Patterns - Iterator - Language Features

C# Design Patterns - Iterator - Language Features

Liam Mooney

This post examines .NET's native support for iterators: IEnumerator<T>, IEnumerable<T>, and IAsyncEnumerable<T>.
Analysing WPF Performance Using ETW and PerfView

Analysing WPF Performance Using ETW and PerfView

Liam Mooney

This post walks through the process of using PerfView to analyse ETW data to get to the bottom of a performance issue in a WPF application.
C# Design Patterns - Iterator - The Pattern

C# Design Patterns - Iterator - The Pattern

Liam Mooney

Explore the iterator design pattern in C#, its importance in programming, and learn how to implement it.
Data validation in Python: a look into Pandera and Great Expectations

Data validation in Python: a look into Pandera and Great Expectations

Liam Mooney

Implement Python data validation with Pandera & Great Expectations in this comparison of their features and use cases.
How To Implement Continuous Deployment of Python Packages with GitHub Actions

How To Implement Continuous Deployment of Python Packages with GitHub Actions

Liam Mooney

Discover using GitHub Actions for auto-updates to Python packages on PyPI, assessing its role in Continuous Deployment.
An Overview of the Corvus.Retry Library

An Overview of the Corvus.Retry Library

Liam Mooney

Corvus.Retry is an open source repository that provides functionality for building policies and strategies for handling transient faults. This post provides a spotlight on the repository.
An Overview of the Corvus.Globbing Library

An Overview of the Corvus.Globbing Library

Liam Mooney

Corvus.Globbing is an .NET open source library that provides high performance, zero allocation functionality for working with globs.
Retrospecting on my first year at endjin

Retrospecting on my first year at endjin

Liam Mooney

Liam joined endjin as part of the Software Engineering Apprenticeship 2021 cohort. In this post he looks back on his fist year and uses the post to introspect and look ahead to his second year.
Continuous Integration with GitHub Actions

Continuous Integration with GitHub Actions

Liam Mooney

This post gives an overview of Continuous Integrations and shows how you can implement it with GitHub Actions, with an accompanying example Python project
Automating Excel in the Cloud with Office Scripts and Power Automate

Automating Excel in the Cloud with Office Scripts and Power Automate

Liam Mooney

Automate Excel tasks with Office Scripts & Power Automate. Get an overview and explore a practical example in this post.
Understanding the Stack and Heap in C#

Understanding the Stack and Heap in C#

Liam Mooney

The stack and heap are central components of memory management in C# programs. This post aims to introduce the topic, with a number of worked examples.
Computer Networking Essentials for Developers: the Web - Part 2

Computer Networking Essentials for Developers: the Web - Part 2

Liam Mooney

We're constantly using computer networks and the internet, especially as developers. The Web is the most important application on the Internet; this is the second of two posts aiming to explain the basics of the Web.
The Perils of Combining Multicast Delegates with Tasks in C#

The Perils of Combining Multicast Delegates with Tasks in C#

Liam Mooney

Explore the complexities of combining async methods with multicast delegates in C# with Liam.
Computer Networking Essentials for Developers: the Web - Part 1

Computer Networking Essentials for Developers: the Web - Part 1

Liam Mooney

Discover the major application often misidentified as the Internet - the World Wide Web, building on our previous networking post.
My first 6 months as an apprentice at endjin

My first 6 months as an apprentice at endjin

Liam Mooney

Liam joined endjin as part of the Software Engineering Apprenticeship 2021 cohort. In this post he reflects on his first six months and looks to the future.
Computer Networking Essentials for Developers: Networks and the Internet

Computer Networking Essentials for Developers: Networks and the Internet

Liam Mooney

Explore the basics of computer networks & internet for developers in this post, simplifying the complex world of networking for better understanding.
Introduction to Containers and Docker

Introduction to Containers and Docker

Liam Mooney

Explore containerisation & Docker for app development & deployment. Learn to create containerised applications with examples in this intro guide.
My first month-and-a-bit as an apprentice at endjin

My first month-and-a-bit as an apprentice at endjin

Liam Mooney

Liam joined endjin as part of the Software Engineering Apprenticeship 2021 cohort. In this post he reflects on his first month and looks to the future.