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

Responsive Design Is Not Enough, We Need Responsive Performance

Between square inch smart wristwatches and mammoth smart TVs, a responsive website capable of adapting to a wide array of screen sizes and device capabilities is something no one complains about. However, many websites are still plagued by desktop-first design paradigms, or mobile-first paradigms with absolutely no focus on performance. These traditional approaches to responsive web design have various shortcomings. Fortunately, some simple ideas can help solve these problems.

8-minute readContinue Reading
Vedran Aberle Tokić

Vedran Aberle Tokić

With over two decades in full-stack development, Vedran’s a JavaScript veteran who loves to problem-solve user interfaces.

Is Developing For Car Infotainment Systems like Android Auto and Apple Carplay the Next Big Thing?

Cars with next-generation connected infotainment systems will create new opportunities on several fronts. In case you already have an infotainment system with a neat touchscreen and GPS in your car, please accept my condolences; it’s about to become as obsolete as a Nokia 3310 compared to an iPhone.

13-minute readContinue Reading
Nermin Hajdarbegovic

Nermin Hajdarbegovic

As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.

World-class articles, delivered weekly.

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

Why You Need to Upgrade to Java 8 Already

The newest version of the Java platform, Java 8, was released more than a year ago. Many companies and developers are still starting new applications with old versions of Java. There are very few good reasons to do this, because Java 8 has brought some important improvements to the language. I’ll show you a handful of the most useful and interesting ones.

10-minute readContinue Reading
Eduard Grinchenko

Eduard Grinchenko

Eduard (MCE) is a talented Java engineer with rich expertise in OOP analysis. He’s worked the whole SDLC, from design to maintenance.

Cryptocurrency for Dummies: Bitcoin and Beyond

Bitcoin created a lot of buzz on the Internet. It was ridiculed, it was attacked, and eventually it was accepted and became a part of our lives. However, Bitcoin is not alone. At this moment, there are over 700 AltCoin implementations, which use similar principles of CryptoCurrency.

10-minute readContinue Reading
Demir Selmanovic

Demir Selmanovic

Demir is a developer and project manager with over 15 years of professional experience in a wide range of software development roles.

Getting Started With Docker: Simplifying DevOps

Docker, an open source tool, has changed the way we think about deploying applications to servers. By leveraging some amazing resource isolation features of the Linux kernel, Docker makes it possible to easily isolate server applications into containers, control resource allocation, and design simpler deployment pipelines. Moreover, Docker enables all of this without the additional overhead of full-fledged virtual machines.

10-minute readContinue Reading
Radek Ostrowski

Radek Ostrowski

Radek is a blockchain engineer with an interest in Ethereum smart contracts. He also has extensive experience in machine learning.

Building an MVC Application With Spring Framework: A Beginner’s Tutorial

The Spring Framework is a powerful, feature-rich, and well-designed framework for the Java platform. It offers a collection of programming and configuration models that aim to simplify and streamline the development process of robust and testable applications in Java. In this article, Toptal engineer Stefan Varga challenges the popular notion of Java as a complicated platform for simple needs, and walks us through a step by step tutorial to building a simple MVC application with the Spring Framework and JPA.

7-minute readContinue Reading
Stefan Varga

Stefan Varga

Stefan is a qualified software developer with a computer science degree and nearly a decade of experience in the tech industry.

Unity With MVC: How to Level Up Your Game Development

In this article I’ll relate my experience with the popular Unity game development platform and the Model-View-Controller (MVC) pattern for game development. In my seven years of development, having wrestled with my fair share of game dev spaghetti, I’ve been achieving great code structure and development speed using this design pattern.

14-minute readContinue Reading
Eduardo Dias da Costa

Eduardo Dias da Costa

Eduardo is a developer with 12+ years of experience focused on client and front-end applications. He is always open to learning new things.

Digital Nomads Can Manage Teams, And Manage To See The World

Some people like the known and predictable. They freak out when their daily routine gets disrupted. But, I’ll bet if you are doing any kind of creative work like programming or design, you are not one of those people. Ordinary day-to-day office work will kill you. It will eventually strip your motivation, creativity or flare for what you do.

8-minute readContinue Reading
Lora Plesko

Lora Plesko

Lora has over 10 years of experience in IT as UX designer, business analyst, project manager, and QA.

Simplifying RESTful API Use and Data Persistence on iOS with Mantle and Realm

