All client work

Sky Go desktop

I was one of two lead developers on a five-person team building Sky Go desktop from scratch for Windows and Mac. We used Electron, React and JavaScript, connecting to an existing API built for Sky Q. I wrote the code that discovers Sky Q boxes and lets users view recordings stored on their box through the desktop app.

Client
Sky
Platform
Windows and macOS
My role
One of two lead developers · Contract
Initial team
Five people
When
September 2016 – September 2018

The product

Sky Go lets subscribers watch television on their own devices. My work was on the desktop application: a cross-platform product built with Electron, React and JavaScript. We used an existing API built for Sky Q.

My contribution

I shared technical leadership with one other developer in our five-person team, working across Sky’s design and backend teams to build the core desktop application and keep it maintainable as it developed. The wider engineering stack included Redux, Node.js, RxJS and WebSockets.

Alongside the development work, I mentored junior and graduate engineers through pairing, technical guidance and day-to-day support.

Working with the Sky Q box

I worked directly with a Sky Q box and wrote the discovery code that lets the desktop app find it. I also wrote the integration that allows users to view recordings stored on their box through Sky Go desktop, using the existing Sky Q API.

From Sky Go to SCR Tracker

Three of our original five-person team went on to become founders of SCR Tracker.

Technology stack

Electron
The cross-platform Windows and macOS desktop app.
JavaScript
The desktop application's implementation language.
React · Redux
The interface and application state.
Node.js · RxJS · WebSockets
Application services and asynchronous communication.
Existing Sky Q API
Integration with the Sky Q box for viewing recordings stored on it.

Inside Sky Go desktop

Sky
Sky Go desktop app shown on a laptop, with a programme catalogue and sidebar navigation

Sky’s published desktop-app image. This is later product imagery shown for context, rather than a dated capture from my 2016–18 contract.

Have a product or technical problem in mind?

I can help with a whole build or a focused piece of work.

Work with me