Gunnar Torfi Steinarsson's Resume

Gunnar Torfi Steinarsson

Husband, father of two, and a software enthusiast building AI-first workflow platforms, React and React Native apps.

Kópavogur, Iceland

About

Steering the technological helm at Noona, I've been instrumental in leveraging React Native to craft innovative mobile experiences for many years. As the former CTO of Noona, I devoted more than seven years to shaping our technology vision and ensuring our native and web apps were at par with the best in the industry. As a co-founder, my responsibilities spanned multiple domains including product development, engineering, SEO optimization, DevOps, and CI/CD pipeline management. I've also had to learn a lot about the business side of things, working closely with the CEO and the rest of the team. Most recently, I have been core to building a greenfield AI-first workflow platform — designing and shipping production-grade AI automations, internal agents, and RAG systems that eliminate manual bottlenecks across engineering and support. In later years, I've also been contributing back to the community by making contributions to Expo and other React Native libraries, primarily through my own library, Sonner Native, a React Native port of the popular web toast library Sonner.

Work Experience

Noona Labs

Co-Founder, CTO, Tech Lead

2018 - Present
  • Next.js
  • Expo
  • Tanstack Start
  • Mastra
  • Inngest
  • RAG
  • AI Agents
  • Kubernetes
  • CI/CD

Most recently, I have been core to building a greenfield AI-first workflow platform. I designed and built production-grade AI automations and internal agents from scratch, including customized AI workflows that autonomously assign and fix codebase bugs, and retrieval-augmented generation (RAG) systems integrating internal data tools to instantly resolve support inquiries for both staff and customers.


This role let me dive deep into modern AI solution patterns using Mastra for LLM backend architectures, Inngest for workflows and events, Tanstack Start, Vercel's AI SDK, and training classification models in Python. I am confident in selecting the right models, designing robust prompting strategies, and implementing guardrails to keep AI workflows stable, secure, and performant. The frontend handles streaming with server-sent events and is built as a highly interactive offline-first application.


Over the years, I have contributed to various aspects of our technology stack, being the first developer at Noona. My main focus to begin with was building the marketplace (the consumer-facing apps) from the ground-up. I initially developed a client-side SPA using Create React App back in 2018 and a mobile app with bare React Native, all written in Javascript, powered by a GraphQL API.

Through iterative improvements, I migrated the codebases to Typescript, Next.js, Expo, Nativewind and Tailwind, and things were in a good place. To further support team growth and development velocity, I architected a more scalable solution that enabled parallel development across multiple projects, leveraging React Native for Web. That was when I moved our Expo app and Next.js app to a monorepo, using Turborepo and pnpm workspaces. This enabled code sharing between the mobile apps and the web app. We weren't only sharing UI components, but entire features/screens. This meant we still benefited from Next.js's data fetching capabilities, etc., but didn't have to write everything twice, for the web and native. This also bridged the gap between the web and native development, improving feature parity between the platforms.


For Noona HQ, the enormous back-office app that company owners use. I made several significant contributions to that product; rewrite from JS to TS, leading the development of a fully-fledged POS system, initiating a big rewrite/transition from Meteor to React and introducing shadcn/ui. What I am proud of the most in the HQ development is that I architected and implemented multiple calendar systems including a traditional appointment calendar for salons and a timeline-based reservation system for restaurants, both featuring drag-and-drop functionality, resizing capabilities, and optimistic updates for instant user feedback.


To keep things short, I also briefly want to mention a few other things I've been working on for the last couple of years:

  • Next.js app router
  • React Server Components (Next.js and Expo too)
  • Expo Router
  • iOS Live Activities and widgets
  • Native iOS development with Swift, SwiftUI and Objective-C
  • Native Android development with Kotlin and Java
  • tvOS development with React Native
  • macOS & Windows development with React Native
  • Building a universal UI library from a design system for React Native and web
  • CI/CD with Github Actions and CircleCI
  • Kubernetes + Docker

Memento Payments

iOS Developer

2015 - 2018
  • iOS
  • React Native
Memento Payments worked with Íslandsbanki to create an app called Kass, an app which Icelanders used to transfer money using their phone numbers. I participated in native iOS development and later rewriting the app to React Native.

Tipster

Co-Founder, iOS Developer

2014 - 2019
  • React
  • TypeScript
  • Objective-C
  • React Native
Tipster was a fun side project that I was part of during my BSc studies. It was essentially a communication platform between Tipsters (people selling betting advice) and Bettors (people placing sports bets). We provided a backend system for the Tipsters and a native mobile app for the Bettors.

Stefna hugbúnaðarhús

Web development, customer support

2014 - 2015
Front-end development of smaller websites and general customer support service.

Testimonials

Gunnar is an excellent React Native developer. Internally we take his feedback on the product to heart - it has led to meaningful improvements in the product. Point being, his thoughts on app development are well worth following.

Publications

Education

Reykjavík University

2015 - 2018
Bachelor's degree in Software Engineering