A large number of modern mobile applications interact with web services in one way or another, and iOS applications are no different. Mantle (a model framework) and Realm (a mobile database) come with the promise of simplifying some of the hurdles in consuming web services through RESTful APIs and persisting data locally. In this article, Toptal engineer Marcin Kmiec shows how to build a simple iOS application using Mantle and Realm and demonstrates how this approach helps to eliminate a large amount of boilerplate code.

13-minute readContinue Reading
Marcin Kmiec

Marcin Kmiec

With several important research papers published, Marcin’s put his PhD in computer vision to use developing C++/Objective-C/Swift apps.

Choosing The Best Headphones For Developers

Even if you have a brand new notebook and a flagship smartphone, you should not rely on stock hardware for professional voice calls. It’s simply not good enough; otherwise there would be no aftermarket audio industry to begin with.

12-minute readContinue Reading
Nermin Hajdarbegovic

Nermin Hajdarbegovic

As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.

OpenGL Tutorial for Android: Building a Mandelbrot Set Generator

OpenGL, a cross-platform API for rendering 2D and 3D graphics, is extremely powerful and yet surprisingly easy to get started with. Although one may find the most common applications of OpenGL and rendered graphics in video games only, in reality there are far more uses. To demonstrate the power of OpenGL, we’ll be building a Mandelbrot set generator on Android using OpenGL ES.

12-minute readContinue Reading
Asa Kaplan

Asa Kaplan

Asa is a computer science and math graduate with 6+ years of experience using Java, Python, and C++. He likes to work on machine learning.

After All These Years, the World Is Still Powered by C Programming

Despite the prevalence of higher-level languages, the C programming language continues to empower the world. There are plenty of reasons to believe that C programming will remain active for a long time. Here are some reasons that C is unbeatable, and almost mandatory, for certain applications.

12-minute readContinue Reading
Daniel Munoz

Daniel Munoz

Daniel has created high-performance applications in C++ for large companies such as Dreamworks. He also excels with C and ASM (x86).

Google Cloud Source Repositories vs. Bitbucket vs. GitHub: A Worthy Alternative?

Google’s new cloud code platform does not appear to be taking on GitHub head on. Instead, Cloud Source Repositories (CSR) will allow users to connect to repositories hosted on GitHub or Bitbucket. However, everything is automatically synced to the Google Cloud Source Repository.

The good news is that a Google CSR can be connected to another Git repository hosted on GitHub or Bitbucket. All changes will be synchronised on both platforms, as you can set Google CSR to automatically mirror from GitHub and Bitbucket.

8-minute readContinue Reading
Nermin Hajdarbegovic

Nermin Hajdarbegovic

As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.

Android Customization: How to Build a UI Component That Does What You Want

It is not uncommon for developers to find themselves in need of a UI component that is either not provided by the platform they are targeting or is, indeed, provided, but lacks a certain property or behavior. The answer to both scenarios is a custom UI component. The Android UI model is inherently customizable, offering the means to create custom UI components in various ways.

11-minute readContinue Reading
Ahmed Alamir

Ahmed Alamir

Ahmed is an Android expert with a passion for intuitive user experience and snappy app performance.

CSS Layout Tutorial: From Classic Approaches to the Latest Techniques

Mastering CSS is an absolute necessity for any solid web designer or developer. This tutorial walks you through the fundamentals of CSS layout principles, from classic CSS2 techniques to the latest approaches in CSS3. Learn more about how to leverage all that CSS has to offer in order to optimize both the user’s experience and the quality of your code.

16-minute readContinue Reading
Laureano Martin Arcanio

Laureano Martin Arcanio

Laureano is a web developer and designer with a variety of skills gained over the last 15 years, working with clients such as Intel.

8 Reasons Why Microsoft Stack Is Still a Viable Choice

In today’s world where there are a lot of choices for writing quality software, it’s easy to overlook some tools that are viable options in developing modern software. These software development tools, in competition with each other, often fluctuate in popularity and developer preferences. Many excellent tools are viable options for any given project. This article provides eight reason in favor of the Microsoft stack and why it is still a reasonable choice for software development today.

8-minute readContinue Reading
Eugene Tsygankov

Eugene Tsygankov

Eugene has a bachelor’s degree in MIS and over two decades of experience. He develops scalable and fault-tolerant full-stack solutions.

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.