OAuth 2.0, JWT, PKCE, OIDC, SAML, SSO: the auth ecosystem is big enough to misremember. This compendium builds a clear mental model for each concept and explains how they fit together. If you have worked in software long enough, you have almost certainly used the words "authentication" and "authorization" interchangeably in conversation and got away with it, because everyone knew what you meant. B
15 Sep 2026Principal Software Engineer @ Just Eat Takeaway, London.
Latest posts
How we built a minimalistic, elegant and effective remote localization system for the Just Eat Takeaway consumer app. Originally published on the Just Eat Takeaway Engineering Blog . Localizations are one of the few things in an iOS app that most teams quietly accept as immovable. Strings live in .strings and .stringsdict files, those files are compiled into the app bundle, and the app bundle is w
8 Sep 2026Revisiting the Modular iOS Architecture @ Just Eat from 2019 addressing previous limitations and refining the vocabulary. Originally published on the Just Eat Takeaway Engineering Blog . When I published Modular iOS Architecture @ Just Eat in December 2019, modularisation was still a relatively novel concept in iOS development. We had been at it since 2016, driven by specific organisational needs:
15 Jul 2026Introducing Luca. Luca manages tools, agentic skills and tasks on macOS and Linux. https://luca.tools/ Most developers never question where their CLI tools come from. You run brew install swiftlint , it works, and you move on. But in teams of any size, the question "which version of SwiftLint are you running?" surfaces regularly. Someone upgrades globally, a build breaks on CI, and the team gets d
13 Apr 2026A deep dive into the practical challenges of implementing, testing, and maintaining Universal Links at scale Originally published on the Just Eat Takeaway Engineering Blog . Universal Links have been around since iOS 9 (2015), yet the topic remains surprisingly underrated in the iOS community. While most developers understand the basic concept (associating your website with your app so links open
15 Jan 2026A design to implement a simple, generic and decentralised manager for CLI tools from the perspective of a Swift dev. SPONSORED Based on this article, I've published Luca! A lightweight decentralised tool manager for macOS to manage project-specific tool environments. 👶 Check it out: luca.tools Overview It's common for iOS teams to rely on various CLI tools such as SwiftLint, Tuist, and Fastlane. T
13 Jul 2025A quick guide to setting up a Swift Package Registry with Artifactory to speed up builds and streamline dependency management. Introduction It's very difficult to have GenAI not hallucinate when in comes to Swift Package Registry. No surprise there: the feature is definitely niche, has not been vastly adopted and there's a lack of examples online. As Dave put it , Swift Package Registries had an e
6 Jun 2025Originally published on the Just Eat Takeaway Engineering Blog . How Just Eat Takeaway.com leverage AWS, Packer, Terraform and GitHub Actions to manage a CI stack of macOS runners. Problem At Just Eat Takeaway.com (JET), our journey through continuous integration (CI) reflects a landscape of innovation and adaptation. Historically, JET’s multiple iOS teams operated independently, each employing th
3 Jan 2024Prelude Fastlane is widely used by iOS teams all around the world. It became the standard de facto to automate common tasks such as building apps, running tests, and uploading builds to App Store Connect. Fastlane has been recently moved under the Mobile Native Foundation which is amazing as Google wasn't actively maintaining the project. At Just Eat Takeaway, we have implemented an extensive numb
29 Oct 2023CloudWatch is great for observing and monitoring resources and applications on AWS, on premises, and on other clouds. While it's trivial to have the agent running on Linux, it's a bit more involved for mac instances (which are commonly used as CI workers). The support was announced in January 2021 for mac1.metal (Intel/x86_64) and I bumped into some challenges on mac2.metal (M1/ARM64) that the tea
6 Aug 2023Overview Amazon Web Services (AWS) provides EC2 Mac instances commonly used as CI workers. Configuring them can be either a manual or an automated process, depending on the DevOps and Platform Engineering experience in your company. No matter what process you adopt, it is sometimes useful to log into the instances to investigate problems. EC2macConnector is a CLI tool written in Swift that simplif
5 Jul 2023I previously wrote about JustTweak here . It's the feature flagging mechanism we've been using at Just Eat Takeaway.com to power the iOS consumer apps since 2017. It's proved to be very stable and powerful and it has evolved over time. Friends have heard me promoting it vehemently and some have integrated it with success and appreciation. I don't think I've promoted it in the community enough (it
26 Mar 2023Originally published on the Just Eat Takeaway Engineering Blog . Overview In this article, we’ll discuss the way our mobile teams have evolved the Continuous Integration (CI) stack over the recent years. We don’t have DevOps engineers in our team and, until recently, we had adopted a singular approach in which CI belongs to the whole team and everyone should be able to maintain it. This has proven
23 Jul 2021Originally published on the Just Eat Takeaway Engineering Blog . We have presented our modular iOS architecture in a previous article and I gave a talk at Swift Heroes 2020 about it. In this article, we’ll analyse the challenges we faced to have the modular architecture integrated with our CI pipelines and the reasoning behind migrating to a monorepo. The Problem Having several modules in separate
16 Jun 2021Problem I wrote the first version of iHarmony in 2008. It was the very first iOS app I gave birth to, combining my passion for music and programming. I remember buying an iPhone and my first Mac with the precise purpose of jumping on the apps train at a time when it wasn't clear if the apps were there to stay or were just a temporary hype. But I did it, dropped my beloved Ubuntu to join a whole ne
24 May 2020