Michal Kalis, Developer in Prague, Czech Republic
Michal is available for hire
Hire Michal

Michal Kalis

Software Developer

Prague, Czech Republic

Toptal member since February 22, 2016

Bio

Michal is a senior iOS developer with 10+ years of experience in Swift, SwiftUI, and some UIKit. He built Splash Sports (★4.8, 2.2M+ users) and RunYourPool (★4.9) from scratch. He previously led iOS development at Ciphr, an encrypted messenger. He's currently at Česká televize working with Swift 6 concurrency, SwiftUI, and GraphQL. He's using Daily Claude Code across four projects, including CLAUDE.md, rules, sub-agents, skills, hooks, and MCP integrations. Builder: missinghue.com, kozahive.com.

Portfolio

Ceska Televize
Swift, SwiftUI, GraphQL, Claude Code
Splash Sports
Swift, UIKit, Git, MVVM-C, SwiftUI, REST
Ciphr (via Toptal)
Push Notifications, App Groups, User, AVFoundation, Cryptography, Sockets...

Experience

  • iOS - 10 years
  • Scrum - 9 years
  • Git - 8 years
  • Swift - 8 years
  • REST - 6 years
  • Objective-C - 4 years
  • SwiftUI - 3 years
  • Claude Code - 1 year

Preferred Environment

Git, Xcode, Figma, Claude Code

The most amazing...

...challenge I've tackled is porting a C/C++ crypto library to iOS and building an encrypted messenger from scratch.

Work Experience

Senior iOS Developer

2025 - PRESENT
Ceska Televize
  • Used Claude Code daily to ship features faster on ČT sport and ČT24 - live videos, deeplinks, player analytics, iPad layouts, and more.
  • Set up Claude Code with a project guide, a script that adds Swift files to Xcode automatically, custom commands, and hooks that run code generation on every edit.
  • Suggested UI and UX improvements on screens and features.
  • Refactored views using compositions mostly, DRY-ed services and views, and improved network performance.
Technologies: Swift, SwiftUI, GraphQL, Claude Code

Senior iOS Engineer

2022 - 2024
Splash Sports
  • Developed two sport-related apps. RunYourPool is a service for hosting and managing sports pools and SplashSport is a platform for organizing sports contests with cash prizes.
  • Designed and developed the core application using an MVVM-C architecture.
  • Led continuous integration (CI) and continuous delivery (CD) using GitHub Actions and Fastlane.
  • Communicated with designers, other platform developers, and stakeholders.
  • Prepared the code to implement unit tests, using dependency injection and following SOLID principles.
Technologies: Swift, UIKit, Git, MVVM-C, SwiftUI, REST

iOS Developer

2017 - 2020
Ciphr (via Toptal)
  • Developed a secure communication app with encrypted messenger, email, and storage.
  • Designed and developed the core application, including networking, persistence, logic, and UI.
  • Ported a C and C++ crypto library built for BlackBerry to iOS.
  • Integrated the Double Ratchet Algorithm library and other crypto primitives using AES, HKDF, SHA, and more.
  • Created audio playback and recording by decoding and encoding OGG files.
  • Wrote unit tests for logic and UI parts of code.
  • Led Continuous Integration (CI) and Continuous Delivery (CD) using Xcode Server and Fastlane.
  • Communicated with designers, other platform developers, and stakeholders.
  • Dealt with and resolved threading issues, mostly socket related.
Technologies: Push Notifications, App Groups, User, AVFoundation, Cryptography, Sockets, REST APIs, Fastlane, Xcode Server, Continuous Delivery (CD), Continuous Integration (CI), Scrum, Swift, Realm, Keychain, Model View ViewModel (MVVM)

iOS and Node Developer

2016 - 2017
Autobeacon (via Toptal)
  • Drove iOS and back-end development including architectural decisions and implementation.
  • Developed the whole app from architecture design to distribution.
  • Used multiple technologies for dash cam recording, audio monitoring, location tracking, push notifications, background usage, geofence and iBeacon monitoring, route calculation, and more.
  • Communicated with many third party APIs for (e.g.) breathalyzer tests, retrieving iBeacon information, face detection via Clarifai API, speed checking via Google Maps Premium API, or turn-by-turn navigation.
Technologies: BACtrack Breathalyzer API, Recording, Camera API, Core Motion, Git, Push Notifications, Core Data, Core Location, iBeacon, Node.js, Swift

iOS Developer

2016 - 2016
Westwing (via Toptal)
  • Suggested and implemented ways to make one of the screens (Magazine) look more native.
  • Added unit tests using fake objects, dependency injection, and asynchronous expectations.
  • Designed and implemented preloading of content in the Magazine screen.
  • Added custom modal screen transitions.
Technologies: Jira, JavaScript, WebView, REST APIs, Dependency Injection, Unit Testing, Swift

iOS Developer

2016 - 2016
The Diary (via Toptal)
  • Collaborated to develop a health tracking app helping patients and doctors to communicate with each other.
  • Developed new features and changed existing parts of the app.
  • Implemented custom collection view layouts and animations.
  • Fixed bugs, refactored, tested, and made UX improvements.
  • Managed projects under Scrum methodology in a team of seven iOS developers.
Technologies: Scrum, REST APIs, Sketch, Swift

iOS Developer

2015 - 2016
STRV
  • Focused on pixel-perfect designs, interactive UI, custom layouts, and animations.
  • Analyzed and developed a music app (StereoCast) in a month; later led a team of two other iOS engineers.
  • Involved in the whole development process from discussing ideas with clients, discussing UX and UI, programming, testing, and distribution.
  • Conducted unit testing.
  • Started learning back-end development in Node.js.
