Will Sewell

Will is a platform engineer at Pusher. He enjoys tackling problems associated with large scale high-throughput systems. He is a geek for new trends and technologies, but remains a pragmatist when it comes to production systems! Outside of work Will enjoys mountain biking, music, travel, and, as a new London resident, exploring what this awesome city has to offer.

beams
channels

How Pusher unified the product dashboards (and why we had…

In 2016 we decided that we wanted to explore some new product ideas. We’d…

Golang’s Realtime GC in Theory and Practice

Each day, Pusher sends billions of messages in real-time: source to destination in less…

Fuzz testing distributed systems with QuickCheck

Here at Pusher we’re always trying new approaches to web development and engineering to…

3 Approaches to Monadic API Design in Haskell

Designing a good API for a library is a challenging problem. In Haskell getting…

Making Efficient use of memory in Haskell

In part two of my series on Haskell we spoke about identifying memory leaks…

Memory profiling in Haskell

At Pusher we are currently writing a high performance system in Haskell and blogging…

Ready to begin?

From in-app chat to realtime graphs and location tracking, you can rely on Pusher to scale to million of users and trillions of messages

HackDays: Connect Pusher, Slack, Spotify and Sonos for office audio

One of the things that makes working at Pusher great is our appetite for…

Top tips and tools for optimising Haskell

(This blog post discusses CPU time profiling, but not space (memory) profiling. We’ll come…

Unit testing IO in Haskell

The generally side-effect free nature of Haskell code makes it convenient to test. Haskell…

BattleHack Toronto

A whirlwind of impressive hacks, great food, friendly people, a frighteningly tall CN tower,…

Porting the Pusher integration tests to Haskell

Those of you who use Pusher will know that the APIs we expose are…