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

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.

A Guide to Static Site Generators Using Hexo and WordPress

In this article, Toptal Freelance Software Engineer Silvestar Bistrovic explains the process of migrating a WordPress blog to a static site generator using Hexo, outlining the pros and cons of the approach.

8-minute readContinue Reading
Silvestar Bistrović

Silvestar Bistrović

Silvestar is a fearless web developer, JAMstack enthusiast, and WordPress coder. His focus is performance and pixel-perfect implementation.

Introduction to Objects and References in PHP Memory

In this article, I will talk about how object and variable references are controlled in memory, since this is an issue that can generate discussion and differing opinions. One question to ponder is: “By default, are objects passed by reference or by copy in PHP?” I’m going to talk first about what references aren’t in PHP; second, I’ll discuss what they are, and finally, I will examine how the garbage collector works in PHP.

6-minute readContinue Reading
Agustin Villalba

Agustin Villalba

Augustin is a Zend-certified full-stack PHP engineer with 10+ years of experience at the likes of FIFA and the European Molecular Bio Lab.

World-class articles, delivered weekly.

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

An Elasticsearch Tutorial for .NET Developers

Elasticsearch is one of the most powerful full-text search engine solutions out there. Using the NEST package, you can easily leverage the power of Elasticsearch in your .NET projects.

In this article, Toptal Freelance Software Engineer Ivan Cesar shows how Elasticsearch can solve real-world full-text search problems in your .NET projects.

11-minute readContinue Reading
Ivan Cesar

Ivan Cesar

Ivan has a decade of work on projects of all sizes, mostly using .NET technologies. He also likes to take part in algorithm competitions.

Angular Change Detection and the OnPush Strategy

Out of the box, Angular provides two different change detection strategies: Default and OnPush. Each strategy has its own advantages, but sometimes it is easy to miss a nifty optimization opportunity if you stick to the default strategy.

In this article, Toptal Freelance Software Engineer Ahmet Shapiro-Erciyas walks us through the available change detection strategies and shows how to use them in any Angular project.

6-minute readContinue Reading
Ahmet Shapiro-Erciyas

Ahmet Shapiro-Erciyas

Ahmet has more than five years of Java experience. He led the internal AngularJS training at Target and has developed iOS apps with 8k+ downloads.

Trunk-based Development vs. Git Flow

In this article, Toptal Freelance Software Engineer Konrad Gadzinowski dissects trunk-based development and Git flow, listing the pros and cons for various use cases.

9-minute readContinue Reading
Konrad Gadzinowski

Konrad Gadzinowski

Konrad specializes in creating modular, full-stack web applications that are easy to extend. His main expertise is Java and JavaScript.

How to Implement a Pixel-perfect iOS UI Design

In this article, Toptal Freelance Developer Roman Stetsenko explains what it takes to create a pixel-perfect iOS interface from the ground up and why it matters.

8-minute readContinue Reading
Roman Stetsenko

Roman Stetsenko

Roman is a mobile app developer with deep expertise in building pixel-perfect products for iOS, iPadOS, watchOS, and tvOS. He brings a mathematical mindset and sharp UX instincts to every project, from MVPs for companies like Duolingo to complex apps featuring advanced animation and sensor integration. His meticulous approach ensures elegant, high-performance interfaces and scalable architecture.

Android and iOS UI Testing with Calabash

Do you think testing your iOS or Android apps manually is faster than writing automated tests for them? Calabash, the cross-platform acceptance framework, busts that myth once and for all.

In this article, Toptal Freelance Software Engineer Alexander Gedevanishvili shows how Calabash, with its support for Cucumber, makes writing automated UI tests as simple as writing instructions in plain English.

6-minute readContinue Reading
Alexander Gedevanishvili

Alexander Gedevanishvili

Alexander is an accomplished full-stack developer with more than a decade of experience. He is passionate about mobile development.

Creating Truly Modular Code With No Dependencies

Complex, tightly-coupled, and fragile interdependent code. We’ve all written it. The kind of code where fixing one bug creates seven more. Have you ever wondered how to create independent modular code?

In this article, Toptal Freelance Software Engineer Konrad Gadzinowski walks us through the different types of architectural paradigms you can adhere to and how to write modular and decoupled code where changes to one module have minimal impact on the overall application.

