Verified Expert in Engineering
Dan is a hands-on, full-stack software engineer, cloud systems architect, and technical leader with 20 years of experience. He specializes in Azure, .NET, and React, and development of highly scalable, globally distributed, secure, and resilient software systems targeting the cloud. Dan delivers groundbreaking software; builds stellar software teams; and instills a high-performing engineering culture, using Agile and Lean techniques, DevOps, SOLID principles, and extreme programming practices.
C#, Azure Cosmos DB, SQL, React, Azure, .NET Core, ASP.NET, Full-stack, Agile, Azure DevOps, Software Architecture, Cloud, Web Development, Blazor, Visual Studio, Razor, MVC Razor, ASP.NET Razor, HTML5, ASP.NET MVC 5, Ajax, Azure App Service, Microsoft Azure
The most amazing...
...invention of mine was the first-ever automated "matched-betting" odds compiler, enabling 80,000+ users to find arbitrage betting opportunities in real time.
Software Architect | Developer
Bespoke Kitchen and Door Carpentry Company
- Analyzed the client's requirements, architected and delivered a WinForms application that imported product and variant prices from tables in an Excel spreadsheet. Created and updated products and variants in Shopify using the ShopifySharp API.
- Managed communication with Shopify to lift the daily variant creation limit.
- Developed an application that enables the client to update their prices in Shopify for over 90,000 product variants within 30 minutes, creating any new product handles encountered as drafts.
Back-end Lead Software Engineer and Cloud Architect
Slack/Reddit-like Web Platform for Subscription Channel-based Insights.
- Architected, designed, and implemented the highly scalable, globally distributed back-end APIs using C#, .NET 6, and CQRS, message brokering with Azure Service Bus, SignalR, and serverless Azure Function command handlers.
- Designed and implemented the SQL database using Entity Framework 6 in conjunction with Azure Cognitive Search for filtering, facetting, full-text searching, auto-complete suggestions, and recommendation engine.
- Integrated Stripe and Stripe Connect payment platform for brokering subscription payments.
- Set up and maintained the CI/CD pipelines, IaC, and automated testing (unit, integration, and e2e), and created data-driven dashboards, metrics and alerts, notifications, and error logging to enable the team to make data-driven decisions.
- Collaborated effectively with the front-end lead and full-stack developers to design and implement the API interfaces and design flows for new functionality, assisting with front-end feature development and bug fixing where practical.
- Acted as Scrum Master, facilitating Scrum Ceremonies, promoting Scrum values, refining user stories, estimating velocity and capacity, and planning technical implementations. Integrated tooling and automation to help the team inspect and adapt.
- Integrated first Azure AD B2C and then a customized Open ID Connect Identity Server 4 SSO authentication provider with a custom login, sign-up, and administration UI.
Software Development Lead (Data and BI)
- Led a team of around 20 software developers, data scientists, and test engineers to deliver a new BI and data platform, using AWS Platform as a Service (PaaS).
- Delivered a single-page application with a serverless back end running on AWS Lambda to manage the creation and maintenance of serverless ETL resources.
- Designed and implemented a config-driven data pipeline mechanism, allowing users to perform big data ingestion, transformation, and cataloging, and to seamlessly deploy and run PySpark data pipelines on AWS Glue and Step Functions.
- Led a team of 20+ IT professionals, including software engineers (on and offshore), SDETs, QA testers, and data engineers.
- Architected, designed, and built the application framework for a global corporate system, using technologies such as Azure PaaS, Serverless Azure Functions, .NET Core/C#, CosmosDB, Azure SQL, Azure Service Bus, Event Hub, CQRS, and SignalR.
- Developed and oversaw an extendable, scalable React/Redux progressive web application (PWA) and front-end application framework that works offline, using service workers, SignalR, React Intl (27 languages), Yup, Formik, Hooks, Jest, and more.
- Collaborated with stakeholders, product managers, and end users to define and capture product requirements. Created technical specifications, using UML, OO design, and SQL and NoSQL database design with strict performance and security requirements.
- Built the development team, instilling a productive and sustainable development culture and implementing tech and business processes that embody Agile, Scrum, Kanban, and Lean principles, along with a DevOps mindset.
- Created and maintained the infrastructure, pipelines, configuration as code, and GitFlow releases, enabling the development team to build and deploy many times per day.
- Designed systems to capture fast feedback, using logging, alerts, and usage analytics, and to monitor elastically scaled production systems.
- Drove and co-developed two cloud-based PaaS systems, from conception to global rollout and beyond, in 30+ languages.
- Won a SPOT award that's presented to a select few individuals across CBRE's design and technology department for outstanding achievement in technology.
Software Engineer and Team Lead
Jaguar Land Rover
- Finished second out of 40,000 contestants to solve the Jaguar Land Rover (JLR) mixed-reality app coding challenge in collaboration with Gorillaz, as part of JLR's drive to recruit world-class software engineering talent.
- Delivered software-over-the-air (SOTA) capabilities for JLR's first-ever, award-winning electric vehicle (EV), the Jaguar I-PACE.
- Integrated a complex Linux embedded build into a GitLab CI/CD pipeline to continuously deliver binary deltas of software and firmware to vehicle infotainment head units over 4G.
- Reduced the time from Git commit to deployment on a vehicle from 4-6 weeks to under one hour, revolutionizing the speed and efficiency of the software team's delivery via the new SOTA capabilities that simultaneously streamlined the SDLC.
- Rewrote part of the toolchain, enabling low-level carrier-bus communication firmware on the V-850 microprocessor to communicate with the vehicle's CAN bus to support ongoing SOTA capabilities following changes to the vehicle hardware configuration.
- Co-founded Freebets4all and served as the technical director while in university from 2004 to 2005.
- Built the web application in ASP.NET MVC, AngularJS, C#, and SQL.
- Automated the core business functionality by developing and continually improving the AutoMatcher, the world's first-ever automated matched-betting odds compiler.
- Oversaw all technical operations and developed the business through new software projects and partnerships.
- Headed the offshore software development team as the technical lead and scrum master, capturing and creating requirements, designing the core architecture, and reviewing pull requests.
Software Development Manager
- Designed and implemented sales training and analytical web applications for stakeholders in the sales performance improvement industry.
- Led the SDLC, developing a strong Agile environment and software engineering culture.
- Eliminated manual builds by migrating the suite of software products to Microsoft Azure and implementing CI/CD pipelines for eight software systems.
- Integrated software systems with CRMs, including Salesforce.com, Oracle, Microsoft Dynamics, and Sugar CRM.
- Defined IT strategy by exploring emerging technologies and building proofs of concept. Contributed to the continual learning and experimentation of the software team.
- Created native mobile apps for iOS and Android with Xamarin and Xamarin.Forms and managed deployment to app stores.
- Introduced Kanban for support and maintenance, bringing the number of open support tickets down from 130 to zero, resulting in a healthy flow of requests and a drastically improved resolution time.
- Designed and implemented data-driven web applications using an Agile methodology and adhering to strict security and UI accessibility requirements for the public and private sector.
- Optimized SQL stored procedures through normalization, denormalization, indexing, and query performance analysis.
- Maintained development of a commercial mapping platform written in Classic ASP and C++.
- Researched and developed sensor-related technology, writing code in C++ and Visual Basic for Palm handheld devices.
- Interfaced with various hardware, including PCs (RS232 serial bus), Palm devices, proton magnetometers, solar panels, and GPS systems, to create a ground station for monitoring magnetic interference during wreck-location expeditions.
- Completed a bachelor's degree dissertation on wreck location using digital signal processing and fast Fourier transform (FFT).
- Created a website to trade surplus electric test equipment, including HTML and CSS, SEO, databases, and payment processing.
- Joined Sensor Technology as an employee after completing an internship, working part-time throughout university studies.
Jaguar Land Rover and Gorillaz Code Breaking Challengehttps://www.youtube.com/watch?v=y14EU9LJctY
For my prize, I was fast-tracked through JLR's recruitment process where they were seeking world-class engineering talent to build the software for their first- ever EV, the Jaguar I-PACE.
Once onboard with JLR, I delivered software-over-the-air capabilities by sending binary deltas of Linux software and firmware to the car via 4G, enabling new features, bug fixes, and performance optimizations to be delivered to the car and installed, even while the car is in motion.
Freebets4all | AutoMatcher
The system received changes to sports betting odds from 50+ sports betting providers, up to 100 times per second via a WebSocket. The odds were then stored in both SQL and NoSQL format and could be analyzed and queried to identify closely matching odds for the same betting market (e.g., correct score, match winner, and horse race winner) across different bookmakers to locate matched-betting opportunities.
The opportunity could then be selected to show the user how to make a risk-free profit on the arbitrage situation by covering all outcomes of the event, often using bookmaker's free bets and bonuses to enhance winnings. The AutoMatcher then generated instructions in multiple languages to show the user how to place the bets using a variety of techniques, such as slight variations on a mathematical formula, depending on the type of bonus the bookmaker had to offer.
This pioneering system helped Freebets4all become the UK's best-known matched-betting website, generating revenue via affiliate marketing and well-loved by the matched-betting community of 80,000+ users.
.NET Core, .NET, ASP.NET MVC, ASP.NET Core, .NET 5, ASP.NET, ASP.NET Web API, Razor, MVC Razor, ASP.NET MVC 5, Redux, ASP.NET Web Forms, AngularJS, Bootstrap, ASP, Entity Framework Core, Angular, Blazor
Entity Framework, Azure API Management, Stripe Connect API, Stripe, REST APIs, React, jQuery, React Redux, SignalR, Node.js, Shopify API
Visual Studio, Azure App Service, Terraform, Azure Active Directory B2C (ADB2C), Azure Application Insights, Microsoft Power BI, Jira, Apache Maven, GitLab, Ansible, AWS Glue, Amazon Athena, Webpack, Azure Key Vault, Microsoft Azure App Service, Azure DevOps Services, Azure Search, C#.NET WinForms
Scrum, Azure DevOps, Continuous Delivery (CD), Continuous Integration (CI), Kanban, Serverless Architecture, DevOps, Agile, REST
Azure PaaS, Azure, Azure Functions, Docker, Amazon Web Services (AWS), Azure IaaS, Shopify
Azure Cosmos DB, NoSQL, Microsoft SQL Server, Azure SQL, Data Integration, Azure Active Directory, MySQL, Amazon Aurora, Azure Blobs
Architecture, Cloud, SOLID Principles, APIs, Full-stack, Full-stack Development, Team Management, CI/CD Pipelines, Software Architecture, Web Development, IT Consulting, Team Leadership, Cloud Architecture, Ajax, Microsoft Azure, Code Review, Source Code Review, Project Consultancy, IT Strategy, SEO Tools, Azure Data Lake, Front-end, Amazon API Gateway, Agile Coaching, Scrum Master, Lean, Azure Service Bus, Azure Event Grid, User Experience (UX), Serverless, .NET 6, Azure Data Factory, Messaging, ShopifySharp, .NET 7
Bachelor's Degree with Honors in Computer Science
Nottingham Trent University - Nottingham, UK
Advanced Levels in Information Communication Technology and Business
Warwickshire College - Leamington Spa, UK
Microsoft Certified DevOps Engineer
Microsoft Azure Developer Associate
Professional Scrum Product Owner (PSPO)
Professional Scrum Developer (PSD)
Professional Scrum Master I (PSM I)