Technologies: Ogg, Node.js, JavaScript, Chromecast, Behavior-driven Development (BDD), Alamofire, REST APIs, Core Data, Objective-C, Swift

iOS Developer

2012 - 2015
Cleverlance Enterprise Solutions
  • Developed iOS applications for Czech, Slovak and German clients.
  • Led development of two apps: CEZ ON-LINE and SprachBox Pro.
  • Focused keenly on security, as multiple clients were banks.
  • Worked on projects using Scrum methodology.
Technologies: OAuth, REST APIs, IMAP, Scrum, Git, Core Data, Objective-C

Experience

Hangs - Voice-first Quiz App (WIP)

Voice-first quiz app, iOS + back-end monorepo. Built with Claude Code. Solo development.

iOS: SwiftUI, Swift 6, MVVM + service layer; ElevenLabs STT with OpenAI Whisper fallback; StoreKit paywall; Sentry crash reporting; XCTest suite written alongside features
Back end: Python / FastAPI on Fly.io; ChromaDB for semantic search over a question corpus; OpenAI for generation and scoring; pytest suite
CI/CD: fastlane + GitHub Actions, TestFlight distribution via fastlane match
Claude Code setup configured personally: CLAUDE.md with stack-specific rule files, sub-agents for code review and testing, project skills for repeated workflows (deploy, TestFlight release, crash inspection, question verification), PostToolUse hooks running swiftformat / ruff / pytest, MCP integrations (Figma, pencil, context7)
Approach: Claude Code ships better code when it can observe and verify its own work - added Sentry early so it can read real crash reports, wired test runs into hooks, wrote rule files so conventions don't need re-explaining.
Design flow: Figma, Google Stitch, pencil

Ask for TestFlight access.

SplashSports

https://splashsports.com
As part of a 3-member iOS development team, I contributed to the creation of two sports-related applications, RunYourPool (4.9 rating) and SplashSports (4.8 rating). RunYourPool is designed to facilitate hosting and managing sports pools, whereas SplashSports serves as a platform for organizing sports contests with cash prizes. My role involved contributing to the design and development of the core applications using the MVVM-C architecture, implementing continuous integration (CI) and continuous delivery (CD) processes with GitHub Actions and Fastlane, and maintaining effective communication with designers, other platform developers, and stakeholders.

Additionally, I prepared unit test applications by implementing dependency injection and adhering to SOLID principles, ensuring the high quality and maintainability of our codebase.

Ciphr

A secure communication app with encrypted messenger, email, and storage.

I was responsible for porting a proprietary cryptographic library written in C/C++ for BlackBerry to iOS. Afterward, my job was to build the core app and implement the messenger part utilizing cryptographic primitives and protocols from the library. Our team got the app to a production-ready state with a fully functional chat, email, and storage during the engagement, including features like push notifications, file transfers, audio recording and playback, taking photos, contact verification, and more.

All features—heavily focused on security and privacy—needed to be properly designed considering possible edge cases, security risks, and conformance to proprietary protocols.

StereoCast

With a very tight schedule, our team managed to deliver a complete app with all its features—audio playback, real-time data refresh using Firebase, in-app purchases, and more. For the first couple of weeks, I was the only developer for the iOS app and later on led the iOS development.

Feeln

A video streaming app of Hallmark's movies and series. Communication is handled via the REST API and data is managed with Core Data. Video is streamed and secured using DRM technology. Once the design is very important, there are various custom layouts and animations with parallax effects, custom collection view layouts, and more.

SprachBox Pro

The app serves Deutsche Telekom customers to access their virtual voicemail and record personal greetings, adjusting fixed-line settings. For the communication with the back end, both IMAP protocol and REST were used, and data was stored using multi-context Core Data. The app is capable of audio file playback and recording. The project was managed under Scrum, where I was one of the two developers working on the iOS app, mostly responsible for the IMAP part.

Ripple

I was part of a 3-member team developing the app for a US client. It was developed entirely in Swift with a BDD approach. My responsibilities included communication with designers, developing new features, and bug fixing.

Education

2010 - 2011

Bachelor's Degree in Information Management

College of Information Management and Business Administration - Prague, Czech Republic

2006 - 2010

Bachelor's Degree in Information Technology

Brno University of Technology - Brno, Czech Republic

Certifications

DECEMBER 2025 - PRESENT

AI Developer

robot_dreams by Laba

Skills

Libraries/APIs

Alamofire, REST APIs, Camera API, BACtrack Breathalyzer API, Xcode Server, Sockets, Node.js

Tools

Xcode, TestFlight, iTunes Connect, Auto Layout, Adobe Photoshop, Git, Sketch 3, Claude Code, Sublime Text, Sketch, WebView, Jira, Fastlane, Figma, GitHub, Sentry

Languages

Objective-C, Swift, JavaScript, GraphQL, Python, Swift 6

Frameworks

SwiftUI, Core Data, Core Location, Core Motion, UIKit

Platforms

iOS, Keychain, Firebase

Paradigms

Scrum, REST, Behavior-driven Development (BDD), Unit Testing, Dependency Injection, Model View ViewModel (MVVM), Continuous Delivery (CD), Continuous Integration (CI), Model Context Protocol (MCP)

Storage

JSON, Realm

Other

Software Architecture, Push Notifications, IMAP, OAuth, Chromecast, Ogg, iBeacon, Recording, Cryptography, AVFoundation, User, App Groups, MVVM-C, Cursor AI, AI Development, AI Agents, Open-source LLMs, Large Language Models (LLMs), Fine-tuning, Agentic AI, Prompt Engineering, AI-augmented Software Engineering (AIASE), FastAPI, GitHub Actions

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring