Hello, I'm Anna!

I am a full-stack developer, currently studying at Douglas College.
Here you can find what I have worked on, and what I am currently developing.
If you wanna contact me or just learn more about me, you can check out my about page.

Language parsing and virtual machines

I spent a good amount of time learning about programming language tokenizing and parsing, and how to build efficient bytecodes and virtual machines for them.
I have built a toy language called Lin featuring its own barebones playground. It is a dynamically typed and based on Kotlin's syntax.
To support the language, I have also built a lexical analysis and pratt-style parser library in Kotlin with a DSL-like syntax, and a somewhat generic bytecode virtual machine also in Kotlin. Both projects heavily used Kotlin Multiplatform to support JVM, JS and Native targets.


I currently maintain a standard based on Twitter's Snowflake ID specification, and reference implementations in TypeScript, Java and Kotlin.
Nanoflakes are 64-bit IDs that are sortable by time, and are guaranteed to be unique within a cluster of machines. They are 1:1 compatible with Twitter's Snowflake IDs, but offer a more simple worker ID system, and more flexibility in terms of the timestamp epoch.

Working with back-end

I have worked with a few back-end frameworks, including Spring, Ktor, NestJS, Apollo Server, Express, Javalin, Spark, Micronaut, Grails, pretty much anything that is either JVM or JS based.
I worked a lot with AWS, going as far as building Serverless applications at work, and dealing with DynamoDB and Aurora. I lack a bit of experience with Kubernetes, but I can compensate with having quite a lot of experience with Docker.

Working with front-end

My front-end experience is a bit less extravagant, but I have either worked, freelanced or experimented with Angular, React and now Svelte, which I am using to build this exact website.
I have built single-page applications, portfolio websites and even a back-office application, mostly from freelancing work.