Sam Morrow|

Drummer, software engineer and online-learning fanatic.

Experience

Senior Software Engineer | GitHub

Present, Amsterdam

I am currently working on the Copilot Agent Services team, building agentic AI experiences for GitHub Copilot. In this role, I lead development for the GitHub MCP Server and contribute to the GitHub Coding Agent, focusing on creating intelligent tools that enhance developer productivity through AI-powered automation and seamless integrations.

Previously, I helped to secure the world's code by developing the Code Scanning feature for GitHub, ensuring that vulnerabilities are caught prior to merging pull requests. The main languages involved in my role are Golang, Ruby and TypeScript, and I have worked on a wide range of features including public APIs, tooling, internal usage of Codespaces, UI development, and writing ADRs to inform architectural decisions.

Senior Software Engineer | Jump

, London / Amsterdam

At Jump I work full-stack, primarily on a python Django backend, and React front-end. In my time there I have planned numerous projects and managed other web developers, had deep input into infrastructure decisions, accommodated full re-designs and implemented a huge amount of technical SEO. Building a high-scale, SEO friendly smart job platform has involved numerous technical challenges, but the lean organisational structure, and tight feedback loops have ensured that we always deliver successful features, and we work hard to ensure that outcomes are evaluated with quantitative or qualitative data to verify the success of our work.

As well as working on the web side of things, I have worked substantially with complex SQL analytics queries, and data aggregation and management to ensure that we maximise our use of data from disparate sources and create actionable intelligence to inform our decision-making process. This has enabled people from across all teams to make smart decisions and report on the success of our projects and OKRs.

Software Engineer | IntelliSense.io

, Cambridge

Working at IntelliSense was my first professional introduction to IoT, ML and big data. In my role I worked as a full-stack developer to deliver custom front-end charting and display of data, backend data processing and account management, and some devops for a range of companies (from facilities and chip fabrication to mining and big industry). One of the largest pieces of work I completed was implementing our bare metal Kubernetes solution, enabling us to offer our ML, web, data collection and API tools to both pubic and private cloud hosts with relative ease.

Processing and managing data at that scale, while delivering real-time insights is certainly challenging, but the team was full of passionate and smart engineers and scientists, and it taught me a lot about delivering such a large-scale enterprise product - in a market dominated by large incumbents.

Web App Developer | BBC

, Belfast

During my time at the BBC I enjoyed working on a diverse range of projects such as an internal inventory management system, software for quiz shows, rolling out git version management to my team (which was made more difficult by a requirement to use an internal tool hosted on Microsoft IIS servers, which limited options somewhat) and building a web page for the North West 200 motorcycle race.

In delivering these projects I utilised technologies such as NodeJS, Angular, PHP, SQL, python, MongoDB and both internal and various cloud hosting tools.

Projects

GitHub MCP Server

The GitHub MCP Server is an open source Model Context Protocol (MCP) server that provides seamless integration with the GitHub Platform, enabling AI agents to leverage GitHub and end users to convey their goals and intentions through natural language.

When I started working on this with a couple of colleagues it was a fun side project and it just took off, getting over 10k stars on GitHub in a week and gave it this incredible momentum that lead to thousands of forks of the code and it became my primary focus at work, and a huge part of my team's work.

Leading development of this project involves deeply understanding what makes AI agents better able to leverage tools for both software development tasks and communication/project management. Helping agents to navigate tasks seamlessly is a constant challenge, but there is a tremendous opportunity to continuously make progress on this. Building in this space leads to some very exciting development opportunities, encourages just crazy enough to work ideas and offers amazing opportunities fot collaboration with open source contributors to the project.

As MCP was in such an early state at the beginning of the project it has also left so much room to experiment and influence the specification itself.

Ruffle

Submitted various pull requests for Ruffle, a WASM Flash emulator built in Rust. This is quite personal to me as I grew up in the era where Flash content was king, and with 2021 being the year that Flash player officially dies, it seemed a fitting tribute to work on improving the tool that should help keep much of it alive. Archive.org are using it to preserve thousands of swf files, and NewGrounds are using it too. Read more.

Adobe

I worked with the Adobe Aero team to enhance parts of the Aero Mobile app and link sharing experience, as well as working on prototype web applications using React and other technologies. I really enjoyed my collaboration with Adobe, and hopefully will work with them again in future.

Gameshow

Worked on a prototype game show as the only software developer, building a fully functional interactive gameshow system with a live animated computer game component in every round, building a system to support real-time-communication across multiple machines, with multiple display outputs to provide all the different components:

  • Main game screen
  • Buzzer input
  • Score boards
  • Question and player management
  • Round management

I also provided live technical support during major television network pitching sessions, and the prototype was 100% functional. I was able to iterate rapidly when changes were requested during development, and managed to accommodate every different round they wished to experiment with, and I was able to incorporate sound effects and graphics quickly as design iterations occurred. I'd love to share a video of the end result, but alas I'm not currently permitted.

Open Source Contributions

Over the years I have made numerous contributions to open-source projects, and it's something I love to do, and definitely intend to continue! I make a point of trying to help fix issues when encountering bugs or missing features, especially when they impact my day job - rather than only opening issues and expecting others to do the work. I find open source contribution to be some of the most rewarding work I have done. I particularly enjoy seeing issues close that affected many people, as a result of a feature/fix. I encourage all my employers to allow work time to be spent on open source contributions, as virtually all software companies these days rely on open source dependencies to build their own software.