About the service
Most integrations break in silence. A service fires an event, the receiver happens to be restarting, nobody tries again, and you learn that the customer never got a confirmation from the customer. I build the layer that makes this exchange boring and predictable: an intake point for events, a queue behind it, routing for notifications, and a delivery log that answers the question "did it arrive" without guesswork.
Work starts with the event map, not with code. We walk through what actually happens inside your systems and pick out what deserves a reaction: a new order, a failed payment, a status change, a signed document. For each one I write down who has to learn about it, how quickly, and through which channel. Half of the future noise disappears at this step, because until now nobody had asked whether an event earned a message at all.
Then the mechanics. An incoming webhook without a signature check is not accepted — otherwise anyone at all can send you an event, and a forged one costs far more than a missed one. Accepted events go into a queue and are retried with growing gaps while the far side is unavailable. Repeats are normal here, so every event carries a key, and a second copy of the same key changes nothing. Secrets and tokens are kept outside the code and never reach the log. The notifications themselves carry a link and a number and nothing more: personal data and document contents are not put into a working chat that half the company can scroll through.
What the work includes:
— a map of events with a reason for each one;
— webhook intake with signature checks and refusal of anything unsigned;
— a queue with retries and a visible backlog of unprocessed events;
— protection against processing the same event twice;
— routing to mail and to the team messenger, per event and per recipient;
— message templates in plain language, with no raw payload dumps;
— a delivery log searchable by event, with a manual re-send;
— queue monitoring that speaks up when the backlog stops draining;
— a short written guide for the team.
Work starts with the event map, not with code. We walk through what actually happens inside your systems and pick out what deserves a reaction: a new order, a failed payment, a status change, a signed document. For each one I write down who has to learn about it, how quickly, and through which channel. Half of the future noise disappears at this step, because until now nobody had asked whether an event earned a message at all.
Then the mechanics. An incoming webhook without a signature check is not accepted — otherwise anyone at all can send you an event, and a forged one costs far more than a missed one. Accepted events go into a queue and are retried with growing gaps while the far side is unavailable. Repeats are normal here, so every event carries a key, and a second copy of the same key changes nothing. Secrets and tokens are kept outside the code and never reach the log. The notifications themselves carry a link and a number and nothing more: personal data and document contents are not put into a working chat that half the company can scroll through.
What the work includes:
— a map of events with a reason for each one;
— webhook intake with signature checks and refusal of anything unsigned;
— a queue with retries and a visible backlog of unprocessed events;
— protection against processing the same event twice;
— routing to mail and to the team messenger, per event and per recipient;
— message templates in plain language, with no raw payload dumps;
— a delivery log searchable by event, with a manual re-send;
— queue monitoring that speaks up when the backlog stops draining;
— a short written guide for the team.