How we engineer software that has to work
Architecture first, then tools. Every system we build has the same layers, the same review points and a person at the end of every AI decision.
01 · Architecture
Six layers, security through all of them
InterfaceApplicationAPI
- Responsibility
- Screens, forms and interactions — accessible and fast on real devices.
- Engineering purpose
- Make the correct action the obvious one.
- Technology we use here
- TypeScript
- React
- Responsive, accessible HTML & CSS
- Tailwind CSS
InterfaceApplicationAPI
- Responsibility
- Rules, workflows, validation and permissions.
- Engineering purpose
- Keep the rules in one place, and tested.
- Technology we use here
- Python
- Flask
- Node.js
ApplicationAPIServices
- Responsibility
- Stable, authenticated contracts between the parts of a system.
- Engineering purpose
- Let each part change without breaking the others.
- Technology we use here
- REST APIs
APIServicesData
- Responsibility
- Background jobs and AI: reports, reminders, assistants.
- Engineering purpose
- Do slow or smart work away from the user's request.
- Technology we use here
- Background workers
- Anthropic Claude & LLM APIs
- Retrieval-augmented generation
- PyTorch
- TensorFlow
- Edge AI
ServicesDataInfrastructure
- Responsibility
- One data model, audited writes, reporting.
- Engineering purpose
- Every module reads the same truth.
- Technology we use here
- PostgreSQL
- Firestore
- CSV & PDF pipelines
- Operational dashboards
DataInfrastructure
- Responsibility
- Hosting, delivery, automated releases and monitoring.
- Engineering purpose
- Releases that are repeatable and uneventful.
- Technology we use here
- Google Cloud / Firebase
- Render
- CDN & static hosting
- GitHub Actions CI/CD

02 · Intelligence
AI with a person at the end of it
A principal asks, in plain language: “Which students need attention this week?”
Intent and scope are resolved: at-risk students, this school, this week — and the user’s role decides what they may see.
Only records this user is permitted to read are fetched, live: attendance, recent assessments, fee status.
A language model (Anthropic Claude) receives the question, the permitted records and the school’s own thresholds.
The answer is checked against the source records; every flag must carry the reason it was raised.
A short list with a reason and a suggested next step for each student — no black-box scores.
Staff decide what to do. The assistant suggests; people act, and the audit log records it.
Illustrative example based on the EduLynx AI operations assistant’s published capabilities. No real school data is shown.
03 · Engineering
From idea to production in eight steps
Discover
Find the problem worth solving.
Find the problem worth solving.
- Tools & technology
- Problem brief
- Output
- Problem brief
Model
Describe the work as data and rules.
Describe the work as data and rules.
- Tools & technology
- Scoped model
- Output
- Scoped model
Architect
Decide how the system fits together.
Decide how the system fits together.
- Tools & technology
- Architecture + prototype
- Output
- Architecture + prototype
Engineer
Build in short, reviewable increments.
Build in short, reviewable increments.
- Tools & technology
- Working increments
- Output
- Working increments
Integrate
Connect to the systems already in use.
Connect to the systems already in use.
- Tools & technology
- Connected system
- Output
- Connected system
Test
Prove it works before people rely on it.
Prove it works before people rely on it.
- Tools & technology
- Release candidate
- Output
- Release candidate
Deploy
Release to secure, monitored infrastructure.
Release to secure, monitored infrastructure.
- Tools & technology
- Production release
- Output
- Production release
Operate
Run it, measure it, improve it.
Run it, measure it, improve it.
- Tools & technology
- Next-release backlog
- Output
- Next-release backlog