Jan Utěkal

Jan Utěkal Senior software developer · Flutter, iOS, back end, AI

Welcome to my professional profile. My name is Jan Utěkal, and I have been developing software for more than 15 years. I have spent most of my career building mobile applications with Flutter and Swift. In recent years, I have also built back ends for several applications, using Python on Firebase and TypeScript with the Prisma ORM. I have contributed to the design and development of several frameworks. With the rise of generative artificial intelligence, I have increasingly focused on systems built around LLM orchestration.

Selected work

Fitness007

present

Mobile app for the Fitness007 online store and a server-side integration layer connecting the app to the Shopsys platform.

Role: Development of the entire mobile app. Development of a significant part of the server integration, data layer, and data storage. Collaboration with the subcontractor on the API design and the technical integration solution.

  • Flutter
  • TypeScript
  • Next.js
  • PostgreSQL

Rock Point

present

App for sales staff in Rock Point, Hannah, and KEEN retail stores.

Role: Independent development of the mobile app and integration with server-side services.

  • Flutter

Personal voice-chat project combining speech recognition, an LLM, and speech synthesis.

Role: Native iOS app development. Integration of parallel Google and Apple speech recognition, the OpenAI API, and Google speech synthesis. Payments and analytics.

  • Swift
  • OpenAI API
  • Google Speech Services
  • Firebase Cloud Functions
  • RevenueCat
  • Analytics
  • Facebook Ads

present

Czech Radio app for listening to programmes, podcasts, audiobooks, and music.

Role: Long-term development and evolution of the app as a member of the client-side development team. Participation in technology changes and the integration of a shared application framework.

  • Flutter

present

App communicating with sports devices that measure performance and riding technique, including in ski mountaineering and cycling.

Role: Implementation of the iOS side of Bluetooth communication. Integration of a low-level Bluetooth library and design of the communication layer between native iOS and Flutter. Additional work on the user interface.

  • Swift
  • Flutter

present

News app operated by MAFRA, a.s.

Role: Taking over and technically analyzing the existing app, identifying technical debt and security issues, followed by maintenance and further development. Collaboration with the client on analyzing and planning new features.

  • Swift

Dating app for dogs and their owners, based on matching rules developed by the Koira Dog School.

Role: Independent development of the mobile app. Design and development of the back end, including formalizing the domain expert's rules and implementing the matching algorithm. Payment integration.

  • Flutter
  • Firebase Firestore
  • Firebase Cloud Functions
  • Python
  • RevenueCat

present

App for listening to Czech FM, DAB+, and internet radio stations.

Role: Development of the mobile app, including integration of a native playback engine, communication between the native and Flutter layers, and CarPlay implementation.

  • Flutter
  • Swift

present

Festival dating app for Kofola a.s., helping people find partners and friends at Colours of Ostrava, Beats for Love, and other festivals.

Role: Independent development of the mobile app. Design and development of the entire dating service back end, including its data model and application logic.

  • Flutter
  • Firebase Firestore
  • Firebase Cloud Functions
  • Python

Public transport app for the Czech Republic, developed as part of a public contract for the Ministry of Transport.

Role: Independent development of the iOS app, its long-term maintenance, and further evolution.

  • Swift

present

App for registration and access management at the Don Shot shooting range.

Role: Independent development of the mobile app. Design and development of the back end, including data synchronization with the Dotykačka system.

  • Flutter
  • Firebase Firestore
  • Firebase Cloud Functions
  • Python

Pospooling

B2B app and website for presenting, configuring, and ordering reusable display stands for zero-waste retail.

Role: Development of the mobile and web apps, including a configurator working with 3D models and textures. Design and development of the ordering system back end.

  • Flutter
  • glTF
  • GLB
  • Firebase Firestore
  • Firebase Cloud Functions
  • Python

present

Public transport app for the Moravian-Silesian Region. Departures from stops, connection search, and purchasing and validating tickets.

Role: Development of the entire iOS app and its long-term evolution.

  • Objective-C
  • Swift

App for monitoring live data from smart sensors in Czech municipalities.

Role: Long-term development and evolution of the mobile app, including the integration of web content into the Flutter user interface.

  • Flutter

App for finding and reserving parking spaces in Pardubice.

Role: Development of the mobile app and integration with server-side services.

  • Flutter

Mbilet

Public transport app for the Polish city of Mielec.

