Toptal Engineering Blog

The Toptal Engineering Blog is a hub for in-depth development tutorials and new technology announcements created by professional freelance software engineers in the Toptal network.
Subscribe for daily updates today and check out the wealth of technical resources published by the Toptal network.
Dusan Simonovic
Get Started With Microservices: A Dropwizard Tutorial

Dropwizard allows developers to quickly bootstrap their projects and package applications as easily deployable standalone services. It also happens to be relatively simple to use and implement.

In this tutorial, Toptal Freelance Software Engineer Dusan Simonovic will introduce you to Dropwizard and demonstrate how you can use this powerful framework to create RESTful web services with ease.

Continue reading →
Luke Sapan
Ramping up Software Deployment - A Docker Swarm Tutorial

Docker itself has been around for years and is composed of many inter-operating pieces. One of them is Docker Swarm, which allows you to declare your applications as stacks of services, and let Docker handle the rest.

In this article, Toptal Freelance Software Engineer Luke Sapan explains how to use Docker Swarm to deploy your own self-managing stack, followed by a quick example.

Continue reading →
Alexey Saenko
Spring Batch Tutorial: Batch Processing Made Easy with Spring

Spring Batch is a lightweight, comprehensive framework designed to facilitate the development of robust batch applications. It’s easy to set up, and even easier to use.

In this article, Toptal Freelance Software Engineer Alexey Saenko explains the programming model and the domain language of batch applications, using detailed code examples that should help any developer looking to get a head start in Spring Batch.

Continue reading →
Rico Mossesgeld
Eight CSS Tips for Advanced Layouts and Effects

Knowledge of CSS is a fundamental skill in the web development space. However, implementing certain web design patterns with just CSS can be a frustrating task, and often requires an in-depth understanding of it.

In this article, Toptal Freelance Web Developer Rico Mossesgeld shares several CSS tips and tricks that take advantage of lesser known CSS features to solve real layout and design problems.

Continue reading →
Raul Jimenez Herrando
Building an Angular Video Player with Videogular

Video accounts for more than three quarters of all bandwidth used today. That’s why developers need a solid, extensible, and advanced media framework that doesn’t come with a steep learning curve.

In this tutorial, Toptal Freelance Software Engineer Raul Jimenez will introduce you to one such framework – Videogular. If you need to harness the power of Angular for HTML5 video, look no further.

Continue reading →
Gilad Haimov
Android DDMS: A Guide to the Ultimate Android Console

There is no way around application diagnostics. No matter how good your code is, you will need to be able to monitor and study system behavior. This is where Android’s DDMS shines.

In this article, Senior Android Engineer Gilad Haimov explains how veteran Android developers leverage the potential of DDMS to improve app stability and performance, test new features, diagnose, and debug their code.

Continue reading →
William Wang
Efficient React Components: A Guide to Optimizing React Performance

Why does a React web app run slow? The answer often lies in when and how frequently your components re-render, and whether those re-renders were even necessary. React doesn’t promise magical performance gains, but it provides just the right tools and functionalities to make it easy.

In this article, Toptal Freelance Software Engineer William Wang walks us through some optimization techniques that can help you build performant React web apps.

Continue reading →
Hanee' Medhat
Apache Spark Streaming Tutorial: Identifying Trending Twitter Hashtags

Social networks are among the biggest sources of data today, and this means they are an extremely valuable asset for marketers, big data specialists, and even individual users like journalists and other professionals. Harnessing the potential of real-time Twitter data is also useful in many time-sensitive business processes.

In this article, Toptal Freelance Software Engineer Hanee’ Medhat explains how you can build a simple Python application to leverage the power of Apache Spark, and then use it to read and process tweets to identify trending hashtags.

Continue reading →
Daan Terra
Virtual Reality in the Automotive Industry

From virtual showrooms to elaborate research and testing scenarios, virtual reality is starting to make its mark on the automotive industry. It can be used to educate novice drivers, train professionals operating industrial equipment, or test vehicles and drivers in extreme conditions.

