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.

Building an ASP.NET Web API With ASP.NET Core

ASP.NET Core is a leaner and more modular redesign of ASP.NET 4.x.

In this article, Toptal Freelance ASP.NET Developer Damir Imangulov shows how to build a robust RESTful API using ASP.NET, EF Core, AutoMapper, and XUnit.

20-minute readContinue Reading
Damir Imangulov

Damir Imangulov

Damir is a hard-working architect, and experienced full-stack developer experienced in .NET, .NET Core, and front-end technologies.

Creating a Cryptocurrency in the Crystal Programming Language

Crystal is an up and coming programming language that should appeal to Ruby veterans in demand for more performance and flexibility. It may even be the most promising programming language of 2018.

In this tutorial, Toptal Ruby Developer Eqbal Quran demonstrates how you can harness Crystal’s potential to create your own blockchain and cryptocurrency.

22-minute readContinue Reading
Eqbal Quran

Eqbal Quran

Eqbal is a senior full-stack developer with more than a decade of experience working in web and mobile development.

World-class articles, delivered weekly.

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

A Deep Dive Into Reinforcement Learning

Machine learning and artificial intelligence are popular topics, vast domains with multiple paradigms to solve any given challenge.

In this article, Toptal Machine Learning Expert Adam Stelmaszczyk walks us through implementing deep Q-learning, a fundamental algorithm in the AI/ML world, with modern libraries such as TensorFlow, TensorBoard, Keras, and OpenAI Gym.

15-minute readContinue Reading
Adam Stelmaszczyk

Adam Stelmaszczyk

A PhD candidate specializing in AI and one of Europe’s top tech entrepreneurs, Adam is a team player and active F/OSS contributor.

Angular 5/ASP.NET Core: The Best of Both Worlds

Microsoft and Google have worked together since Angular 2, rendering ASP.NET Web Forms and MVC Razor obsolete. Nevertheless, while ASP.NET’s front-end tools may be lacking, it is still a great back-end framework.

In this article, Toptal Freelance Angular Developer Pablo Albella teaches us how to create the best architecture for both these worlds.

24-minute readContinue Reading
Pablo Albella

Pablo Albella

Pablo is a talented JavaScript and .NET developer. He successfully created numerous complex products over the past decade.

Emulating React and JSX in Vanilla JS

Not everybody likes JavaScript frameworks, nor are they always applicable. But even when we don’t want to or can’t use them, there are some parts that are handy to have.

In this tutorial, Toptal Freelance JavaScript Developer Juan Carlos Arias Ambriz proposes a simple way to recapture some of the benefits of using JSX while working in vanilla JS.

8-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.

How to Do JWT Authentication With an Angular 6 SPA

JSON web tokens (JWTs) provide a method of authenticating requests that’s convenient, compact, and secure. More often than not, Angular apps will include them in their data flows.

In this tutorial, Toptal Freelance Software Engineer Sebastian Schocke shows how to implement JWT authentication in an Angular 6 single-page application (SPA), complete with a Node.js back-end.

13-minute readContinue Reading
Sebastian Schocke

Sebastian Schocke

Sebastian is a senior developer with 17 years of experience designing, developing, and supporting software on a wide range of technologies.

The Missing Article About Qt Multithreading in C++

C++ developers strive to build robust multithreaded applications, but multithreading was never an easy thing to do.

In this article, Toptal Freelance Qt Developer Andrei Smirnov talks about several scenarios exploring concurrent programming with the Qt framework.

10-minute readContinue Reading
Andrei Smirnov

Andrei Smirnov

Andrei has 15+ years working for the likes of Microsoft, EMC, Motorola, and Deutsche Bank on mobile, desktop, and web using C++, C#, and JS.

Haxe: Cross-platform Development’s Best-kept Secret

The modern, cross-platform programming language Haxe is well-known in some circles, yet many developers have never heard of it. Since it first appeared in 2005, it’s been battle-tested by its loyal—if rather quiet—following.

In this article, Toptal Freelance Software Engineer Kevin Bloch explores the Haxe ecosystem and how to transpile some sample code.

12-minute readContinue Reading
Kevin Bloch

Kevin Bloch

Kevin has 20+ years among full-stack, desktop, and indie game development. He lately specializes in PostgreSQL, JavaScript, Perl, and Haxe.