Role: Independent development of the iOS app and integration with third-party server-side services.

  • Swift

iVysílání

Czech Television app for watching television programmes.

Role: Independent development of the client app based on the supplied design and server-side data sources.

  • Symbian
  • Qt

present

Public transport app for the Ostrava Public Transport Company. Departures from stops, connection search, and purchasing and validating tickets.

Role: Independent development of the iOS app and its long-term evolution.

  • Objective-C
  • Swift

App for senior citizens with a simplified user interface, video calls, and integration with services provided by retirement homes.

Role: Taking over a problematic legacy project, extensively stabilizing it, and reworking its technology. Further development and adaptation of the app for additional use cases and clients.

  • Objective-C
  • Swift

present

An EVOTECH s.r.o. app for tracking employee arrivals and departures using facial recognition.

Role: Taking over, maintaining, and further developing the existing app. Implementation of new features, including the integration and optimization of a facial-recognition library.

  • Flutter
  • Kotlin
  • Java

Public transport app for the Polish city of Lublin.

Role: Development of the entire iOS app and integration with third-party server-side services.

  • Swift

Parkování Krajský úřad MSK

App Store – Parkování Krajský úřad MSK

App for finding parking spaces in the Moravian-Silesian Region.

Role: Independent development of the iOS app.

  • Objective-C
  • Swift

Manemo

App for producing made-to-measure suits that guides users through taking photographs according to instructions and sends the resulting data to production.

Role: Independent development of the mobile app.

  • Flutter

SmileCar

iOS car-sharing app, later merged with the HoppyGo project.

Role: Taking over, maintaining, and further developing the existing app.

  • Swift

Colla

App for sharing data between construction workers.

Role: Development of the iOS app and participation in the design of its technology architecture and XMPP-based communication solution.

  • Objective-C
  • XMPP

LookAtIt

Social network focused on sharing photos among users deciding whether to buy an item of clothing.

Role: Development of the iOS app and participation in the design of its technology architecture and XMPP-based communication protocol.

  • Objective-C
  • XMPP

Ticketon

Ticket management app.

Role: Independent development of the iOS app based on the supplied visual design and server API.

  • Objective-C

iOpravna

App for a company providing Apple device repairs.

Role: Independent development of the iOS app based on the supplied visual design and server API.

  • Objective-C

Chytrá kuchařka

Recipe-focused app.

Role: Independent development of the Windows Phone app based on the supplied design, including integration with server-side data.

  • Windows Phone
  • C#

iSport

App for reading sports news.

Role: Independent development of the Windows Phone app based on the supplied design, including integration with server-side data.

  • Windows Phone
  • C#

VOYO

App for watching television programmes.

Role: Independent development of the client app based on the supplied design and server-side data sources.

  • Symbian
  • Qt

Shared application framework

Role: Lead architect and one of the principal authors of an internal framework used across a number of newer Flutter apps. The framework unifies their architecture and shared application mechanisms and is continuously developed alongside the individual projects.

  • Flutter
  • Dart

Who I am

A developer whose work extends into design, leadership, and communication

building software since
Mobile applications × AI
dozens of completed software products
End-to-end
engineering · architecture · leadership

I have been developing software since 2011. Throughout my career, I have worked as a freelancer building custom applications. I have collaborated with leading companies including Inmite, Headmade, Madeo, and Asymbo. Together, we built applications such as mujRozhlas, iVysílání, Voyo, OneTicket, iDNES, and iSport, along with dozens of others. I handled the technical implementation of some independently and worked on others as part of a team.

Working with different development studios exposed me to a range of approaches to building software. I gained insight into project planning, front-end and back-end development, as well as user interface design, marketing, and client communication. Along the way, I learned to collaborate effectively, lead others, and review their work.

In my personal life, I am a father of two and a husband. I spend much of my free time studying how the world works. My interests include physics, neurobiology, psychology, geopolitics, and economics, as well as related philosophical disciplines such as epistemology, philosophy of mind, and political philosophy. I have read hundreds of books over the course of my life. I like to understand how things work at a deep level and apply what I learn across disciplines. I regularly play tennis and occasionally play badminton and squash.

What I do

From Symbian to systems that orchestrate language models.

Professional path

  1. C++ · Qt Symbian / Maemo
  2. C# Windows Phone
  3. Java Android
  4. Objective-C · Swift iOS
  5. Dart Flutter
  6. Python · TypeScript Backends
  7. RAG · agents LLM systems

