James Hansen
Canada (Metro Vancouver)
Welcome
I’m James Hansen, a software developer near Vancouver with over fifteen years of professional experience in data analytics, video processing, cloud platforms and database systems, most of it in security software. At Fortinet I work full-stack across a networked-security product line, from a C#/WPF desktop client and C recorder firmware to a Docker-based, multi-region cloud platform with a Python/Flask backend and an Angular/TypeScript frontend. I hold a Master of Arts in Public Policy, with training in statistics, program evaluation and data governance.
Projects
All projects →“A dedicated, experienced software professional… friendly and kind to anyone in the group, which makes him a great team leader. I learned a lot from James. Definitely would want to work with him again.”
Skills
The languages, tools and analytical methods I work with day to day.
Current Technical Skills
TypeScript
Typed JavaScript for building robust, maintainable front-end and full-stack web applications.
Python
Data analysis, automation, and backend services using Pandas, NumPy, and Flask.
Strong data-structures and algorithms foundation: hash maps, sets, heaps (heapq), stacks, linked lists and 2D grids; two-pointer, sliding-window, greedy and hashing techniques.
Comfortable designing custom data structures from scratch (O(1) min-stack, randomized set, hash set with collision buckets) with attention to time/space complexity and edge cases.
Docker & Cloud
Containerized, Docker-based cloud services with Node.js, Flask, and nginx.
Visual C# .NET
Commercial .NET applications and DLLs, including WPF desktop apps.
Object-oriented design with classes, interfaces and inheritance; data querying and transformation with LINQ.
Database modelling and data access with Entity Framework; dependency injection with Microsoft Unity for testable, loosely-coupled services.
Visual C++
Native development including video capture and computer vision work with OpenCV.
PHP & Javascript
Commercial websites and web-based applications, with Laravel, jQuery and Node.js.
Angular
Single-page web applications built with the Angular framework.
MySQL & Microsoft SQL Server
Database design and queries across MySQL and MSSQL, with experience in MySQL and T-SQL commands and scripts.
AI & Automation
AI-Assisted Development
Daily use of Claude Code (on non-sensitive code) to speed delivery, always with review and oversight, so I spend more time on architecture and less on boilerplate.
Local & Cloud LLMs
Self-hosted and cloud-hosted language models set up for private AI workflows, including the small model behind the "Ask AI" feature on this site.
AI Workflows & Agents
Automated document and transcript summaries with the Google Gemini API, including the Langley council meeting summaries, and voice agents wired to real systems, as in my Grocy voice agent.
Computer Vision (OpenCV)
Object and face detection video-processing modules built with OpenCV and detection models, including a privacy filter that blurs and erases detected people (see VeBeGe).
Analytical Skills
MA, Public Policy
A Master of Arts in Public Policy completed alongside full-time work, sharpening the privacy, data-governance and compliance side of building software, with training in statistics, program evaluation, public finance and law.
Data Analysis
Statistical methods, regression, survey design, and descriptive analytics.
Data Engineering & Visualization
Reproducible analysis pipelines, dashboard development, and geospatial analysis.
Program Evaluation
Theory of change, logic models, indicator development, and formative and summative evaluation.
Qualitative Research
Interview design, thematic analysis, and mixed-methods integration.
Public Finance & Microeconomics
Applied to municipal and policy contexts.
Technical & Analytical Writing
Policy briefs, evaluation reports, and stakeholder communication.
Legacy Skills
Borland/Codegear Delphi
Developed own project and limited commercial programs in Delphi.
GrafX Visual Objects
Maintained and ported functions from legacy commercial applications written in GrafX Visual Objects, which uses similar syntax to Delphi.
Scripting
Familiar with various scripting languages including BASH scripting on Linux, and LUA and PAWN game scripting languages.
Community
Volunteer civic-technology and open-data work in Langley, BC.
Langley Urbanist Society

