Hi, I’mMark Murphy

Full-stack Software Developer.
Always exploring.

Black and white portrait of Mark Murphy

A little about me

Thoughtful software.
From both sides of the screen.

I’ve spent 17 years building software across design, frontend development, and backend systems.

I’ve worked at startups and growing product companies, including venture-backed startups with more than $20 million in combined funding and two companies that were later acquired.

What I enjoy building

I especially enjoy building APIs that are a pleasure to work with. Having spent years on the frontend, I know how much a thoughtful API can help the person on the other side. My early experience with Stripe’s APIs and documentation shaped how I think about developer experience and the care that goes into it.

I have the same appreciation for a beautiful interface brought to life through great implementation. Over time, I realised that development was the part I most wanted to practise. I’ve since focused on engineering, bringing that attention to design and usability with me.

What I’ve helped build.

From athlete assessments to coaching tools, a look at my contributions and the difference they made.

CURV AI System Design · Computer Vision · Applied AI

From movement to
meaningful feedback.

I helped build assessment and coaching products that turned athletes’ videos into meaningful feedback. I designed and built the systems behind these products, from making the computer vision pipeline faster and more cost-effective to connecting assessment insights with AI coaching.

Efficiency

2× faster.
94% lower cost.

Refactored the computer-vision assessment pipeline with the team, doubling processing speed and reducing processing costs by an order of magnitude.

Reliability

More reliable background tasks.

Implemented transactionally staged jobs, keeping database changes and job creation together to stabilize asynchronous processing.

Product

Coaching built around the athlete.

Built backend tools for AI-generated training programs, answers about assessment results, and feedback to help athletes improve.

KINDUCT Full-stack development · Team leadership · Product design

A hand in the product.
A role in the team.

Kinduct’s athlete management platform helped coaches and performance staff bring together athlete health, training, and performance data. It served major sports leagues, collegiate teams, and military organizations.

Platform

From APIs to the team dashboard.

Built Node.js/GraphQL backends, React frontends, and integrations. Helped a small team bring a redesigned dashboard to life, giving coaches and performance staff a central view of athlete data.

Development

Building company-wide support for React.

Championed the move from an in-house jQuery framework to React, presenting its benefits to management and securing team and company-wide buy-in. Helped lead the transition and supported adoption through company lunch-and-learns.

Design

Head of Design

Owned the end-to-end design of an iPad app, working with Apple to gather feedback and refine the experience.

GATORADE + KINDUCT

Hydration tools for elite athletes.

Helped build Gx Powered by Kinduct, combining athlete weight tracking and hydration recommendations for 55+ professional and collegiate teams.

See it in action on TikTok
OPEN SOURCE

Giving something back.

Protocol extension

tus

Authored an extension adopted into the tus resumable upload specification.

Vimeo, Cloudflare, and Supabase use tus for resumable uploads.

Explore the protocol
Bug report

OpenAI Agents SDK

Isolated and reported a streaming bug that identified the wrong active agent during handoffs, with a minimal reproduction.

View bug report
Contribution

Adobe Brackets

Improved recognition of files without extensions so the editor could apply the right language support.

View contribution
Contribution

React integration examples

Fixed an event-handling bug in React’s official integration examples.

View contribution
Shared code · Rails

Keyset pagination for Rails

Paginate Rails models using primary-key boundaries instead of offsets, with forward and backward navigation.

View implementation
Shared code · Rails

Resumable files API

Chunked file uploads that can resume after an interruption, with documented API requests.

View implementation

Following my curiosity.

Personal projects, new tools, and ideas worth exploring.

Concept illustration of ChatKit on iPhone, with a native calendar card, a line chart, and a weather widget
SWIFT · SWIFTUI · SDK EXPERIMENT

ChatKit for iOS

How far could I take OpenAI’s ChatKit components into native mobile? I built a Swift SDK to explore that question, with a focus on making it easy for mobile teams to drop an AI chat experience into their apps.

ChatKit for iOS

Why I built it

I wanted to explore both sides of the experience: native components for the person using the app, and a small, approachable API for the developer building it.

How I approached it

The package separates networking, streamed events, and conversation state from an optional SwiftUI layer. Teams can configure a control and mount a view, while keeping access to the core if they want their own interface.

What the prototype covers

Streaming responses, conversation history, Markdown, and interactive widgets with actions. It’s an exploration of how much of the ChatKit experience can feel at home on iOS, with developer experience treated as part of the product.

Nextwatch movie discovery app showing its poster grid, search, and movie filters
NEXT.JS · TYPESCRIPT

Nextwatch

A movie-night companion for discovering new and upcoming releases, watching trailers, and keeping a personal watchlist. Built with the TMDB API and a soft spot for science fiction.

Luma showing space photography in its grid view with search and bookmark controls
NEXT.JS · TYPESCRIPT

Luma

A photography browser with search, filters, and saved favourites. Rebuilt with modern React, progressive image loading, and a protected Unsplash API integration.

Away from
the screen.

Mountains, forests, rivers —
a healthier kind of debugging.

I’m happiest with something to explore: a climbing route, a trail, or a quiet stretch of water. Add snowboarding, backcountry trips, and a fascination with space and science, and you have a pretty good picture of me.