Swift Tutorial: An Introduction to the MVVM Design Pattern
On every new project, you have the privilege of deciding how you’ll architect the app and organize the code. But if you don’t pay attention, or you rush through coding, you risk ending up with spaghetti code. The solution? Use a proper design pattern.
In this tutorial, Toptal Software Engineer Dino Bartošak explains how to implement an MVVM design pattern on a demo Swift application.

Dino Bartošak
How to Make an Android and iOS App in C# on Mac
In the past few years, Microsoft has pulled a few aces from up its sleeve. Yes, they messed up Skype, failed with smartphones, and almost succeeded with tablets. But they did some really amazing things as well.
Relinquishing their closed empire approach, they open-sourced .NET, joined the Linux Foundation, released SQL Server for Linux, and created this great new tool called Visual Studio for Mac.
In this post, Head of Open Source Demir Selmanovic details how to make an Android and iOS app in C# on your Mac.

Demir Selmanovic
How to Isolate Client-Server Interaction Logic in iOS Applications
Client-server interactions play a vital role in most modern mobile applications. By leveraging available back-end services, these mobile applications can provide some really amazing functionalities. However, as mobile applications grow complex, it becomes essential to keep the networking module as clean and maintainable as possible - separated from the rest of the application logic.
In this article, Toptal freelance software engineer Alexander Gaidukov walks us through the design of a simple networking module that allows your iOS application to interact with RESTful APIs.

Aleksandr Gaidukov
The 10 Most Common Mistakes iOS Developers Don't Know They're Making
Apple’s iOS is the second-largest mobile operating system in the world. It also has a very high adoption rate, with more than 85 percent of users on the latest version. These highly engaged users have high expectations: If your app has bugs, you’ll hear about it. And once the one-star reviews start rolling in, it’s hard to recover.
In this article, Toptal Software Engineer Nikita Tuk outlines the 10 most common mistakes that developers make—and how to avoid them.

Nikita Tuk
Commoditized Smartphones: Bringing 4G To Developing Countries
Are we really going to need $500 phones to get people in developing countries on 3G or 4G? Not really.
Welcome to the world of commoditised smartphones. Allow us to explain what’s going on and why it could have a significant impact on software and hardware industries.

Nermin Hajdarbegovic
iOS Animation and Tuning for Efficiency
Smooth animations and flawless transitions are key to perceived performance in modern mobile applications. Without the right tools, tuning iOS animation for efficiency can be a challenge in itself.
In this article, Toptal engineer Stefan Progovac demonstrates the role of Instruments, a sophisticated set of performance profiling tools for iOS, discussing how they can help you understand animation performance bottlenecks and some strategies for working around them.

Stefan Progovac
Demystifying iOS 9 Spotlight Search for Developers
Spotlight search in Apple iOS 9, compared to earlier versions, has been made much more prominent and personal. With suggestions from Siri and integration opportunities for third-party apps, iPhone’s search functionality is no longer limited to the scope of Apple’s own apps. In this article, Toptal engineer Richard Forsythe explores some iOS SDK functionalities that allow apps to make content available to the user via Spotlight search.

Richard Forsythe
iOS 9 Betas And WatchOS 2 For Developers
Apple’s iOS 9 and WatchOS 2 updates brings a number of novel features, including improved multitasking for iPads and a host of aesthetic tweaks. However, while iOS 9 is just an incremental update with a focus on the new iPad Pro, WatchOS 2 is not a skin-deep update. Apple has changed the WatchOS architecture and opened up a range of new possibilities for developers.

Nermin Hajdarbegovic
Simplifying RESTful API Use and Data Persistence on iOS with Mantle and Realm
A large number of modern mobile applications interact with web services in one way or another, and iOS applications are no different. Mantle (a model framework) and Realm (a mobile database) come with the promise of simplifying some of the hurdles in consuming web services through RESTful APIs and persisting data locally. In this article, Toptal engineer Marcin Kmiec shows how to build a simple iOS application using Mantle and Realm and demonstrates how this approach helps to eliminate a large amount of boilerplate code.

Marcin Kmiec
World-class articles, delivered weekly.
Toptal Developers
- Algorithm Developers
- Angular Developers
- AWS Developers
- Azure Developers
- Big Data Architects
- Blockchain Developers
- Business Intelligence Developers
- C Developers
- Computer Vision Developers
- Django Developers
- Docker Developers
- Elixir Developers
- Go Engineers
- GraphQL Developers
- Jenkins Developers
- Kotlin Developers
- Kubernetes Experts
- Machine Learning Engineers
- Magento Developers
- .NET Developers
- R Developers
- React Native Developers
- Ruby on Rails Developers
- Salesforce Developers
- SQL Developers
- Sys Admins
- Tableau Developers
- Unreal Engine Developers
- Xamarin Developers
- View More Freelance Developers
Join the Toptal® community.