CTO · Keystroke Group · Toronto

Building software that quietly runs other people’s businesses.

I’m Ahsan Khalid — CTO at Keystroke Group. For over a decade I’ve built the apps that live inside Act! CRM and Microsoft Outlook: the ones sales teams open at 8am and never think about again. Invisible is the highest compliment this kind of software gets.

Ahsan Khalid
Ahsan Khalid EST. 2013
HAMILTON, ON
Selected work

Three products, one stubborn idea.

Here are just three of several dozen of the most successful applications I have worked on in the past. Each of these lives inside somebody else’s daily workflow. That single constraint shapes everything — the installer, the sync strategy, the failure modes, and the silence when it all works.

The aim of these products is to provide an excellent service to the users and in doing so, make the Act! product extremely sticky. The more people rely on these apps, the more they rely on Act! itself.

Start a project
01 Flagship

Act4Outlook

The world’s best-selling Act! CRM add-in for Microsoft Outlook. It keeps contacts, calendars, tasks and history in sync between two systems that were never designed to talk to each other.

The hard part was never the sync. It’s the eleven years of edge cases underneath it: half-migrated mailboxes, laptops that went offline mid-write, corporate proxies, and every version of Outlook still somehow running in production. With the recent update, the product now even supports integration with OpenAI’s API to summarize email threads and generate suggested replies, and much much more.

C#Act! CRM SDKVSTO Office AddinSQLiteDevExpressOpenAI
Explore
02 Acquired

Custom Tables for Act!

A visual table builder that let Act! users model their own data — no developer, no schema migration, no support ticket. Swiftpage acquired it and now ships it as a first-party feature of Act!, for both Windows and web.

Getting acquired is a strange kind of code review in itself. The whole thing had to survive somebody else’s architecture, release cadence and support org. This required a lot of architectural changes, but the end result was a product that shipped to thousands of users and kept them happy for years. It was a great experience to see the product through to acquisition and beyond.

C#Act! CRM SDKMicrosoft SQL ServerDevExpressASP.NET
Explore
03 In production

Mailmerge for Act!

Template-driven email merge with bounce tracking and opt-in management, wired through Microsoft Graph and Google Cloud APIs so mail leaves from the sender’s own mailbox rather than a shared relay.

The hardest part of this project was the email itself. The product has to work with every email provider, email client, every spam filter, and every corporate IT policy — all while keeping the user’s mailbox safe and their reputation intact by implementing a custom built opt-out system.

C#Act! CRM SDKMicrosoft SQL ServerDevExpressOAuth 2.0MS Graph APIGoogle Cloud APIs
Explore
The path

From the support queue to the CTO chair.

Two roles, thirteen years, and a very short commute between them.

  • Current
    Keystroke Group Inc.
    JAN 2015 — PRESENT
    TORONTO, ON

    Chief Technology Officer

    • Own technical strategy and the product roadmap across the company’s entire software line.
    • Architect and ship the Act! add-in suite — Act4Outlook, Custom Tables and Mailmerge — from spec to installer.
    • Build and maintain the .NET services, REST APIs and integrations those products depend on.
    • Run cloud and DevOps end to end: environments, deployment pipelines, monitoring and incident response.
    • Drive adoption of modern tooling across the team, including LLM-assisted development workflows.
  • Earlier
    Hero Technical Solutions Inc.
    MAY 2013 — DEC 2014
    HAMILTON, ON

    Software Developer & Technical Support Analyst

    • Built and supported line-of-business applications for small and mid-sized clients.
    • Handled escalated technical support — still the fastest way to learn what software actually does to people.
    • Translated between the support queue and the codebase, which turned out to be the whole job.
The tech stack

What I reach for.

Languages & runtimes

C#TypeScriptNode.js & APIs

Frontend

Svelte & SvelteKitReact & Next.jsTailwind CSS

Backend & data

REST APIs & MicroservicesTSQL & PostgresMS SQL Server

Platform & operations

Cloud (AWS/Azure/GCP)CI/CD with GitHub ActionsWindows & Linux Server Administration

Integrations

Act! CRM SDK & Web APIVSTO & Office Addins

Direction

Architecture & System DesignLLMs & AI Integration
About

The long version.

Currently based in Hamilton Ontario, I’ve spent my career in a corner of software that doesn’t get written about much: business tooling that has to work inside somebody else’s product, on somebody else’s schedule, against somebody else’s API. It’s unglamorous, and it has taught me more about engineering than any greenfield project ever did.

At Keystroke Group I’m responsible for what we build and how we build it — architecture, the release pipeline, the roadmap, and the uncomfortable conversations about what we’re not going to ship. The team is small, so I still write code most weeks. I consider that a feature.

Outside the Act! ecosystem I build with Svelte, Next.js and TypeScript, run workloads on whichever of AWS, Azure or GCP fits best, and spend a suspicious amount of time on developer tooling and LLM-assisted workflows.

What I enjoy building

Integrations that hide their own complexity. Internal tools people actually open. Anything where the win is measured in support tickets that never got filed.

How I work

Small teams, short feedback loops, and a bias toward shipping the boring version first. I’d rather have a dull thing in production than a clever thing in review.

Portrait of Ahsan Khalid
Ahsan Khalid
CTO · KEYSTROKE GROUP, TORONTO
FocusIntegrations & platform
TimezoneEST (UTC−5)
StatusOpen to interesting problems
Connect on LinkedIn
Contact

Got something gnarly?

Integration work, .NET architecture, a product that has outgrown its plumbing — or just a good technical argument. I read everything that comes through.