In this article, Toptal Freelance Software Engineer Daan Terra shares his experiences in the field of automotive simulations, explaining how VR can fundamentally change the way cars are marketed, tested, and developed.

Continue reading →
Adnan Ademovic
3D Graphics: A WebGL Tutorial

Whether you just want to create an interactive 3D logo, on the screen or design a fully fledged game, knowing the principles of 3D graphics rendering will help you achieve your goal.

In this article, Toptal Freelance Software Engineer Adnan Ademovic gives us a step-by-step tutorial to rendering objects with textures and lighting, by breaking down abstract concepts like objects, lights, and cameras into simple WebGL procedures.

Continue reading →
Timofey Nevolin
Eight Rules for Effective Software Production

While working at different stages of the software development lifecycle you often realize that software production isn’t easy. It takes consistent effort to make something great. However, it doesn’t have to come at the cost of working through nights or weekends.

In this article, Toptal Freelance Software Engineer Timofey Nevolin shares eight simple, yet powerful rules for effective software production.

Continue reading →
Brad Peabody
Server-side I/O Performance: Node vs. PHP vs. Java vs. Go

Understanding the Input/Output (I/O) model of your application can mean the difference between an application that deals with the load it is subjected to, and one that crumples in the face of real-world uses cases. Perhaps while your application is small and does not serve high loads, it may matter far less. But as your application’s traffic load increases, working with the wrong I/O model can get you into a world of hurt.

Continue reading →
Vivek Khatri
How to Create Custom Magento 2 Widgets

Widgets play a pivotal role in Magento development, as they’re often used to display targeted content and provide crucial front-end functionality. Magento 2 offers a lot of widget possibilities out of the box, and also allows developers to unlock more features using custom widgets.

In this article, Toptal Freelance Software Engineer Vivek Khatri provides an overview of widget implementation in Magento 2, starting with the basics and culminating in custom widget design.

Continue reading →
Daniel Angel Muñoz Trejo
How C++ Works: Understanding Compilation

Compilation and linking are two very fundamental processes that happen all the time during C++ software development. However, what happens during these processes? How does the compiler go from your neatly organized source code to a binary file that the machine understands?

In this article, Toptal Freelance Software Engineer Daniel Trejo explains how a C++ compiler works with some of the basic language constructs to answer some common questions that are related to these processes.

Continue reading →
Emran Bajrami
Building Cross-platform Apps with Xamarin: Perspective of an Android Developer

Writing reusable code that can be shared across multiple platforms can make developing mobile applications a lot easier. But, how do you do that without paying the usual cost of maintainability, ease of testing, and poor user experience that comes with cross-platform mobile application development?

In this article, Toptal Freelance Software Engineer Emran Bajrami walks us through Xamarin and shows us techniques for building high-quality cross-platform apps.

Continue reading →
Josip Šaban
SQL Server 2016 Always Encrypted: Easy to Implement, Tough to Crack

Security has always been a primary concern for database experts, and with the advent of new, decentralized services, it’s become even more crucial. Microsoft addressed the need for an added level of security in SQL with the introduction of Always Encrypted functionality in SQL Server 2016.

In this blog post, Toptal Freelance Software Engineer Josip Saban explains how Microsoft’s Always Encrypted concept works, how it’s implemented, and why developers can’t afford to ignore it.

Continue reading →
Juan Pablo Carzolio
A Guide to Consistent Hashing

Consistent Hashing is a distributed hashing scheme that operates independently of the number of servers or objects in a distributed hash table. It powers many high-traffic dynamic websites and web applications.

In this tutorial, Toptal Freelance Software Engineer Juan Pablo Carzolio will walk us through what it is and how hashing, distributed hashing and consistent hashing work.

Continue reading →
Subscribe
The #1 Blog for Engineers
Get the latest content first.
No spam. Just great engineering posts.
The #1 Blog for Engineers
Get the latest content first.
Thank you for subscribing!
Check your inbox to confirm subscription. You'll start receiving posts after you confirm.