Giving back to my community matters to me. Outside of work I co-founded and direct the Langley Urbanist Society, a registered British Columbia non-profit, where I build civic-technology tools that make public information open and accessible, the same open-knowledge spirit I value in software. I lead the technical side alongside the other directors: the website, email newsletters, automation scripts, and analytical tools.
I also lead the annual Jane's Walk in Langley, a free community walking tour exploring how our neighbourhoods work and how they could work better.
This runs alongside my engineering career rather than apart from it. The projects are a chance to keep practising my craft on real-world problems, particularly data analysis and visualization, in service of my own community.
Langley Urbanist Society Projects
Value per Acre
Council Meeting Summaries
The Telraam Traffic Counter

One project I am especially fond of is a Telraam traffic counter: a small device that mounts inside a window and automatically counts the pedestrians, cyclists, cars, and larger vehicles passing by, publishing the totals as open data anyone can view.
It began with a simple question, whether removing the gates on a local trail would change how many people walked and cycled there. Counting by hand was not practical, so we ran a fundraiser, the community covered the cost within a day, and after some door-knocking a resident with a clear view offered to host it. It now runs from a weatherproof box beside the trail, the first Telraam installed in British Columbia, with live counts anyone can follow over time.
Work History
More than fifteen years in industry, most of it building security, analytics and cloud software.
Fortinet
Inchol Solutions

“James is a dedicated, experienced, software professional with vast experience in all aspects of software engineering. He is friendly and kind to anyone in the group which makes him a great team leader. I learned a lot of things from James. Definitely would want to work with him again! Highly Recommended.”

“James is very passionate and has great vision for his work. His focus keeps everything moving smoothly, he makes sure all the deadlines are met, and working with him in the same Project as a QA, am sure that whatever project he is working on meets the highest standards.”

“I found James to be creative in terms of software development. He can see the whole picture, understand interrelation of system components and make decisions based on every detail. James is also an independent and customer focused strategist. He always comes up with long term solutions for small problems to avoid any repetitious reworking.”
Zoombucks
CompuMAX Systems Corporation
ShaderPlayer
A nostalgia-first media player that plays movies, TV and video captures through a CRT-TV emulation layer, restoring the scanlines, phosphor glow and curvature that flat panels stripped away. Built in C++ with GPU shaders, it is a project about how a picture used to feel, not just how sharp it is.
It is open source and a playground for the shader and video-processing work I enjoy: sampling, filtering and compositing a live video signal in real time on the GPU.
Contact & Bio
A bit about my background, and how to get in touch.
Get In Touch
Send me a message and I will get back to you. I’m always glad to hear about interesting work and problems worth solving. You can also find me on GitHub and LinkedIn.
About Me
I was born in the mid-1980s and grew up during the peak era of accessible programming on personal computers, when switching a machine on dropped you straight into a BASIC prompt. Being born in the UK, my first language was BBC BASIC, which I started writing at eight years old on the Acorn Archimedes.
When the World Wide Web arrived I moved into HTML and CSS, and later PHP. I built increasingly complex PHP websites for various passion projects, and that hands-on experimentation became the foundation of everything that followed.
I put programming on pause to study Music Composition at university in London. After graduating I returned to it properly, turning years of self-taught experience into a career in software development.
Over the next fifteen years that career centred on security software, building analytics dashboards, customizable charting tools, camera metadata and detection analytics, access control systems, and Docker-based cloud video infrastructure. You can see some of this in my software projects and work history.
Following the Covid pandemic I found myself drawn to the policy and decision making around technology and governance. The work I was doing sat at the overlap of analytics, privacy, and regulation, and it raised questions I could not stop thinking about, about how detection and video data should be handled, what privacy protections need to be designed in from the start, and how regulation shapes what these products can and cannot do. Those questions led me to complete a Master of Arts in Public Policy online, studying alongside full-time work, with training in statistics, program evaluation, public finance, economics, governance, and law.
Outside of work I volunteer on civic-technology and open-data projects in my local community, applying the same engineering and analytical skills I use in software. You can read about that work on my Community page.
My life has benefitted from the belief that computing should be open and within everyone's reach. I like to think I'm keeping that tradition alive with my love of Raspberry Pi machines, which are sort of a spiritual successor to those old BBC Micros. While my son likes it mainly for Minecraft right now, it's simple, friendly nature invites the whole family to tinker and experiment with computing.








