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.

Toptalauthors are vetted experts in their fields and write on topics in which they have demonstrated experience. All of our content is peer reviewed and validated by Toptal experts in the same field.
Share

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.

8-minute readContinue Reading
Vadim Dagman

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.

12-minute readContinue Reading
Paul-Catalin Mestereaga

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.

10-minute readContinue Reading
Marko Perutović

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.

11-minute readContinue Reading
Justen Robertson

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.

14-minute readContinue Reading
Juan Carlos Arias Ambriz

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.

19-minute readContinue Reading
John R. Kosinski

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.

10-minute readContinue Reading
Luke Tomlin

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.

21-minute readContinue Reading
Lucas van Dongen

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.

24-minute readContinue Reading
Radosław Szalski

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.

13-minute readContinue Reading
Yoosif Sherif

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.

8-minute readContinue Reading
Anton Shkuratov

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.

21-minute readContinue Reading
John R. Kosinski

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.

23-minute readContinue Reading
Alexey Karasev

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.

16-minute readContinue Reading
John R. Kosinski

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.

9-minute readContinue Reading
Ben Gottlieb

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.

24-minute readContinue Reading
Nick McCrea

Nick McCrea

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

Toptal Engineering Expert

Gabriel is a highly efficient and reliable professional who possesses a broad skill set for web application development. He's been working on a range of products and clients—from working on scalability problems in production engineering teams at Shopify and Autodesk to launching new applications for startups. Most of his work consists of leading technical teams, by creating an easy development environment, fixing technical debts, providing best practices code examples, and mentoring devs.
Read more

Previously At

Shopify

Most-read Articles

Marcos Henrique da Silva

Creating a Secure REST API in Node.js

By Marcos Henrique da Silva
13-minute readContinue Reading

World-class articles, delivered weekly.

By entering your email, you are agreeing to our privacy policy.

Join the Toptal® community.