11-minute readContinue Reading
Konrad Gadzinowski

Konrad Gadzinowski

Konrad specializes in creating modular, full-stack web applications that are easy to extend. His main expertise is Java and JavaScript.

Software Entropy Explained: Causes, Effects, and Remedies

In this article, Toptal Freelance Developer Adam Wasserman explains what software entropy is, what causes it and how it manifests itself, and what can be done to prevent it or mitigate its effects.

16-minute readContinue Reading
Adam Wasserman

Adam Wasserman

Adam is particularly interested in multi-threaded programming and distributing computing and considers himself an excellent communicator.

Angular 4 Forms: Validation and Nesting

Validating user inputs is an essential part of any robust web application. Angular 4 makes it especially easy for both template-driven and reactive forms.

In this article, Toptal Freelance Angular Developer Igor Geshoski walks us through the different approaches in Angular 4 form validation and shows how even complex form validation can be done easily.

29-minute readContinue Reading
Igor Geshoski

Igor Geshoski

Igor has been honing his algorithms and problem solving skills on large-scale Java based enterprise applications for about five years.

How to Choose the Best Front-end Framework

No single front-end framework will fit every web project. Compare React, Vue.js, Angular, and Ember.js so you can choose the best one for your needs.

11-minute readContinue Reading
Giorgi Bakradze

Giorgi Bakradze

Giorgi is a full-stack developer with deep expertise in JavaScript. He has diverse project experience, including creating multilanguage UIs, multiplatform apps, CI/CD pipelines, video tutorial REST APIs, and large-scale SPAs for e-commerce sites.

Implementing Serverless Node.js Functions Using Google Cloud

Serverless computing is an architecture style in which the code is executed in a cloud platform where we don’t need to worry about the hardware and software setup, security, performance, and CPU idle time costs. It’s an advancement of cloud computing that goes beyond infrastructure that abstracts the software environment as well. It means no configuration is required to run the code.

6-minute readContinue Reading
Vignes Aruljothi

Vignes Aruljothi

Vignes specializes in web technologies and has many years of experience in building scalable applications using JavaScript and Node.js.

Common Mistakes in Client Communication: How to Not Frustrate Your Client

This article will help you identify and address various communication issues that can plague off-site professionals. Whether you’re a full-stack developer, a UI designer, or a content creator, these easy to memorize tips will help you hone your communication skills.

11-minute readContinue Reading
Andreza Cristina da Silva

Andreza Cristina da Silva

Andreza, a former fellow at CERN, has worked at different stages & on different types of software projects. Lately, she focuses on iOS apps.

Conquer String Search with the Aho-Corasick Algorithm

The Aho-Corasick algorithm can be used to efficiently search for multiple patterns in a large blob of text, making it a really useful algorithm in data science and many other areas.

In this article, Toptal Freelance Software Engineer Roman Vashchegin shows how the Aho-Corasick algorithm uses a trie data structure to efficiently match a dictionary of words against any text.

16-minute readContinue Reading
Roman Vashchegin

Roman Vashchegin

Roman is a SharePoint and .NET developer with a proven ability to develop efficient, scalable, and stable solutions for complex problems.

Web Accessibility: Why W3C Standards Are Often Ignored

The goal of this article is to introduce you to the underlying principles of accessibility and help you flawlessly implement web accessibility guidelines and standards on your next project. Even minor improvements can help your content rank better, reach more people, and improve the overall user experience.

13-minute readContinue Reading
Cezary Tomczyk

Cezary Tomczyk

Cezary’s two decades as a software engineer and project manager have seen him working at Apple, Microsoft, Nokia, and Oracle, among others.

Maximum Flow and the Linear Assignment Problem

The Hungarian graph algorithm solves the linear assignment problem in polynomial time. By modeling resources (e.g., contractors and available contracts) as a graph, the Hungarian algorithm can be used to efficiently determine an optimum way of allocating resources.

39-minute readContinue Reading
Dmitri Ivanovich Arkhipov

Dmitri Ivanovich Arkhipov

Dmitri has a PhD in computer science from UC Irvine and works primarily in UNIX/Linux ecosystems. He specializes in Python and Java.

Toptal Engineering Expert

Gabriel Courtemanche

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.