Introduction to HTTP Live Streaming: HLS on Android and More

Despite its age, HTTP Live Streaming (HLS) remains a widely used standard in adaptive bitrate video and a de-facto Apple alternative to MPEG-DASH.

In this tutorial, Toptal Java Developer Tomo Krajina explains what makes HLS tick and demonstrates how to create an HLS player in Android.

13-minute readContinue Reading
Tomo Krajina

Tomo Krajina

Tomo is a Java, Android, and Golang developer with 13+ years of experience. He has worked on telecom, and banking systems.

React Native Beginners Tutorial—A Cold Dive

The development of cross-platform mobile applications has always been a source of many challenges. Although tools like Apache Cordova and Haxe do solve some of the associated issues, they are still not the ideal solution in many cases. React Native changes that by providing the power of React.js for mobile platforms and a promise of consistent developer experience across multiple platforms.

15-minute readContinue Reading
Johannes Stein

Johannes Stein

Johannes is the author of two books and a highly skilled software architect specializing in JS, web tech, and cross-platform development.

Introduction to Python Microservices With Nameko

The microservices architectural pattern is an architectural style that is growing in popularity, given its flexibility and resilience.

In this article, Toptal Freelance Python Developer Guilherme Caminha will focus on building a proof of concept microservices application in Python using Nameko, a microservices framework.

12-minute readContinue Reading
Guilherme Caminha

Guilherme Caminha

Guilherme has a passion for challenges and building beautiful software. He is enthusiastic about learning, elegant solutions, and ideas.

A Vital Guide to Qmake

Qmake is a build system tool shipped with Qt library that simplifies the build process across different platforms.

In this guide, Freelance Qt Developer Andrei Smirnov describes the most useful qmake features and provides real-world examples for each of them.

9-minute readContinue Reading
Andrei Smirnov

Andrei Smirnov

Andrei has 15+ years working for the likes of Microsoft, EMC, Motorola, and Deutsche Bank on mobile, desktop, and web using C++, C#, and JS.

Styled-Components: CSS-in-JS Library for the Modern Web

While preprocessors like Sass and Less have made CSS development easier, there is still a lot to be desired in this modern age of web development.

In this article, Toptal Freelance JavaScript Developer Jeremy Davis explores styled-components—the niftiest CSS-in-JS library.

7-minute readContinue Reading
Jeremy Davis

Jeremy Davis

With his Master’s in CS, Jeremy specializes in front-end web apps using JavaScript frameworks and also Java and Node.js back ends.

Intro to Python Image Processing in Computational Photography

Computational photography is about enhancing the photographic process with computation. While we normally tend to think that this applies only to post-processing the end result (similar to photo editing), the possibilities are much richer since computation can be enabled at every step of the photographic process—starting with scene illumination.

In this article, Toptal OpenCV Expert Radu Balaban walks us through two examples of computational photography: low light and high dynamic range.

11-minute readContinue Reading
Radu Balaban

Radu Balaban

Radu is a veteran problem solver, with more than 15 years of industry experience. He is currently focusing on machine learning.

Python Multithreading and Multiprocessing Tutorial

Threading is just one of the many ways concurrent programs can be built. In this article, we will take a look at threading and a couple of other strategies for building concurrent programs in Python, as well as discuss how each is suitable in different scenarios.

15-minute readContinue Reading
Marcus McCurdy

Marcus McCurdy

Marcus is a talented programmer, and excels at back-end development. However, he is comfortable as a full stack developer.

Apache Cordova Tutorial: Developing Mobile Applications with Cordova

Mobile applications are creeping in. Developing for each mobile platform can be an exhaustive task, especially if resources are limited. This is where Apache Cordova comes in handy by providing a way to develop mobile applications using standard web technologies - HTML5, CSS3 and JavaScript. This article explores how one can get started with Apache Cordova and build mobile applications targeted at a wide range of mobile devices.

14-minute readContinue Reading
Filip Petkovski

Filip Petkovski

Filip is a software engineer with expertise in desktop, mobile, and full-stack web development. Currently a staff production engineer at Shopify, he has also held positions at enterprise software companies Personio and Red Hat. While earning a master’s degree in computer science from the University of Zagreb Faculty of Electrical Engineering and Computing, Filip was selected as a Google Summer of Code participant.

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.