Talks, workshops, and published work.

I speak and write about AI, software architecture, cloud security, graph databases, and the engineering decisions behind real systems.

Publications

Zero Trust Security Architecture for AI Agents in Cloud Environments

Cyber Security: A Peer-Reviewed Journal, forthcoming

Cloud-hosted AI agents blur traditional trust boundaries by combining probabilistic reasoning with retrieval, memory, and tool execution. This paper proposes a Zero Trust architecture for enterprise agentic systems, with external controls, continuous validation, and strict authorization at every interaction point.

Differences between traditional network security and security in the cloud

Cyber Security: A Peer-Reviewed Journal, 8 (3), 281–298 (2025)

This paper examines the security challenges introduced by serverless computing and cloud infrastructure. It discusses defence in depth, the AWS Shared Responsibility Model, and the AWS Well-Architected Framework as foundations for building secure and resilient cloud systems.

Website Security: 13 Ways to Improve Front End Security and Not Get Hacked

Shopify Partners Blog, 2019

An interview about the role front-end developers play in protecting users from cross-site scripting, third-party scripts, and other browser-based threats. It covers Content Security Policy, modern frameworks, layered defences, and practical secure development practices.

Node.js Security

Cyber Security: A Peer-Reviewed Journal, 1 (2), 175–186 (2017)

This paper explores authentication, authorization, session management, cryptography, and other security controls for Node.js applications in the context of a growing application-security threat landscape.

Talks & workshops

Unlocking the Power of Graph Databases with Neo4j

Graph Database Singapore, May 2025

A hands-on introduction to graph databases, Neo4j, and the Cypher query language. The workshop covers connected-data modelling, querying, data import, and practical use cases such as recommendations and fraud detection.

Unlocking the Power of Graph Databases with Neo4j

FOSSASIA Summit 2025, April 2025

A hands-on introduction to graph databases, Neo4j, and the Cypher query language. The workshop covers connected-data modelling, querying, data import, and practical use cases such as recommendations and fraud detection.

Connected: Solving Real-Life Problems Using Python and Graph Databases

Open Tech Summit Indonesia 2024, November 2024

This session shows how graph databases model highly connected systems that are difficult to represent with traditional relational structures. It combines Neo4j with Python, NetworkX, and PyVis for graph analysis and visualisation.

Connected: Solving Real-Life Problems Using Python and Graph Databases

Singapore AWS Meetup, January 2024

This session shows how graph databases model highly connected systems that are difficult to represent with traditional relational structures. It combines Neo4j with Python, NetworkX, and PyVis for graph analysis and visualisation.

Connected: Solving Real-Life Problems Using Python and Graph Databases

PyCon ID 2023, November 2023

This session shows how graph databases model highly connected systems that are difficult to represent with traditional relational structures. It combines Neo4j with Python, NetworkX, and PyVis for graph analysis and visualisation.

Building a Scalable WordPress Site on AWS

FOSSASIA Summit 2022, April 2022

A practical walkthrough of evolving a WordPress deployment from a basic server into a resilient AWS architecture. The session covers Amazon CloudFront, Application Load Balancer, Amazon S3, web-server choices, scaling, and cost considerations.

Building a Scalable WordPress Site on AWS

Singapore AWS Meetup, October 2021

A practical walkthrough of evolving a WordPress deployment from a basic server into a resilient AWS architecture. The session covers Amazon CloudFront, Application Load Balancer, Amazon S3, web-server choices, scaling, and cost considerations.

Demystifying Front-End Security

NDC Sydney 2020, October 2020

This session examines browser-based threats, cross-site scripting, third-party dependencies, and the limits of framework-level protection. It introduces practical defences, including Content Security Policy and layered application-security controls.

Demystifying Front-End Security

JavaScript Remote Conference 2020, May 2020

This session examines browser-based threats, cross-site scripting, third-party dependencies, and the limits of framework-level protection. It introduces practical defences, including Content Security Policy and layered application-security controls.

Demystifying Front-End Security

That Conference 2019, August 2019

This session examines browser-based threats, cross-site scripting, third-party dependencies, and the limits of framework-level protection. It introduces practical defences, including Content Security Policy and layered application-security controls.

Secure Your React App

FOSSASIA Summit 2019, March 2019

This session demonstrates how to secure React applications using reusable authentication components and preconfigured single sign-on. It covers IdentityServer4, secure routing, token handling, and claims-based authorization.