I built my first applications for Symbian and the experimental Maemo and MeeGo platforms. At the time, I worked in C++ with Qt. Applications for Windows Phone in C# and Android in Java followed. From 2012 onward, I focused almost exclusively on iOS applications. Around 2017, I began favoring cross-platform development with Flutter over native development in Objective-C and Swift.

Since 2024, I have also developed several back ends: first in Python on Firebase, using Cloud Functions and Firestore, and most recently a TypeScript back end for an e-commerce platform using PostgreSQL and the Prisma ORM.

I studied Information Systems at the Faculty of Information Technology at Brno University of Technology. Both of my theses received awards. My bachelor's thesis placed third in both the interfaculty EEICT competition and the Czech round of Nokia's Calling All Innovators competition. My master's thesis placed first at EEICT. These achievements gave me the opportunity to work on major projects from the very beginning of my career.

Architecture

From a specific project to a reusable system.

Three architecture designs

  1. BTLN Framework design ↔ implementation
  2. Asymbo Framework server → native UI
  3. LookAtIt and Colla client ↔ client

The BTLN Framework is a toolkit for building user interfaces in Flutter and native iOS. Its predefined components can be assembled into more complex structures and represented consistently from visual design through final implementation in the app. It also encapsulates common capabilities such as font families and weights, icons, and color styles. This reduces the need to rebuild UI components for every project while providing a stable interface between design and implementation that makes developer collaboration easier. The framework is based on my original design, and I co-developed it.

The Asymbo Framework is a server-driven UI architecture that can generate a mobile client's interface without the app understanding the data it presents. The server composes the interface from native components, groups them into larger structures, and defines each component's behavior and the actions triggered by user interaction. I designed the application architecture, including the protocol through which the server sends the client a specification for assembling UI elements and their behavior.

LookAtIt and later Colla were social networks designed for communication in small user groups. The first focused on sharing and rating outfits among its users; the second supported communication between construction-site workers. For both products, I designed the client-to-client communication interface using the XMPP protocol.

AI projects

I build tools that help me think, read, and find connections.

Personal AI system

Second Brain

Second Brain is a system built with Node.js and TypeScript. It processes essays I have written over the course of my life and exports of discussions I have had, compiling them into a map of my thinking. The project is loosely inspired by ideas from Andrej Karpathy. However, I took his idea in a different direction and adapted it to my own needs.

The system first splits input data into smaller units, then orchestrates LLMs to classify the ideas they contain and builds a semantic graph from the connections between them. The result is a graph of approximately ten thousand nodes capturing individual ideas and opinions as well as relationships such as evolution, contradiction, and open questions. It is then exported as a wiki, an interactive visualization, and a set of Markdown files for a custom GPT. GitHub repository – Second Brain

  • ≈ 10,000 nodes
  • idea evolution · contradictions · open questions

Books × LLM

FilosofGPT

FilosofGPT is a Node.js script written in JavaScript that processes my collection of EPUB and PDF books. Through repeated LLM calls, it classifies them by relevance, selects approximately 150 books, and converts them to Markdown. It annotates individual books, chapters, and pages, then combines the output into approximately 20 large Markdown files. These files serve as sources for my custom GPTs, FilosofGPT and PolyhistorGPT, which I use to discuss books I have recently read. GitHub repository – FilosofGPT

Voice × LLM

Blabber

When I first launched ChatGPT in February 2023, I was fascinated by an artifact unlike anything that had existed before. Although the language model at the time made more things up than it actually knew, it was clear to me that something significant had arrived. It immediately occurred to me that voice, rather than written text, would be the best way to explore the new system’s capabilities.

So I built Blabber, a mobile app that connected Google’s services for speech recognition and synthesis with a language model from OpenAI. A colleague created the app’s visual design. I brought the app all the way to production. I no longer develop it because its original integrations have become outdated.

AI data processing

RAG & fine-tuning

I built two RAG systems: one over the Czech Collection of Laws, the other over content from the Koira Dog School. Both were written in Python, used the Qdrant vector database, and powered chatbots focused on legal questions and dog training. GitHub repository – RAG & fine-tuning

I also built a prototype to streamline the work of judicial enforcement officers. Through a lightweight application layer, it called a fine-tuned model to generate documents for the register of enforcement orders from templates.

Language models and their orchestration hold possibilities that no one could have imagined just a few years ago.