A PhD student with a passion for building things. Welcome to my personal portfolio where you can learn more about who I am and the work that I do
My RepositoryDesigning a Bioreactor
iGEM Toroidal Bioreactor
Mathematical modelling, CAD design & website dev for iGEM 2022
My research interests are in autonomous systems, machine learning for decision-making under uncertainty, and optimisation β closing the loop between data and real-world outcomes.
My core ambition is industrialising decision-making: deploying robust models that forecast and optimise the real world under uncertainty, producing decision policies that evolve through experimentation and accumulate institutional memory.
I'm fairly opinionated about engineering. I think software architecture is largely a solved problem, and that being data-driven is not about building dashboards but operating systems. More here: π engineering philosophy
π§ͺ Currently trying to wrap up my PhD and automate as much of my life as possible.
I am always open for a chat so feel free to π
The core idea behind engineering is to think in systems.
I believe in always striving to follow a systematic approach. Without building a system, you cannot reliably expect to improve your outcomes. The answer is not to lower ambition, but to build stronger systems: personal systems, organisational systems, technical systems, and decision systems.
I believe in Bayesian thinking. We should always strive to formulate a hypothesis, especially under uncertainty. Being explicit about our beliefs is difficult, and it often uncovers a lack of understanding. We should strive to find structure: the main effects, the higher-order effects, the interaction effects, and the causal relationships within our system. We should think carefully about how each component contributes to the overall behaviour, and how to steer the ship towards desired outcomes.
Technology can be used to eliminate human error and do better engineering. Computers afford us automation. Automation is abstraction, and abstraction is automation. This is a powerful tool: it can amplify poor systems and create clutter, or it can create infrastructure and leverage that enable more complex execution. That is why engineering is also about problem decomposition. We must find the right design through iteration and connect components to balance orchestration and encapsulation.
Software is more complex than many other things. As such, the best way to design software is to write software. Write code twice: the first time to learn the shape of the solution, and the second time for maintainability. The architecture of a system is a living artifact. It must continuously balance objectives, sources of uncertainty, constraints, and moving parts, and it should evolve atomically and iteratively.
To me, digital transformation is not a tool rollout. It is a maturity journey. It begins with culture: standardising how work is done and how decisions are made. Then come production systems that digitise those processes reliably. Once those systems exist, they generate data that can inform better decisions. Workflow automation can then remove friction and increase throughput. Only on top of those foundations does it make sense to build intelligent systems, autonomous control, or agents. Agents without structure is chaos.
A data-driven culture is an operating system, not a dashboard. It is a scientific mindset embedded into decision-making under uncertainty: Metrics β KPIs β OKRs β Experimentation β Institutional Memory. Experimentation should not happen in isolation, but within the context of strategy and historical learning so that we can map out the design space and navigate it effectively. Historical data and prior experiments should become institutional memory: what has worked, what has failed, where the trade-offs lie, and which regions are robust under competing objectives. Good engineering turns that memory into a repeatable decision factory that continuously converts data, uncertainty, and feedback into better actions over time.
Ultimately, theory and best practices do not matter unless they make contact with reality. Engineering is practised in the arena, not on the whiteboard. It should be done in service of the business, progressing iteratively, integrating stakeholder feedback, and fixing problems at the source rather than patching outputs.
I love ML and Software Aside that I also have a passion for: