About CraigTP's Blog

Wednesday 14 Mar 2018 at 15:55

Hi there. My name is Craig Phillips. I'm an experienced Senior Software Engineer, Systems Architect and Microsoft Certified Professional with a passion for software development.

I work primarily, but not exclusively, with Microsoft technologies and the .NET / .NET Core frameworks, leading complex and challenging enterprise software development projects to successfully deliver robust, secure, scalable and efficient software solutions, encompassing over 20 years of experience in the field.

An accomplished team leader, mentor and architect, I'm skilled at taking a leading role in the overall architecture of a project, in driving team developments and employing proven industry disciplines and best-practices to deliver successful software projects that frequently exceed client expectations.

I'm passionate about distributed systems design, CQRS and event sourcing and a proponent of domain-driven design to ensure that solutions are laser-focused on solving real business problems. I'm an open source enthusiast and advocate using the best and most appropriate tools available, providing for an effective and pragmatic solution that delivers genuine and quantifiable business value.

I've been programming for over 30 years, starting in the early 1980's as a young boy. I have moved through numerous platforms and programming languages over those years including many different flavours of BASIC, COBOL, Pascal, C, and even a little bit of 6510 Assembler! I've enjoyed working with many different machines in that time including many Commodore computers (PET, VIC-20, C64, Amiga 500 & 1200) back in the day as well as many PC platforms in more modern times, right through to cloud and container platforms today.

These days, I'm mostly found analysing business requirements from a strong domain-driven design perspective, crafting small, decoupled services to build larger message-driven solutions with a strong leaning towards CQRS and event sourcing. I mainly code in C# targeting .NET Core or Golang, although other languages and technologies creep in every now and again. I mostly use Visual Studio Code across a range of operating systems, leveraging core services in any of the big three cloud providers as well as targeting a wide range of databases from traditional RDBMS's, through document databases, to event streams.

I maintain a presence on many web sites around the internet. This blog is obviously one of them, but you can find links to all my other internet presences including my online StackOverflow Careers CV, my public source code repositories, along with my email address and other contact details, at my “about me” style landing page, which can be found here:


Please feel free to check out my other presences around the web.