Engineering Leadership Journal
Code, Cloud, & CTO Insights
Architecture decisions, delivery lessons, and practical software leadership from real projects.
Choosing Your .NET API Strategy in 2026: MediatR vs. ServiceStack vs. WolverineFX
Building a .NET web API in 2026 isn’t just about choosing between Controllers or Minimal APIs anymore. It’s about how you manage the flow of data and logic through your application. Three approaches dominate the conversation: the classic MediatR with CQRS, the...
🧠 Lazy Loading HTTP Requests in Angular with RxJS and BehaviorSubject
When building modern Angular apps, it’s common to have services that fetch data from HTTP endpoints. But you don’t always want those calls to fire immediately, instead, you might want lazy loading: only fetch the data when it’s actually needed.
Engineering Guilds: Fostering Expertise and Community in Tech organisations
Developing engineering culture in an organisation is not a simple task. Organisations can be too focused on feature development and project delivery, which can lead to a lack of focus on the professional development and collaboration of their engineering teams.
Technical Debt in Action: Real-World Examples and Their Consequences
In theory, technical debt might sound like an abstract concept. However, its impact is tangible and can be observed in a variety of real-world scenarios. Let’s delve into some concrete examples that illustrate how technical debt manifests and the consequences it can...
Technical Debt: The Hidden Cost of Expediency in Software Development
In the world of software development, there’s a concept that often lurks beneath the surface, silently accumulating like interest on a loan: technical debt. Just like financial debt, technical debt can be a useful tool when used wisely, but it can also...
The Art of the Code Review: A Checklist for Effective Collaboration
Code reviews are a cornerstone of quality software development. They aren’t just about catching bugs – they’re about knowledge sharing, maintaining consistency, and elevating the entire team’s skill.
A React Frontend Code Review Checklist
For my own uses I thought I’d compile a checklist for code reviews for react frontends. So in this post, we’ll go through a comprehensive checklist to ensure your React frontend code is up to par.
2024 Tech Salary Guides
Here is a list of Australia Tech Salary Guides for 2024.
Angular Frontend Code Review Checklist: Ensuring Quality in Your Angular Apps
Angular has established itself as a robust framework for building scalable web applications. To maintain high standards in your Angular projects, a thorough code review process is essential.
Understanding Linear Regression in C#: A Hands-On Implementation
Linear regression is one of the foundational algorithms in statistics and machine learning. It’s used to discover relationships between variables and to make predictions. If you’re exploring machine learning concepts or need a way to analyze trends in your C# applications, understanding...
The Ultimate Guide to Governance Frameworks
If you are new to leading tech teams, you may have heard about governance but were unsure what it is or how it applies to IT or building software. Put simply, governance gives your team structure, guidelines, and ways to measure success....
The FAIR Advantage: Data-Driven Decisions for Risk Management.
Imagine a data breach exposing millions of customer records. Traditional risk assessments, often reliant on subjective scales, struggle to communicate the true impact of such an event. Here’s where the Factor Analysis of Information Risk (FAIR) framework steps in. FAIR provides a...
Understanding the Essentials of Data Governance in the Digital Age
In today’s fast-paced digital world, data is more than just a collection of numbers and facts. It’s a vital asset that drives decision-making, innovation, and growth in organisations. However, as the volume and complexity of data surge, managing it effectively becomes a...
How to use square brackets '[]' in a string in a SQL query
In SQL, square brackets play a significant role in various scenarios, including escaping table and column names. However, due to their special meaning, SQL Server doesn’t interpret them as usual when they appear within a string. This article aims to shed light...
The trade off between Sensitivity and Specificity
When evaluating a model for a binary dependent variable, for instance logistic regression there is always going to be a trade off between Sensitivity and Specificity.
Creating Azure SQL logins & users that easily replicate to all databases.
Creating Azure SQL logins and database users is fairly simple.
How to remove x-powered-by header in .net core
Any asp dotnet developer who has had to pass security or OWASP top 10 audits knows that probably the most annoying thing about dotnet is that IIS, and now Azure app service, is the custom headers which give away what server and...
Generating Typescript Enums correctly with NSwag from Swagger docs created with Swashbuckle.
We have been generating typescript classes and data clients for our angular application with NSwag by by pointing it at our AspNetCore api swagger documentation which was generated using swashbuckle.
Restarting all the Azure App Services in a resource group using PowerShell.
Often I will need to restart the Azure App Services that I use for development and testing. Using the portal web interface can be tedious.
Debugging a couple of AspNetCore websites and your machine gets slow?
I am developing an asp.net core application comprised of 4 microservices.
Export git log history to a text file
We had a requirement to export our git log for accounting purposes.
Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found.
Today we noticed something strange happen with our dotnet core web apps. They started to throw an error when we ran them on the commandline with dotnet run: