Contact
Tell me what you want to build, automate, or improve.
Automation, backend and integration systems, release and validation tooling, AI-assisted development — I reply within two business days.
Channels
- hello@crishub.com
- crismagalang
- GitHub
- crismag
Quick answers
What kind of work do you do?
Software and workflow automation, backend and integration systems, and the release and validation tooling that makes both repeatable. More recently, AI-assisted product development — building with AI in the loop, and building systems that put AI to work.
The through-line is operational. Most of what I build starts as something a team already does by hand — a reporting process, a release check, a piece of knowledge only one person holds — and ends as a system that does it dependably, with the failure modes handled deliberately rather than discovered in production.
How much experience do you have?
Twenty years and counting, currently as a Senior Staff Software Engineer.
It started in semiconductor physical design and design-for-manufacturing, moved into design automation and methodology, then into production engineering on systems where an outage was measured in money. The last decade has been software architecture and automation platforms: the tooling engineers depend on to get their actual work done.
That path is why I tend to think about operations first. Twenty years of owning things that run teaches you to design for the day they do not.
Have you built systems from scratch, or mostly maintained them?
Both, and the combination is the useful part.
I have architected and delivered enterprise automation platforms from a blank page — execution frameworks, workflow monitoring, credential management, measurement and analysis tooling — and then owned them in production afterwards as the technical point of contact when something broke.
Building something and then living with it for years changes how you build the next one. It is the difference between a system that demos well and one that is still maintainable after three people have handed it on.
What is your cloud experience?
AWS mainly, and it goes back further than most people expect — my first cloud work was running EDA workloads on cloud infrastructure in 2011, when that was still an unusual thing to do.
In practice that has meant queue-driven architectures with dead-letter handling (SQS), serverless compute behind an API gateway (Lambda), object storage with presigned access (S3), instance-based workers (EC2), and the identity side people tend to skip — IAM auditing, least-privilege roles, and access-key rotation.
Most recently I have built a working orchestration toolkit of exactly that shape: an API gateway front door into Lambda, queue dispatch out to EC2 workers, results in object storage behind presigned URLs, signed requests, dead-letter handling, and health and heartbeat checks. A demonstration of it is being prepared.
I have also worked with Google Cloud, and with the layer underneath that nobody puts on a slide — Linux, NGINX, Apache and Django in production, plus the monitoring and incident response that comes with owning something that runs.
Who have you worked for?
In-house, across roughly two decades: Synopsys, GlobalFoundries, NYSE Euronext, Plunify, Chartered Semiconductor, and Intel.
Alongside that I have taken freelance and consulting work throughout — system administration, web development, and custom application builds for smaller clients — and I still take on independent development outside of employment.
The work published on this site is separate from all of that. It is personal — built on my own time, for my own reasons — and none of it came out of a job. Anything I built for an employer stays with the employer, and where I refer to it at all I describe the problem and the approach rather than name the system.
Can I see your code?
Some of it, yes. My public repositories are available at github.com/crismag.
Where an entry on this site includes a source link, the repository is public and you are welcome to explore it. Where it does not, the work is proprietary, private, or otherwise not appropriate to publish.
All of it is personal work, written on personal time. None of my repositories come from an employer, and a project appearing here in the same years as a job is a coincidence of calendars rather than a connection.
My public repositories include projects, experiments, tools, prototypes, and active development. They are useful for seeing not only finished code, but also how ideas evolve into working systems.
Do you do community or volunteer work?
Yes, and some of it is the work I am most attached to.
The main one is a church management and ministry platform I build and maintain — member management, event RSVP and sign-up, ministry scheduling, and the reporting that ministry teams actually have to produce. It is in continuous real-world use, and it is given rather than billed.
There is usually something smaller alongside it: tools for people who need something that works and have no budget for it. That is often where the most interesting constraints are, and where you find out quickly whether a design survives contact with people who did not ask for software.
This is not a full list — just what is current.
On AI-assisted development
Where are you with AI-assisted development?
Deep in it, and still openly learning.
Most of my current work is the KAE ecosystem — systems for giving AI agents durable project knowledge. KAE-Memory holds what a project has established and the reasoning behind it, and serves that over MCP and HTTP, so an agent picking up the work a month later is not starting from nothing. Around it sit an interview engine for drawing requirements out of the people who hold them, and tooling that turns the result into something a developer or a coding agent can actually act on.
Alongside that I keep a running set of experiments: agent workflows and orchestration, retrieval over my own material, MCP servers, local models on my own hardware, and a voice interaction engine driven by an LLM.
The honest part is that this field moves faster than anyone can fully keep up with, and I am learning constantly — model behaviour, context engineering, where agents genuinely help and where they quietly make things worse. I hold my opinions loosely, because the ground keeps shifting under them.
What I can say plainly is that I am enjoying it more than anything I have worked on in years. There is an enormous amount still to learn here, and I would rather be in it than watching from the side.
Do you use AI to write code?
Yes — extensively in my recent work.
AI-assisted development has become part of how I design and build software. Depending on the project, AI may generate implementation code, tests, documentation, refactors, prototypes, analysis, or alternative approaches.
That also means I would not claim that every line in my newer repositories was personally typed by me. Increasingly, I don’t think that is a particularly useful way to describe authorship in modern software development.
I remain responsible for what is being built: the requirements, architecture, technical direction, constraints, integration, review, testing, corrections, and ultimately whether the resulting system works.
What does AI change about your role as an engineer?
It moves much of my effort higher in the development stack.
Instead of spending most of the available time manually implementing every detail, I can spend more of it defining problems, designing systems, exploring architectures, decomposing complex work, directing implementation, evaluating alternatives, finding weaknesses, and validating results.
I still write and modify code. But increasingly, the valuable engineering decisions happen before, around, and after code generation.
AI has also made a much wider scope of development practical for an individual engineer. Ideas that might previously have been constrained by time, unfamiliar technologies, or the amount of implementation required can now be explored much further and much faster.
If AI generates the code, what is the engineer contributing?
Code generation is only one part of building a software system.
Someone still has to decide what should exist, how it should work, how the pieces should fit together, what constraints matter, what a correct result looks like, and whether the implementation can actually be trusted.
AI can produce convincing code that is architecturally wrong, unnecessary, insecure, poorly integrated, difficult to maintain, or simply solving the wrong problem. Using AI effectively therefore requires engineering judgement rather than replacing it.
I increasingly think of my role as combining engineer, architect, reviewer, integrator, and technical director. AI expands what I can execute, while I remain accountable for the direction and the result.
How should I read your newer repositories?
Not simply as a collection of lines of code intended to prove that I know a programming language.
Look at the problems being addressed, how the repository is structured, the architecture and interfaces, the decisions recorded, the tests and validation, how components evolve, and whether the project turns an idea into a coherent working system.
The code still matters. But in an AI-assisted development environment, I think the more interesting evidence is increasingly what was designed, why it was designed that way, how it was validated, and what the resulting system can actually do.