Bartholomew Joyce
Design & Technology Portfolio
Hello! My name is Bartholomew. I am a Consultant Software Developer based in Paris, France. In my 15 years of coding (7 years professionally) I have worked on financial tech, customer-facing full-stack web development, server architecture, low-level graphics, iOS development, real-time audio/video processing, and plenty more.
Web
Web → Photo product builder for Lalalab (2020)

Lalalab is a start-up that allows users to order prints, photobooks and other customised items. I was brought on board to improve their web app where users upload, design and order their prints. Despite accounting for only 7% of sales the web app was the cause of roughly half of all bug reports.
Over the course of 6 months I overhauled the entire web architecture, built on React, TypeScript, Next and relying heavily on IndexedDB for full in-browser image editing.
The result is a robust web app with built-in image editing capabilities, with all projects stored locally in the browser.
Web → Streamlined eCommerce checkout for Just (2021)

Just is a one-click checkout service that integrates with a plethora of eCommerce tools including Shopify, Prestashop, Magento and WooCommerce. The first time you purchase something from a website using Just you will be asked to enter all the necessary payment info: name, billing, credit card, etc... However, any subsequent purchases (made on the same website or any other site using Just) will be a streamlined one-click experience.
I was brought in during the summer of 2021 to build out the Minimum Viable Product. Over the course of two months I implemented the checkout flow shown above as well as their first integration, which was with Shopify, and helped get Just up and running with their first set of clients.
In early 2022, off the back of this MVP and their initial clients, the two founders raised capital for Just, permitting them to hire a design and development team which have since leveled up the entire product, with a fresh design and expanded set of supported integrations.
Web → Pushing Shopify to its limits with Marquerie (2021)

Marquerie was a B2B online marketplace for French-made goods, similar to the US-based Faire. Operating in a very competitive and new space, time-to-market and initial client acquisition was of utmost importance. To give themselves the greatest advantage the founders decided to bootstrap the marketplace from a Shopify store, opting to adapt Shopify to fit their use-case rather than build the marketplace from scratch.
Spring 2021, I was brought in as an interim CTO to help maintain the rapidly growing marketplace, to get as much mileage as possible out of Shopify—to allow the temporary system to remain performant, feature-rich and operational for as long as was necessary until capital could be raised to build a proper replacement.

All the constraints on the project made for very interesting work: I got to learn everything there is to know about Shopify, every detail of their API, their templating language, and much much more. Over the course of four months, we
- built out a full vendor backoffice that integrates with Shopify behind the scenes,
- swapped all of Shopify's store navigation from being product-based to vendor-based (including advanced filtering, categorisation and search),
- rebuilt the Shopify cart from scratch to batch products by vendor and compute shipping costs by batch,
- integrated a financial partner to offer buy-now-pay-later services for customers,
- built EU-compliant KYC onboarding systems for vendors and customers.
All told, in the first year Marquerie had grown to a marketplace with 900+ vendors, 3000+ customers with €400 000 of gross sales and a catalogue of 40 000+ products.
Despite having scaled the business to a point of being cash-flow positive, the founders were unable to court interest from VC funds. VC funds whose support would be essential to enable the rapid growth and market capture they had in mind for Marquerie. Following this, they decided to close up shop in 2022 and move on to other ventures.
Native Desktop
My desire to develop intuitive, well-designed and responsive UI applications led me down the road of exploring native UI application development. I've worked on a variety of different applications written in C++ and C# targeting Mac, Linux and Windows. Frameworks and libraries that I've used include higher-level frameworks such as Qt, React Native Mac and Visual C# .NET, as well as low-level graphics applications built directly on top of OpenGL and Metal.
Native Desktop → Financial trading view (2018)
Between 2018 and 2020 I worked for a high-frequency trading firm in London where I was tasked with designing, building and maintaining their trading view. The purpose of the trading view is to offer one unified overview of all trading, accounting, and risk management software running on the network. Some components are running on rack servers in-house, others on rack servers colocated in stock exchanges.
The trading view application features a fully customisable per-user workspace; table views with filtering, ordering, and per-cell custom UI elements; charts for arbitrary data visualisation; in-built database querying; network synchronisation of user preferences, scripts, and more.
The application is written in C++ using ddui and targets Mac and Linux.

The table UI is a custom component that can be backed by arbitrary data, either streamed in over network sockets, pulled in from a database, or user generated. Table fields can be editable, where edits can be transmitted to connected applications. Table fields can also include custom UI elements, as shown in this video.

The chart UI is a custom component that can render arbitrary 2D data. In the example above we are looking at trades executed by clients (red triangles = sell, blue triangles = buy) against the market average price of the asset (orange). The visible size of the triangles represent the volume (size) of the trades that have taken place.
Executions sells and buys are bundled together when you zoom out, giving you an immediate sense of trading volume. By zooming in you can inspect each individual trade.

All windows of the application exist within a customisable tab-view called a workspace. A user can switch between multiple workspaces on the left. The entire configuration of the user can be backed up to a server and recalled from any other computer.
Native Mobile
In recent years I've delved into native mobile app development, focusing primarily on iOS. I have experience building apps using React Native which is currently one of the best contenders for almost native cross-platform mobile apps.
Since 2023, however, I've been exploring ways to create portable native mobile apps: apps written in C++ that can run identically on iOS, Android and in the browser.
Native Mobile → Private messaging mobile app (2023)

PrivaVida is an experimental private messaging app for the open social-networking protocol Nostr targeting iOS and Web. It is written in C++ and is able to run natively on iOS (using Metal for graphics) and in the Web using WebAssembly (using WebGL for graphics).
Audio/Video Processing
Since 2019 I have been studying and building experimental applications around audio, video and graphics technologies, as I believe these to be the most important technologies that we use today. Video in particular is the most powerful and engaging format around and is an irreplaceable component of the modern web.
In my own explorations on this subject I have learnt the nature of video encoding/decoding (FFmpeg, VideoToolbox), real-time audio processing, hardware-accelerated graphics rendering (OpenGL, WebGL, Metal) and computer vision (OpenCV, TensorFlow).
A/V → Generative mosaïc effect (2022)
As part of a music video for the band Mandelbro I developed a specialised algorithm that generates mosaïc grids of square photographs based on some reference footage.

The visuals are constructed from a collection of 100k album covers from Spotify as well as 30k Instagram posts. For the final sequence, the Spotify mobile UI was reversed engineered in order to produce thousands of fake Spotify screenshots.

The algorithm was written in C++ using FFmpeg for video encoding/decoding, OpenGL for rendering and OpenCV for image processing, and it's fast enough that it can apply this mosaïc effect in real time on a HD video stream (could be a webcam).
A/V → Turning Spotify data into art (2022)

Spotify Data Art is a project where I transform a user's streaming history data into visual art. In accordance with EU laws, Spotify allows users to request their usage data, which includes by default the last year of streamed music. By cross-referencing this data with Spotify's database of album covers it's possible to construct a square artwork containing all albums that the user has listened to.

Large album covers were streamed more than smaller album covers, where the surface area of the album covers is proportional to the amount of time that the album was streamed.

The tiling algorithm is able to lay out the albums according to their brightness, laeding to satisfactory gradients.
A/V → FFmpeg tutorial series (2019)

As central as A/V is for modern computing, it's rarely understood by developers. A/V is often taken care of by a library, framework or the operating system, procluding developers from gaining a deep understanding of the technology. Furthermore, there is very little educational content online to help those who are interested learn more about the subject.
In the hope of making this better, I have been producing educational content around audio and video processing in C++ in the form of programming livestreams and tutorials on Youtube.