Lead designer & developer (summer internship) · 2023

NAV Internal Event Registration

Led design and development of an internal event-registration app that replaced NAV’s manual processes and became the organisation’s primary tool for internal events.

  • Next.js
  • TypeScript
  • Kotlin
  • Ktor
  • PostgreSQL

01 / Context

During my 2023 summer internship at NAV IT — Norway’s Labour and Welfare Administration, one of the country’s largest public-sector tech organisations — internal events were still being organised through manual, spreadsheet-and-email processes that did not scale across teams. The internship brief was to design and build a better way to register for and manage internal events.

02 / My role

I led the planning, design, and development of the application as the internship’s driving contributor — owning the user flows and information design as well as the implementation across the stack. It was a genuinely full-stack role: a React/Next.js frontend talking to a Kotlin/Ktor backend over a PostgreSQL database.

03 / Problem

A registration tool for a large organisation has to be obvious enough that any employee can sign up for an event in seconds, while giving organisers the structure they need to manage capacity and attendance. The design challenge was reducing a sprawling manual workflow into a few clear screens; the engineering challenge was a clean data model for events, registrations, and capacity behind a typed Kotlin API.

04 / Approach

I designed the flows around the two distinct jobs — registering as an attendee and administering an event — and kept each path short and self-explanatory. On the backend I built a Ktor service in Kotlin over PostgreSQL with a schema centred on events, registrations, and capacity rules, and a Next.js frontend in TypeScript that consumed it. Working inside NAV’s platform meant building to public-sector expectations for reliability and accessibility from the start.

05 / Result

The solution replaced the manual process and became NAV’s primary platform for registering and managing internal events — adoption well beyond a typical internship deliverable. It is the project that turned a summer internship into a full-time frontend role at NAV IT, where I now work on platform services for nav.no. (Internal tool — no public link.)