Web Apps That Talk

SingaporeJS, July 2018

An introduction to building voice-enabled browser applications with the Web Speech API. The session demonstrates speech recognition and text-to-speech without requiring specialist machine-learning infrastructure.

High Performance ASP.NET Core

FOSSASIA Summit 2018, March 2018

This session covers performance engineering for ASP.NET Core applications, including caching, I/O, messaging, Linux deployment, containers, and practical methods for identifying bottlenecks.

Database Security for Developers

FOSSASIA Summit 2018, March 2018

This session presents the database as a critical security boundary. Using PostgreSQL examples, it covers authentication, authorization, roles, encryption, and ways to protect sensitive data even when the application layer is compromised.

Database Security for Developers

CFCamp 2017, October 2017

This session presents the database as a critical security boundary. Using PostgreSQL examples, it covers authentication, authorization, roles, encryption, and ways to protect sensitive data even when the application layer is compromised.

Architectural Risk Analysis

5th Scandinavian Conference on System and Software Safety, May 2016

This session examines security flaws that originate in system design rather than individual lines of code. It introduces architectural risk analysis through asset identification, threat modelling, and early assessment of security risks.

Web Apps That Talk

JS Remote Conf, March 2017

An introduction to building voice-enabled browser applications with the Web Speech API. The session demonstrates speech recognition and text-to-speech without requiring specialist machine-learning infrastructure.

Node.js Security

NDC London 2017, January 2017

Practical guidance for securing Node.js and Express applications against common vulnerabilities. Topics include authentication, cryptography, security middleware, the OWASP Top 10, and supporting analysis tools.

Web Apps That Talk

NDC London 2017, January 2017

An introduction to building voice-enabled browser applications with the Web Speech API. The session demonstrates speech recognition and text-to-speech without requiring specialist machine-learning infrastructure.

Agile Web Development with RethinkDB

Percona Live Europe, Amsterdam, October 2016

This session demonstrates how to build real-time applications with Node.js, ZeroMQ, and RethinkDB. It covers messaging patterns, cross-platform integration, and responsive data flows across web and desktop clients.

Scaling Up JavaScript with TypeScript

Angular Remote Conf, September 2016

An introduction to TypeScript for larger JavaScript applications, covering static typing, classes, interfaces, generics, decorators, and practical adoption strategies.

Two-Factor Authentication with Node.js

JavaScript Summit 2016, February 2016

This session explains the limitations of password-only authentication and demonstrates how to add two-factor authentication to Node.js applications using standards-based approaches and Google Authenticator.

Scaling Up JavaScript with TypeScript

DevFestMN 2016, February 2016

An introduction to TypeScript for larger JavaScript applications, covering static typing, classes, interfaces, generics, decorators, and practical adoption strategies.

Managing User Authentication Using Passport

NodeMN User Group, December 2015

This session demonstrates authentication in Node.js and Express applications with Passport.js, including form-based login, social authentication, and two-factor authentication.

What’s New in C# 6

Twin Cities .NET User Group, December 2015

A practical overview of C# 6 features including null-conditional operators, string interpolation, expression-bodied members, and nameof.

Node.js Security

Open Source North 2015, October 2015

Practical guidance for securing Node.js and Express applications against common vulnerabilities. Topics include authentication, cryptography, security middleware, the OWASP Top 10, and supporting analysis tools.

Node.js Security

That Conference 2015, August 2015

Practical guidance for securing Node.js and Express applications against common vulnerabilities. Topics include authentication, cryptography, security middleware, the OWASP Top 10, and supporting analysis tools.

WebRTC Workshop

dev.Objective() 2015, May 2015

A practical introduction to browser-to-browser voice, video, and peer-to-peer data exchange with WebRTC. The workshop covers browser support, security considerations, and the foundations of real-time web applications.

Introduction to TypeScript

Twin Cities .NET User Group, May 2015

An introduction to TypeScript for larger JavaScript applications, covering static typing, classes, interfaces, generics, decorators, and practical adoption strategies.

Introduction to TypeScript

JavaScriptMN User Group, April 2015

An introduction to TypeScript for larger JavaScript applications, covering static typing, classes, interfaces, generics, decorators, and practical adoption strategies.

WebRTC Workshop

DevFestMN 2015, March 2015

A practical introduction to browser-to-browser voice, video, and peer-to-peer data exchange with WebRTC. The workshop covers browser support, security considerations, and the foundations of real-time web applications.