Thank You to Our NUS Interns
A heartfelt thank you to Gabriella Esther Lauwson, Charly Chandra, and Benedict Aurelius Tjia — three interns from the National University of Singapore who spent five months building the backbone of a school invoicing and financial management system with us.
Setasena Randata
CEO
Image generated with AI for illustrative purposes.
Every now and then, a group of interns walks in and quietly ships the kind of work that ends up holding everything else up. This is a thank-you note to three of them — Gabriella Esther Lauwson, Charly Chandra, and Benedict Aurelius Tjia, all from the National University of Singapore (NUS) — who spent five months with us (December 2025 → May 2026) shaping and building the backbone of a school invoicing and financial management system.
Between them, they took a project from an empty repo to a working product. Here's what they did.
Gabriella Esther Lauwson
Gabriella joined us as our Product Manager intern, and she was the connective tissue between the people who needed the product and the people building it. While the engineers were heads-down in code, Gabriella was making sure the right thing was getting built in the first place.
Her work included:
- External stakeholder meetings. She sat in front of users, listened carefully, and brought back the kind of context that only comes from talking to real humans. Requirements that would have taken months to surface from inside the team showed up in her notes within a week.
- Product Requirements Documents (PRDs). Clear, structured, and grounded in the conversations she'd had. The PRDs she wrote gave the engineering team something concrete to point at — and to push back on when needed — instead of guessing at intent.
- Test case authoring. She closed the loop by writing test cases that turned each requirement into something verifiable. Acceptance wasn't a vibe; it was a checklist.
PM work is hard to see in a git log, but you can feel its absence in every project that didn't have it. Gabriella made sure ours did.
Charly Chandra
Charly was active for around four and a half months and landed 36 commits across the product. She owned the financial side of the system — the part that real money flows through — and built it from the ground up.
Her work included:
- The payments subsystem. Controller, service, and repository layers built from scratch. She also made the call to standardize identifiers and soft-delete semantics across the data model early, which paid off for everyone who touched the codebase later.
- The invoice flow, including partial payments. Not just the happy path — she wrote the tests for the messy cases too.
- PDF receipt generation. A real, end-to-end pipeline that takes a payment and produces a properly formatted receipt.
- Financial reporting and Excel exports. The kind of feature finance teams actually live in.
- Frontend payment and invoice pages. She didn't stop at the API — she built the screens people use to interact with all of the above, and kept iterating on the table and filter UX through her final week.
- Localization touches to make the product feel native to its users.
If you've ever shipped a billing system, you know how unforgiving this part of the stack is. Charly handled it with care.
Benedict Aurelius Tjia
Benedict was active for around four months and landed 49 commits. He owned the foundational platform layer — the parts that everything else depends on, and the parts that are easiest to take for granted when they're done well.
His work included:
- Authentication and JWT. The entire auth layer, from token issuance to claim design to refresh-token handling.
- Role-based access control and route protection. Permissions, divisions, locations — all the primitives a multi-role admin tool needs.
- User management — backend and frontend. APIs, services, repositories, and the admin pages to drive them.
- Student and section management. A multi-week effort that reshaped how the product models classrooms, including the search experience and the data relationships behind it.
- A genuinely comprehensive unit test suite across auth, users, permissions, and more. Tests that future maintainers will be grateful for.
- Swagger API documentation. Because handing off undocumented APIs is how trust dies.
- Serverless-ready middleware to set the project up for its next deployment chapter.
Auth and RBAC are the kind of work that's invisible when it's right and catastrophic when it's wrong. Benedict made it invisible.
Together
Gabriella made sure we were building the right thing. Benedict laid down the auth, RBAC, and user-management spine, then modeled the student and section domain on top of it. Charly built the financial workflows — payments, invoices, PDFs, exports — that ride on that spine. One of them set the direction; one built the floor; one built the rooms. All three of them left the project better-defined, better-tested, better-documented, and more maintainable than they found it.
Whoever picks up this product next is inheriting real work — clear requirements, services with tests, routes with permissions, APIs with docs, and a frontend that already speaks the language of the people it's built for. That is a gift.
Thank you, Gabriella. Thank you, Charly. Thank you, Benedict. We are very glad you chose to spend a chapter of your NUS journey with us.
Stay in touch
We'd love for our community to follow along with what these three do next:
Want help shipping something like this?
The studio embeds with one client per vertical at a time. If this post resonated, start a conversation about an embedded engagement.


