Toptal Engineering Expert
Toptal Engineering Blog
The Toptal Engineering Blog is a hub for in-depth development tutorials and new technology announcements created by professional software engineers in the Toptal network.
Featured in
RxSwift and Animations in iOS
iOS developers love the power of UIKit, and animating a UIView is usually fairly easy. However, if you want to chain animations together and set up dependencies between them, your code can quickly become difficult to read with many nested closures and indentation levels.
In this article, I’ll explore how to apply the power of a reactive framework such as RxSwift to make that code look much cleaner as well as easier to read and follow. My client wanted a story told through a sequence of animations rather than by playing a pre-rendered video, and with RxSwift, we easily tweaked it to perfection.

Vadim Dagman
Vadim is a seasoned freelance developer, architect, technical manager, and entrepreneur with 25+ years of experience.
Magento Performance Optimization: A Complete Guide to Faster Load Speeds
Magento is an extremely popular eCommerce platform used by businesses of all sizes, so what can we do to make it faster and more efficient? In this article, Toptal Freelance Magento Developer Paul Mestereaga explains what you can do to improve the performance of your Magento site.

Paul-Catalin Mestereaga
Paul is a devoted Magento developer, a real go-getter, and a person who is truly passionate about the web.
World-class articles, delivered weekly.
By entering your email, you are agreeing to our privacy policy.
How to Leverage BLoC for Code Sharing in Flutter and AngularDart
Code reuse turns lazy developers into efficient geniuses. Imagine if you could write the majority of your code once and run it on the web and native mobile—both iOS and Android.
In this article, Toptal Freelance Dart Developer Marko Perutović introduces us to the BLoC pattern, whereby you can isolate your business logic in pure Dart and reuse it in both Flutter and AngularDart.

Marko Perutović
Marko has 13+ years of experience with different technologies and team leadership. When coding, he loves to “keep it short and simple.”
As a JS Developer, ES6 Classes Are What Keep Me Up at Night
JavaScript is an oddball of a language with numerous approaches to almost any problem. When ES6 added the “class” keyword, did it save the day or just muddy the waters? In this article, Toptal Freelance JavaScript Developer Justen Robertson explores OOP in modern JS.

Justen Robertson
Justen has a decade of full-stack JavaScript experience working with the likes of Taylor Swift and the Red Hot Chili Peppers.
Trello vs. Jira: Compared From a Developer’s Perspective
Project management tools have dramatically transformed the way software is engineered, but which one should you use, and when?
In this article, Toptal Freelance Developer Juan Carlos Arias Ambriz outlines the differences between Jira and Trello and explains how you should choose between them.

Juan Carlos Arias Ambriz
Juan is a front-end engineer, developer, and architect with over a decade of experience in UX development. He has collaborated with high-profile clients, including Meta, where his commitment to enhancing UX produced world-class responsive designs, e-commerce platforms, and interactive applications.
Ethereum Oracle Contracts: Can We Trust the Oracle?
The whole point of smart contracts is that they need to be more secure and efficient than traditional contracts. So where do smart contract oracles fit in?
In the final installment of our three-part series, Toptal Blockchain Developer John R. Kosinski explains the role of oracles in the evolution of trust.

John R. Kosinski
As a full-stack dev for nearly two decades, John’s worked with IoT, Blockchain, web, and mobile projects using C/C++, .NET, SQL, and JS.
Top-level Control With Redux State Management: A ClojureScript Tutorial
ClojureScript is the tool of choice for front-end developers who have tried it. Recently in this series, we showed how to use it to get started with React. In today’s tutorial, Toptal Freelance Clojure Developer Luke Tomlin dives into how to use Redux for React state management in ClojureScript.

Luke Tomlin
With a Master’s in CS and mathematics, Luke specializes in functional programming. A Google internship launched his powerhouse dev career.
Working With Static Patterns: A Swift MVVM Tutorial
Real-time data-driven apps create new challenges in the way we structure our programs, especially on mobile. In this article, Toptal Freelance iOS Developer Lucas van Dongen implements an iOS chat app, comparing the classic MVC approach with a static immutable MVVM pattern.

Lucas van Dongen
A mobile developer and teacher, Lucas has built not only iOS apps but also back-end APIs using Swift, Objective-C, Python, Elixir, and C#.
Terraform AWS Cloud: Sane Infrastructure Management
Writing an application is only part of the story. In order for it to be of value, it needs deploying somewhere it can scale; it has to run with high availability, have backups, and so on. Deployment and infrastructure management isn’t a simple process. And Terraform does nothing to hide the complexity. However, it does make your infrastructure declarative and reproducible, like your code.
In this article, Toptal Freelance DevOps Engineer Radosław Szalski teaches us what Terraform is, how its components work, and how to configure an entire AWS Cloud solution in minutes using its configuration language.

