Skip to content

Expertise

What I actually work in

18 years across the call path — the dialer that places the call, the switch that routes it, the billing that rates it, and the CRM that is supposed to remember it happened.

Dialers & telephony

The call path itself — what places the call, what routes it, and what the agent sits in front of.

VICIdial

Open source

Open-source predictive dialer and full contact-centre suite built on Asterisk — predictive and preview dialing, inbound queues, agent screens, recording and reporting. It is what a very large share of high-volume outbound operations actually run on.

What I do with it

My core specialism, and the reason most people call. Cluster architecture and capacity planning, migrations off ageing or drifted builds, pacing and detection tuning, compliance configuration, and rescues where the symptom everyone is looking at is not the cause.

  • Clustering
  • Migrations
  • Pacing
  • Rescues
Read: What breaks first when you scale VICIdial

Asterisk

Open source

The open-source telephony engine underneath VICIdial and much of the industry — SIP signalling, media handling, call routing and the dial plan.

What I do with it

Dial plan design, SIP trunk configuration, codec and media troubleshooting, and the channel-level debugging that most "the dialer is broken" problems eventually come down to. If VICIdial is the application, this is the layer where the real diagnosis happens.

  • Dial plan
  • SIP
  • Media & codecs
  • Channel debugging

3CX

Commercial

Commercial software PBX for business phone systems — SIP trunking, browser and mobile softphones, call queues, IVR and presence.

What I do with it

Deployment and integration for teams who need a business phone system alongside — or instead of — an outbound dialer. Trunk provisioning, queue and IVR design, and connecting it to the rest of the stack.

  • PBX
  • SIP trunking
  • Queues & IVR
  • WebRTC

SIP infrastructure

The signalling layer in front of everything else — where calls get routed, balanced and failed over before a media server ever sees them.

OpenSIPS

Open source

High-throughput open-source SIP proxy and router — call routing, load balancing, registration, NAT traversal and topology hiding. Because it handles signalling without touching media, it absorbs volumes an application server cannot.

What I do with it

Putting a proxy in front of dialer clusters so signalling scales independently of media, and so a node can be pulled for maintenance without dropping calls. Load balancing across Asterisk backends, least-cost routing decided at the SIP layer, and carrier failover that has actually been tested by failing a carrier over rather than assumed.

  • Load balancing
  • SIP routing
  • Failover
  • NAT traversal

Kamailio

Open source

Open-source SIP server in the same lineage as OpenSIPS — both descend from OpenSER — used as registrar, edge proxy and session border element at very large scale.

What I do with it

Registrar and edge proxy for distributed agents, dispatcher-based failover across backends, and TLS and SRTP termination where the client or the regulator requires encrypted signalling and media. Also the layer where you hide your internal topology from carriers, which matters more than people expect.

  • Registrar
  • Edge proxy
  • TLS & SRTP
  • Dispatcher failover

WebRTC

Open source

Browser-native real-time audio and video with nothing to install — the technology behind in-browser softphones and the reason remote agents no longer need a desk phone or a desktop client.

What I do with it

Browser webphones for distributed floors, WebRTC-to-SIP gateway configuration, and the ICE/STUN/TURN work that decides whether an agent behind a hotel NAT can actually take a call. Then the codec question that always follows: Opus in the browser, G.711 or G.729 toward the carrier, and where the transcoding cost lands.

  • Browser softphones
  • ICE/STUN/TURN
  • SIP gateway
  • Codec strategy

Billing & carrier

What happens to the minutes after the call: rating, routing by cost, and reconciling against the carrier.

Magnus Billing

Open source

Open-source VoIP billing and switching built on Asterisk — call rating, invoicing, DID inventory, least-cost routing and reseller management.

What I do with it

Standing up billing for wholesale and reseller operations: rate decks, LCR configuration, DID inventory, and reconciliation against carrier CDRs when the numbers disagree — which, at wholesale volumes, they routinely do.

  • Call rating
  • Least-cost routing
  • DID inventory
  • CDR reconciliation
Read: Buy answer-seizure ratio, not per-minute rates

CRM & integration

Where the outcome of the call is supposed to end up — and the integrations that decide whether it actually does.

vTiger

Open source

Open-source CRM covering leads, deals, ticketing and campaign management, widely paired with open-source telephony.

What I do with it

Integrating CRM with the dialer so records populate from live calls rather than after them — click-to-call, screen pops, disposition sync and lead recycling rules that do not quietly lose leads between systems.

  • Click-to-call
  • Screen pops
  • Disposition sync
  • Lead recycling

SugarCRM

Commercial

Established CRM platform used across mid-market sales and support operations, and the codebase vTiger originally forked from.

What I do with it

The same problem on a different platform: telephony integration, call logging, and keeping the CRM and the dialer from disagreeing about the state of the same lead. Most CRM-dialer pain is a reconciliation problem, not an integration problem.

  • Telephony integration
  • Call logging
  • Data reconciliation

Platforms built from scratch

Systems built because nothing off the shelf did the job.

Press-1 platform

Built in-house

High-volume multi-tenant Press-1: a recorded message goes out at scale, and the fraction who press 1 are connected to a live agent. Punishing infrastructure, because almost all the work happens on calls that never reach a human.

What I do with it

Built to hold past 5,000 concurrent attempts, with answering-machine detection written in-house rather than licensed per port — at this volume, per-port licensing costs more than the engineering did. Billing is accurate to six decimal places per tenant, which sounds excessive until you multiply a rounding error by millions of attempts a day and hand the result to someone who reconciles it against their own CDRs.

  • 5,000+ concurrent
  • Multi-tenant
  • 6-decimal billing
  • In-house AMD

Voicemail drop platform

Built in-house

Pre-recorded voicemail delivery: instead of repeating the same message on every machine, an agent drops a recording and moves straight to the next call.

What I do with it

Built for outbound floors where agents were losing a meaningful share of every shift to leaving identical messages. The engineering interest is in the guardrails rather than the playback — the rules on pre-recorded and ringless voicemail vary by jurisdiction and change, so consent state and per-region controls belong in the platform, not in an agent's judgement at 4pm.

  • Recorded message delivery
  • Consent state
  • Per-region rules
  • Agent time

AMD detection platform

Built in-house

Answering-machine detection — deciding, within the first seconds of a connect, whether a human or a machine picked up.

What I do with it

The most consistently misconfigured component in outbound, and the one I have spent the most time on. Detection tuned against thousands of labelled recordings rather than shipped defaults, per-campaign rather than one global setting. Get it right and abandon rate and connect rate improve together — which is not a trade-off you usually get offered.

  • Signal classification
  • Labelled tuning
  • Per-campaign models
  • Abandon rate
Read: Your abandon rate is measuring two different things

Running something that isn't on this list?

Most of what matters transfers — carriers, SIP, routing and compliance behave the same whichever application sits on top. Tell me what you're on and I'll tell you honestly whether I'm the right person for it.