Dan Cook, Developer in Tamba-Sasayama, Hyogo, Japan
Dan is available for hire
Hire Dan

Dan Cook

Verified Expert  in Engineering

Full-stack Developer

Location
Tamba-Sasayama, Hyogo, Japan
Toptal Member Since
January 11, 2021

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.

Portfolio

Bespoke Kitchen and Door Carpentry Company
Shopify, Shopify API, ShopifySharp, .NET 7, C#.NET WinForms
Slack/Reddit-like Web Platform for Subscription Channel-based Insights.
.NET, .NET 6, Azure PaaS, Azure, Serverless, Azure SQL, Azure Search, SQL...
Arriva
Amazon Web Services (AWS), Python, React, Amazon Aurora, Amazon Athena...

Experience

Availability

Part-time

Preferred Environment

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.

Work Experience

Software Architect | Developer

2022 - 2023
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.
Technologies: Shopify, Shopify API, ShopifySharp, .NET 7, C#.NET WinForms

Back-end Lead Software Engineer and Cloud Architect

2021 - 2022
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.
Technologies: .NET, .NET 6, Azure PaaS, Azure, Serverless, Azure SQL, Azure Search, SQL, TypeScript, Azure DevOps, Scrum Master, Scrum, Agile, DevOps, Stripe, Stripe Connect API, C#, .NET Core, Serverless Architecture, React, CI/CD Pipelines, Security, Software Architecture, Cloud, IT Consulting, JavaScript, ASP.NET Web API, APIs, C#.NET, Team Leadership, REST APIs, Cloud Architecture, Visual Studio, Razor, MVC Razor, ASP.NET Razor, Front-end, HTML5, ASP.NET MVC 5, Ajax, Azure App Service, Microsoft Azure, Code Review, Source Code Review, Project Consultancy

Software Development Lead (Data and BI)

2020 - 2021
Arriva
  • 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.
Technologies: Amazon Web Services (AWS), Python, React, Amazon Aurora, Amazon Athena, Amazon API Gateway, AWS Glue, Architecture, Team Management, TypeScript, CI/CD Pipelines, Security, Microsoft Power BI, Data Integration, Software Architecture, Cloud, IT Consulting, JavaScript, APIs, Team Leadership, REST APIs, Cloud Architecture, Visual Studio, HTML5, Ajax, Microsoft Azure, Code Review, Source Code Review, Project Consultancy

Tech Lead

2018 - 2020
CBRE Singapore
  • 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.
Technologies: Azure Functions, Azure Event Grid, Azure Service Bus, SQL, Azure Cosmos DB, DevOps, Azure DevOps, Azure PaaS, Azure, C#, .NET Core, Redux, React, ASP.NET, Architecture, Full-stack Development, Team Management, ASP.NET Core, TypeScript, CI/CD Pipelines, Security, Azure Data Factory, Data Integration, Azure Data Lake, Software Architecture, Cloud, IT Consulting, JavaScript, ASP.NET Web API, APIs, C#.NET, Team Leadership, Kanban, REST APIs, Cloud Architecture, Visual Studio, Razor, MVC Razor, ASP.NET Razor, Front-end, Azure SQL, HTML5, Ajax, Azure App Service, Microsoft Azure, Code Review, Source Code Review

Software Engineer and Team Lead

2017 - 2018
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.
Technologies: Amazon Web Services (AWS), Java, C++, Terraform, Ansible, Docker, Python, DevOps, GitLab, Architecture, Team Management, CI/CD Pipelines, Software Architecture, Cloud, JavaScript, MySQL, APIs, Team Leadership, Jira, Kanban, REST APIs, Cloud Architecture, Visual Studio, HTML5, Ajax, Code Review, Source Code Review

Technical Director

2005 - 2018
Freebets4all
  • 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.
Technologies: User Experience (UX), REST, SEO Tools, IT Strategy, DevOps, Azure, NoSQL, SQL, C#, ASP.NET MVC, ASP.NET, Architecture, Full-stack Development, Team Management, ASP.NET Core, CI/CD Pipelines, Software Architecture, JavaScript, ASP.NET Web API, APIs, C#.NET, jQuery, Team Leadership, REST APIs, Visual Studio, Razor, MVC Razor, ASP.NET Razor, Front-end, Azure SQL, HTML5, ASP.NET MVC 5, Ajax, Azure App Service, Microsoft Azure, Code Review, Source Code Review, IIS, Windows Presentation Foundation (WPF)

