Your App Development Specialist

With more than a decade of experience in mobile app development, I can help you getting your project to the next level. My main focus is the Apple ecosystem: iOS, macOS, iPadOS, watchOS, tvOS, visionOS. Feel free to contact me if you need some help.

Development

I help build new teams and help developers grow. I support existing teams with deep knowledge of Swift, Objective-C, Frameworks, and Tools. I focus on safe, performant, and readable code. Maintainable code. Code that works.

Do you need support adopting new technologies like SwiftUI and strict Swift concurrency? Let's talk!

Architecture

Well-structured code is the defining factor in the success of a project. It is not enough to pick any acronym from a catalogue of popular architectures1 and call it a day. Instead, the design of an architecture should be carefully considered for each project. What are the most important goals? Does the project have unusually high security requirements2? Or is networking performance critical? How large and how advanced is the development team? Does the project domain have an inherent structure? Answers to these questions should shape the architecture of an app.

Adopting an architecture is only the first step. Even more important is a competent implementation. It needs to be clean, maintainable and well-documented.

Design and UX Support

Developers play an important role in the process of designing an app. Even the most experienced designers benefit from cooperating with a knowledgeable developer. I point out different and often lesser-known approaches to a design problem. I mention more modern APIs in the system frameworks that enable more elegant, streamlined and enjoyable designs. I help designers improve the accessibility of an app and give tips on how to make an app feel right at home on the operating system.

As an Architect, I have some design sensibilities and some design-adjacent training and experience. However, I know my place in a software team. Designers are just better at design. But I can give tips and provide alternative approaches that open up the design space. Designers can take my input, and do their amazing magic to create something wonderful.

Server

Did you know that technologies used to develop native apps can be used server-side, too? Vapor is a robust framework for building a server in Swift. Why should you consider server-side Swift?

A Swift server can be quickly set up as a mocking environment for app development before a real server becomes available. A Swift server can also be deployed in production.

Contact

The best way to contact me is by email.


  1. Popular architectures include _MVVM_, _VIPER_, and _TCA_ ↩︎︎

  2. Banking apps and personal health apps are examples for elevated security requirements. A match-three-game may focus more on animation performance instead. ↩︎︎

  3. Swift compiles natively to many supported target platforms, including iPhones, Macs, Linux, Windows, and embedded systems with different processor architectures, including ARM and X86. Most important frameworks are available cross-platform, except for some Apple-specific frameworks (e.g. AppKit, UIKit, and SwiftUI). ↩︎︎

  4. Master Thesis comparing different server frameworks: "Vapor distinguished itself with exceptional memory efficiency and strong performance in CPU- and database-intensive tasks, with zero errors and stable latencies." ↩︎︎

  5. Case Study: "Faster and cheaper than Python in case study, but beware slow builds" ↩︎︎

  6. Benchmark: The utility of benchmarks may be debatable. This particular benchmark surfaced a few issues in the configuration and tooling of a Vapor server and lead to a very intensive debugging thread on the Swift forums. Wade Tregaskis wrote a long article about this experience. One issue on the Vapor framework was promptly patched and with improved benchmark tooling the results are impressive: "Memory wise it blows all the other technologies away, using only 2.5% of the amount of memory that the java implementation needs, and 10% of node-js." ↩︎︎