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.
Sergei Peshkov
4 Go Language Criticisms

Go is quickly becoming one of the most popular languages: It currently ranks 19 in the TIOBE programming community index, and powers popular software like Kubernetes, Docker, and Heroku CLI. However, for all its simplicity, Go may still be missing some things.

In this article, Toptal Freelance Go Developer Sergei Peshkov shares his concerns about why Go is still far from perfect and how we can make it better.

Continue reading →
Amaury Martiny
One-click Login with Blockchain: A MetaMask Tutorial

Online users are becoming increasingly resistant to traditional email/password registration processes. One-click social logins via Facebook, Google, or GitHub are better, but they come with data privacy trade-offs.

This article introduces a one-click, cryptographically-secure login flow using MetaMask, with all data stored on the app’s own back-end.

Continue reading →
Michael Karchevsky
Machine Learning Video Analysis: Identifying Fish

Machine learning, combined with some standard image processing techniques, can result in powerful video analysis tools.

In this article, Toptal Freelance Software Engineer Michael Karchevsky walks through a solution for a machine learning competition that identifies the species and lengths of any fish present in a given video segment.

Continue reading →
Marko Mišura
The Comprehensive Guide to JavaScript Design Patterns

As a good JavaScript developer, you strive to write clean, healthy, and maintainable code. While you solve interesting and unique challenges, you’ve likely found that you’re often writing code that looks similar to the code for an entirely different problem you’ve handled before. You may not know it, but you’ve used a design pattern.

Continue reading →
Son Nguyen Kim
Python Logging: An In-Depth Tutorial

As applications become more complex, having good logs can be very useful, not only when debugging but also to provide insight in application issue/performance.

The Python standard library comes with a logging module that provides most of the basic logging features and is very handy but contains some quirks that can cause hours of headaches

Continue reading →
Mikhail Angelov
Integration and End-to-end Tests Made Easy with Node.js and MongoDB

Dealing with a real database for integration and end-to-end testing can pose some challenges. One way of working around them is to use an in-memory database that integrates well with the testing framework and provides APIs to manipulate its state from test code.

In this article, Toptal Freelance Software Engineer Mikhail Angelov shows how you can write integration and end-to-end tests easily for your Node.js and MongoDB application without having to write complicated setup/teardown code.

Continue reading →
Ivan Pavlov
Database Migrations: Turning Caterpillars into Butterflies

For a large codebase, managing database schema can become tedious, especially if you maintain multiple testing environments or customers that update the product at different paces. Sometimes, documenting the latest schema or database changes isn’t enough.

In this article, Toptal Database Engineer Ivan Pavlov introduces us to concepts that help manage database states.

Continue reading →
Vlad Miller
Exploring Supervised Machine Learning Algorithms

While machine learning sounds highly technical, an introduction to the statistical methods involved quickly brings it within reach. In this article, Toptal Freelance Software Engineer Vladyslav Millier explores basic supervised machine learning algorithms and scikit-learn, using them to predict survival rates for Titanic passengers.

Continue reading →
Fahad Munawar
Salesforce Einstein AI: An API Tutorial

Non-Salesforce app developers may be overlooking a hidden gem in the AI world: Salesforce Einstein offers image recognition and text analysis for plain-vanilla apps and Salesforce apps alike. In this article, Toptal Freelance Salesforce Developer Fahad Munawar Khan shows how any any developer can leverage Einstein Vision and Einstein Language.

Continue reading →
Orban Botond
Field-level Rails Cache Invalidation: A DSL Solution

Fragment caching in Rails provides an easy yet a powerful way of improving your application’s performance. However, some real-world scenarios do not work quite well with how the Rails cache behaves by default.

In this article, Toptal Ruby on Rails Developer Orban Botond shows how you can implement a small DSL to optimize how the cache for related entities is invalidated to improve template rendering performance.

Continue reading →
Anton Goncharov
Streamline Software Integration: An Apache Camel Tutorial

Designing systems integration architecture can be a difficult task. And it gets worse if you’re designing for software at scale. An enterprise service bus can be one way of working around the challenges. But this is definitely not the simplest of solutions.

In this article, Toptal Freelance Software Engineer Anton Goncharov gives us a detailed overview of the challenges of systems integration and a guide to addressing those challenges with Apache Camel.

Continue reading →
Nathan Finch
Don't Repeat Yourself: Automating Repetitive Tasks with WP-CLI

In a recent project, there were several programmatic tasks I needed to repeat periodically. One task in particular involved updating user-level permissions based on evidence of membership level purchase or subscription.

Instead of going into the admin panel and manually deleting hundreds (maybe thousands) of subscriptions, I opted to reach for one of my favorite WordPress tools: WP-CLI, which fixed the problem in a few keystrokes.

Continue reading →
Fahad Munawar
No-Fuss AI for Your App: Meet Salesforce Einstein

The AI revolution is transforming the consumer world. Some developers may shy away from AI, which has traditionally been a heavily technical specialty. In this article, Toptal Freelance Salesforce Developer Fahad Munawar Khan explores how accessible to developers the AI cloud has become, even for non-Salesforce apps, with Salesforce Einstein.

Continue reading →
Subscribe
Free email updates
Get the latest content first.
No spam. Just great articles & insights.
Free email updates
Get the latest content first.
Thank you for subscribing!
Check your inbox to confirm subscription. You'll start receiving posts after you confirm.