Radosław Szalski
Radosław is a Python enthusiast and full-stack developer with over half a decade of professional experience engineering web apps.
Is It Time to Use Node 8?
Node 8 has brought significant performance and feature upgrades. Should you use it on new projects? Is it worth upgrading existing codebases? In this article, Toptal Freelance JavaScript Developer Youssef Sherif gives a tour of Node 8’s biggest changes and what they mean for your project.

Yoosif Sherif
Youssef has utilized React, Angular, NodeJS, and Python to build sophisticated web apps, API services, and machine learning applications.
A Deep Dive Into Entity Framework Performance When Using “Contains”
Entity Framework is a great tool, but in some cases its performance is slow. One such case arises when complex queries use “Contains.”
Join Toptal .NET Developer Anton Shkuratov in exploring how performance issues can be mitigated and finding the best approach to this type of complex queries.

Anton Shkuratov
Anton is a software developer and technical consultant with 10+ years of experience in desktop-distributed applications.
Ethereum Oracle Contracts: Solidity Code Features
Solidity is the programming language of choice for Ethereum and the de facto industry standard for smart contract development.
In the second article of our three-part series, Toptal Blockchain Developer John R. Kosinski takes a closer look at Solidity quirks and features, explaining how to make the most of it.

John R. Kosinski
As a full-stack dev for nearly two decades, John’s worked with IoT, Blockchain, web, and mobile projects using C/C++, .NET, SQL, and JS.
Option/Maybe, Either, and Future Monads in JavaScript, Python, Ruby, Swift, and Scala
If you’re searching for the holy grail of bug-free code in JavaScript, Python, Ruby, Swift, and/or Scala, look no further! This monad tutorial by Toptal Freelance Functional Programmer Alexey Karasev takes you from category theory to the practical implementations of the Option/Maybe, Either, and Future monads, plus a sample program—in all five languages.

Alexey Karasev
Alexey (MEcon) is skilled in several languages and prefers functional programming, particularly Scala, to lower time wasted hunting bugs.
Ethereum Oracle Contracts: Setup and Orientation
Oracles are changing the way we view and create smart contracts. How do we implement them in Ethereum, using nothing but Solidity and standard dev tools?
In the first article of our three-part series, Toptal Blockchain Developer John R. Kosinski explains how to get started and compile a smart contract with oracles.

John R. Kosinski
As a full-stack dev for nearly two decades, John’s worked with IoT, Blockchain, web, and mobile projects using C/C++, .NET, SQL, and JS.
Collusion: Nearby Device Networking with MultipeerConnectivity in iOS
Traditionally, connecting devices for peer-to-peer communications has been a tedious task: An application needs to discover what’s around it, open connections on both sides, and then maintain them as network infrastructure, connections, distances, etc. Realizing the difficulties inherent in these activities, in iOS 7 and macOS 10.10 Apple introduced its MultipeerConnectivity framework.
Join Toptal Freelance iOS Developer Ben Gottlieb as he explains what MultipeerConnectivity is, and teaches us how to use it.

Ben Gottlieb
Ben has been an iOS developer for the entire life of the platform and has worked on mobile devices for more than 20 years.
An Introductory Robot Programming Tutorial
Let’s face it, robots are cool. In this post, Toptal Engineer Nick McCrea provides a step-by-step, easy-to-follow tutorial (with code samples) that walks you through the process of building a basic autonomous mobile robot.

Nick McCrea
Nicholas is a professional software engineer with a passion for quality craftsmanship. He loves architecting and writing top-notch code.
Most-read Articles

An Angular 5 Tutorial: Step by Step Guide to Your First Angular 5 App
World-class articles, delivered weekly.
Toptal Developers
- Android Developers
- App Developers
- AWS Developers
- Azure Developers
- BigCommerce Developers
- Blockchain Developers
- Coders
- Database Developers
- Embedded Software Engineers
- Flutter Developers
- HTML5 Developers
- Java Developers
- Joomla Developers
- Kubernetes Developers
- Laravel Developers
- Magento Developers
- .NET Developers
- Next.js Developers
- Odoo Developers
- Outsourced Developers
- PHP Developers
- Power BI Developers
- Prototype Developers
- Python Developers
- React Developers
- React Native Developers
- Remote Developers
- Ruby on Rails Developers
- Salesforce Developers
- Security Engineers
- SharePoint Developers
- Shopify Developers
- Software Developers
- Squarespace Developers
- Startup Developers
- Svelte Developers
- Twilio Developers
- Vue.js Developers
- Web Developers
- Web Scraping Developers
- WooCommerce Developers
- WordPress Developers
- View More Freelance Developers
Join the Toptal® community.





















