Don't need the full scoop? Download the key elements in Résumé/CV format! Download Résumé/CV
February 2024— Co-Founded Innerblue, LLC - a software development company. Launched its first mobile app & service: an automated driving license appointment cancellation checker.
October 2023— Blog: C# + WebAssembly + OpenGL = ?
July 2023— Awarded the Microsoft Most Valuable Professional (MVP) award for 2024 in recognition of the continued outstanding & community leadership following my MVP award in 2023.
July 2023— Left L3Harris to pursue a gap year dedicated to open-source projects, side-projects, and general portfolio building. Lived in the United States for the duration of this gap year.
April 2023— Blog: Announcing Silk.NET 2.17: Cleaner Code, Smoother Experience.
March 2023— Blog: Introducing JackCS to the Silk.NET Community
April 2022— Promoted to Software Engineer D at L3Harris, a role I continued in until July 2023.
January 2022— Blog: Announcing the Silk.NET Community
November 2021— Blog: Silk.NET, .NET 6, and the Sunsetting of Xamarin Support
May 2021— Successfully secured financial sponsorship for Silk.NET through JetBrains' Open-Source Power-Ups program, solidifying its position as a recognized and supported project, while leveraging this partnership to further enhance the development and publicity of the Silk.NET library. As part of this, I delivered a webinar on JetBrains TV to promote both the project and the Open-Source Power-Ups program.
March 2021— Silk.NET acquired by the .NET Foundation – Microsoft’s open-source umbrella – with whom I continue to develop open-source software, concluding the operations of Ultz Limited. Effectively orchestrated the transfer of intellectual property rights for Silk.NET to the .NET Foundation, spearheading all necessary communications with the involved community stakeholders, ensuring a smooth and transparent transition process.
March 2021— Blog: .NET Foundation & The next stage for Silk.NET
February 2021— Blog: Generating an entire library: An introduction to BuildTools
January 2021— Blog: Announcing Silk.NET 2.0: The Largest Update To Date
December 2020— Blog: Silk.NET 2.0 Preview 5: The Final Preview
December 2020— Blog: Go live with Silk.NET 2.0 Preview 4
November 2020— Blog: Announcing Silk.NET 2.0 Preview 3
September 2020— Joined L3Harris as a Software Engineer C. L3Harris is a multinational technology company & one of the largest defence contractors globally. I worked in the Intelligence & Cyber International division, producing a variety of electronic warfare and cyber-security solutions for the UK government and its allies.
- Designing and developing software components within large embedded systems against system requirements derived from customer input.
- Leading customer-funded collaborative projects, producing software to customer specifications and keeping in regular communication with customer representatives.
- Developing modular electronic warfare software development platforms and cybersecurity solutions built to high-grade security-critical customer standards.
- Maintaining critical Test Automation software used for systems testing of high-grade products.
- Working as part of a large, multi-discipline (software, systems, FPGA) team; coordinating & collaborating with the team on software development tasks.
- Running regular inter-project catchups to facilitate communication between the various project software teams within the department, and cross-pollination of the efforts and discoveries therein.
- Pioneered the Rust programming language and championed the integration of Rust into the internal software ecosystem; pushing the business to use Rust following this. As a result of my work, the company has moved to shift most of its cybersecurity bids to use the Rust language.
- Led the design & development of software symmetric & asymmetric key management/infrastructure simulators against customer specifications. By exploiting modern technology and building high-quality abstractions to accelerate both the production of such tooling and their future agility & reusability within the department, this project took only 6 months and provides strategic opportunities for future development.
- Represented L3Harris at an industry day by delivering a presentation on side-channel analysis in a forum in which both customer and competitor representatives were in attendance.
- Recognised by David Kornick, Corporate President of the Intelligence & Cyber sector, and received an L3Harris Engineering Award.
- Completed an apprenticeship while in this role.
Skills: C#, C/C++, 3D Graphics, Vulkan, DirectX, Software Design, Community Management
June 2019— Continuing the open-source development Ultz was best known for, I spearheaded the creation of Silk.NET – a high-performance GPU graphics & compute library with 74+ contributing software developers and used by hundreds of downstream projects.
- Managing Silk.NET community outreach to a large userbase, encompassing industry professionals from well-known companies such as Microsoft, Activision Blizzard, and HP to name a few.
- Orchestrating and managing a team collaboration infrastructure to efficiently work as a distributed team and remain in healthy communication.
- Employing consumer-centric strategies to ensure continuity and seamless compatibility of open-source software, catering to the diverse needs of the numerous stakeholders a large userbase has accrues.
- Fostering a culture of knowledge-sharing and growth within the Silk.NET community by providing mentorship and upskilling opportunities to enthusiastic volunteers, enabling them to evolve into proficient maintainers of the Silk.NET library.
Skills: C#, C/C++, 3D Graphics, Vulkan, DirectX, Software Design, Community Management
October 2018— The Open Toolkit Project is an open-source project on which I was one of the 3 lead developers and maintainers for OpenTK – a low-level C# graphics library similar to Silk.NET with a greater focus on legacy applications in which I spearheaded significant ongoing modernisation efforts. I worked with the team to optimise their online presence with a redesigned website, and acquired closely-related and/or useful projects to OpenTK such as ObjectTK and MathSharp (the author opted to remove MathSharp from the project shortly after my departure). As a maintainer, I was responsible for:
- Managing a large userbase, encompassing many large users such as EPSON.
- Making consumer-orientated decisions and ensuring continuity and compatibility within the library.
- Working in a distributed team.
- Learning a wide range of related technologies such as C and MSIL/CIL.
- Making software for a large community of esteemed developers from experts to beginners.
Skills: C#, C/C++, 3D Graphics, OpenGL, Static Site Generation, Branding
May 2018— Started development on SoundPrints, my first freelance project under the Ultz umbrella, comprising a backend API server written in C#/ASP.NET, an Android application written using Xamarin/C#, and a customer relationship management (CRM) portal for managing orders (with Etsy integration for associating a sound recorded in-app with a print purchased on Etsy). This project implemented a unique concept: given an audio recording (either in-app or from an extant video), you could order a 3D printed waveform and using an NFC chip listen to the recording again using the app. This was implemented to the customer's satisfaction and was live on the Google Play Store until the customer closed for business.
Skills: C#, SQL, REST APIs, ASP.NET Core, Xamarin, Android Development
April 2018— Began freelance development under the Ultz organisation and facilitated the acquisition of intellectual property relevant to the goals of members thereof. This included SharpDB, an open-source high-performance NoSQL database engine written entirely in C#; and Volte a then-closed-source Discord automated companion. As part of this addition of freelance development to Ultz's operations, Ultz Limited was registered with Companies House, giving me insight into business management and, through the IP aquisitions, legal & software licensing.
Skills: C#, SQL, Software Licensing
June 2017— Led Ultz's transition from being exclusively an open-source umbrella to simple utilities for specific use-cases, in collaboration with the other members of the organisation. This included RemoteJ - a Universal Windows Platform (UWP) application I solely developed to control Jenkins CI instances, Pocketeer - another UWP application for tracking pocket money, developed by another member of the organisation with whom I worked to productise and publish the application on the Microsoft Store, and Click to Website - a simple GUI-based website creator for which I developed a GitHub-based automatic updating mechanism and a modularity-based prototype to expand it for more use cases.
Skills: C#, UWP, UI, REST APIs
January 2017— Started development of Prison 3 - a strategic rewrite of the Prison minecraft plugin to enable more functionality to be bundled into the Prison plugin in a modular fashion for long-term maintainability. The first public prerelease was made available in February 2017, with bug-fixing continuing throughout the year until its stable release. Given that I was one of the main authors of this rewrite, as opposed to a major contributor as I was for Prison 2, this gave me more control and responsibility over the project's direction and community presentation. Through this I oversaw the Discord community, including taking user feedback and providing user support, and helped shape this to be a valuable resource for anyone using the plugin. Through this, I also worked with third parties to produce tutorial content to complement our first-party support, such as the YouTube tutorials produced by Koz4Christ. Finally, this gave me experience onboarding new community maintainers onto the project and ensuring a smooth transition of product ownership in support of the long-term longevity of the plugin.
Skills: Java, Community Management
November 2016— Created the Ultz umbrella to house the open-source projects and side-projects written by my frequent collaborators and I. Started working on a HTTP server library written in C#, SimpleServer, to capitalise on the minimalism of the recent DNX and .NET Core 1.0 frameworks and the opportunity for such a library thereof. SimpleServer was designed to provide an easy-to-use HTTP interface without the large overhead that came with Kestrel, which was the only real option for a HTTP listener at that time.
Skills: C#, DNX, .NET Core, Web Development
February 2015— In 2015 I created my GitHub account and, having learnt the Java programming language, joined the Prison Minecraft modding project. This was my first exposure to the vast open-source community, and granted me the opportunity to gain significant experience in dealing with direct-to-consumer software as opposed to the developer-oriented software I would later go on to create. As part of this, I also developed a tiny GUI editor for the data files produced and read by the minecraft plugin, in response to user feedback that the binary format used could not be edited outside of the plugin. I also led the migration over to Google's GSON library for this same reason. Pushed 43 commits (out of 136 total commits in this repo), and my work was downloaded by 390,000+ people with over 1300+ positive ratings.
Skills: Java, Git, GitHub, AppVeyor CI, Travis CI, WinForms