Software Development Manager

2012 - 2017
WHITE SPRINGS
  • 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.
Technologies: CSS, Bootstrap, Entity Framework, SQL, Azure DevOps, Scrum Master, Agile, AngularJS, ASP.NET Web Forms, ASP.NET MVC, C#, .NET, ASP.NET, Architecture, Full-stack Development, Team Management, ASP.NET Core, CI/CD Pipelines, Security, Data Integration, Software Architecture, JavaScript, ASP.NET Web API, APIs, C#.NET, jQuery, Team Leadership, Jira, Kanban, REST APIs, Visual Studio, Razor, MVC Razor, ASP.NET Razor, Front-end, Azure SQL, HTML5, ASP.NET MVC 5, Ajax, Azure App Service, Microsoft Azure, Code Review, Source Code Review, IIS, .NET 2

Software Developer

2007 - 2009
Experian
  • 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++.
Technologies: C++, Active Server Pages (ASP), SQL, C#, ASP.NET Web Forms, ASP.NET, ASP.NET Core, Security, JavaScript, ASP.NET Web API, APIs, C#.NET, VB.NET, jQuery, REST APIs, Visual Studio, MVC Razor, ASP.NET Razor, Front-end, Ajax, Azure App Service, IIS, .NET 2

Programmer

2001 - 2007
Sensor Technology
  • 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.
Technologies: CSS, HTML, APIs

Jaguar Land Rover and Gorillaz Code Breaking Challenge

https://www.youtube.com/watch?v=y14EU9LJctY
Competed and finished second out of 40,000 participants in the JLR code-breaking challenge, in collaboration with Gorillaz, by solving a series of technical puzzles and coding challenges in three days.

The challenges were designed to test curiosity, persistence, lateral thinking, and problem-solving skills. For example, obtaining passwords and keys by analyzing sound waves, interrogating binary data hidden in images, writing JavaScript to mathematically align randomly swirling pixels, and manipulating color hues programmatically. Instead of questions or instructions, participants had to figure out how to crack the codes.

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 AutoMatcher (no longer operating due to unavailability of odds data) was the world's first-ever automated matched-betting odds compiler.

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.

Languages

C++, C#, C#.NET, VB.NET, ASP.NET Razor, SQL, Java, TypeScript, JavaScript, ECMAScript (ES6), HTML5, Python, CSS, Active Server Pages (ASP), HTML, C

Frameworks

.NET Core, .NET, ASP.NET MVC, ASP.NET Core, .NET 5, ASP.NET, ASP.NET Web API, Razor, MVC Razor, ASP.NET MVC 5, .NET 2, Windows Presentation Foundation (WPF), Redux, ASP.NET Web Forms, AngularJS, Bootstrap, Entity Framework Core, Angular, Blazor

Libraries/APIs

Entity Framework, Azure API Management, Stripe Connect API, Stripe, REST APIs, React, jQuery, React Redux, SignalR, Node.js, Shopify API

Tools

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, Azure DevOps Services, Azure Search, C#.NET WinForms

Paradigms

Scrum, Azure DevOps, Continuous Delivery (CD), Continuous Integration (CI), Kanban, Serverless Architecture, DevOps, Agile, REST

Platforms

Azure PaaS, Azure, Azure Functions, Docker, Amazon Web Services (AWS), Azure IaaS, Shopify

Storage

Azure Cosmos DB, NoSQL, Microsoft SQL Server, Azure SQL, Data Integration, Azure Active Directory, MySQL, Amazon Aurora, Azure Blobs

Other

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, IIS, IT Strategy, SEO Tools, Security, 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

2004 - 2007

Bachelor's Degree with Honors in Computer Science

Nottingham Trent University - Nottingham, UK

2002 - 2004

Advanced Levels in Information Communication Technology and Business

Warwickshire College - Leamington Spa, UK

MARCH 2021 - MARCH 2023

Microsoft Certified DevOps Engineer

Microsoft

FEBRUARY 2021 - FEBRUARY 2023

Microsoft Azure Developer Associate

Microsoft

MAY 2016 - PRESENT

Professional Scrum Product Owner (PSPO)

Scrum.org

NOVEMBER 2015 - PRESENT

Professional Scrum Developer (PSD)

Scrum.org

NOVEMBER 2015 - PRESENT

Professional Scrum Master I (PSM I)

Scrum.org

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring