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.

Swift Tutorial: An Introduction to the MVVM Design Pattern

On every new project, you have the privilege of deciding how you’ll architect the app and organize the code. But if you don’t pay attention, or you rush through coding, you risk ending up with spaghetti code. The solution? Use a proper design pattern.

In this tutorial, Toptal Software Engineer Dino Bartošak explains how to implement an MVVM design pattern on a demo Swift application.

20-minute readContinue Reading
Dino Bartošak

Dino Bartošak

Dino is a software engineer specializing in iOS programming clean code and clean architecture, building iOS apps from scratch and custom UI.

A Beginner’s Guide to Managing Software Development With Kanban and Trello

While the success of your project depends on many factors, one of the most common reasons projects fail is a lack of management or downright bad project management.

In this post, Lead Engineering Editor Demir Selmanovic teaches you the basics of Agile project management using Kanban and Trello.

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.

World-class articles, delivered weekly.

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

Time Management Secrets of an Efficient Engineer

Freelancers work flexible hours, but this convenience comes at a price: They have to manage their time better than on-site professionals. However, it also means they’re free to optimize their routine and achieve exceptional efficiency.

In this post, software engineer Dmitry Ryazantsev will guide you through the ins and outs of personal time management, leaving little to chance. What good are great rates if you waste hours each week?

13-minute readContinue Reading
Dmitry Ryazantsev

Dmitry Ryazantsev

Dmitry’s Android dev experience includes work on the Yandex browser (10M+ installs) and creating his own game, which has 250,000 installs.

Meet Phoenix: A Rails-like Framework for Modern Web Apps on Elixir

In back-end software development, increased productivity often comes at the cost of performance. In this article, Toptal Software Engineer Eduardo Bautista shows us how the Phoenix framework builds on the familiar concepts from the Rails world, and makes it even easier to build robust concurrent applications without compromising performance.

9-minute readContinue Reading
Eduardo Bautista

Eduardo Bautista

Eduardo worked for several successful startups, and has extensive experience with international clients, including enterprise clients.

Immutability in JavaScript Using Redux

In an ever growing ecosystem of rich and complicated JavaScript applications, there’s more state to be managed than ever before: the current user, the list of posts loaded, etc.Managing state can be hard and error prone, but immutability and Redux- a predictable state container for JavaScript apps- can help significantly.

In this article, Toptal Programmer David Xu talks about managing state using immutability with Redux, a predictable state container.

11-minute readContinue Reading
David Xu

David Xu

David has taken several mobile apps from an idea to millions of users worldwide as the Chief Architect of Castle Global, Inc.

A Guide to Managing Webpack Dependencies

The Webpack module bundler processes JavaScript code and all static assets, such as stylesheets, images, and fonts. However, configuring Webpack and its dependencies can be cumbersome and not always a straightforward process, especially for beginners.

In this article, Toptal Software Engineer Andrej Gajdos provides a guide with examples on how to configure Webpack for different scenarios and points out the most common pitfalls connected to project dependencies and their bundling when using Webpack.

9-minute readContinue Reading
Andrej Gajdos

Andrej Gajdos

With a Master’s degree in Service Science, Management, and Engineering, Andrej works on projects of all sizes for clients around the world.

How to Build a Multilingual App: A Demo With PHP and Gettext

Making your website or web app available to a wider audience often requires it to be available in multiple languages. For non-English projects, you can increase your audience by releasing it in English as well as your native language. Internationalizing and localizing your project, however, becomes a much easier process if you start during its infancy.

In this article, Toptal Software Engineer Igor Gomes dos Santos shows us how to leverage simple tools, like Gettext and Poedit, to internationalize and localize a PHP project.

16-minute readContinue Reading
Igor Santos

Igor Santos

With a big eye on UI/UX, Igor is a developer with strong PHP background (10+ years), moving into JS-land for more interactive experiences.

Realm Is the Best Android Database Solution

Since the inception of the platform, Android developers have had pretty much only one option for a database: SQLite. Although feature-rich and powerful, it wasn’t quite what Android app developers needed. Realm, a modern, efficient database solution for mobile platforms, turned out to be an amazing replacement for SQLite on Android.

In this article, Toptal Software Engineer Mateus Gondim Romão Batista explains why you should use Realm for your next Android application.

11-minute readContinue Reading
Mateus Gondim Romão Batista

Mateus Gondim Romão Batista

With nearly a decade of Java experience, Mateus (BCompSc) has done web projects using Python, Django, and JS, lately focusing on Android.

PostCSS: Sass’s New Play Date

PostCSS is the hot new tool that’s making the rounds on the front-end side of web development. It has been quickly and widely adopted, and possibly will have a significant impact on how we base our present-day CSS.

In this article, Toptal Software Engineer Nicolás J. Engler introduces us and guides us on how to start using this tool, expand it with plugins, or integrate with other CSS processors, task runners, or bundlers.

8-minute readContinue Reading
Nicolás J. Engler

Nicolás J. Engler

Nicolás is a product designer with a proven background creating and developing both physical and digital experiences.

Make Your Web Front-end Reliable with Elm

If you’ve spent your fair share of time developing web front-ends, you know that no amount of libraries and plugins are sufficient enough to make the development experience pleasant. Unpredictable event chains, complex data binding, and lack of structured data modeling only makes things worse.

Elm, a programming language built for front-end development, cuts to the root of all these problems and solves them there.

In this post, Toptal Software Engineer Stanislav Davydov provides a detailed guide to Elm and shows us how The Elm Architecture solves some of the most fundamental challenges of front-end development.

17-minute readContinue Reading
Stas Davydov

Stas Davydov

Stanislav’s 18+ years in organizations of all sizes have focused on eCommerce, complex web services, friendly UI, and data mining/scraping.

The Art of Building Self-service Admin Areas

Software is regular and predictable, so it seems paradoxical that practically every web app needs a sizable administrative area. The explanation for this paradox lies in software’s interaction with humans. While you probably can’t build a fully automated system, there’s a lot you can do to save time and money.

In this post, Entrepreneur Jack Kinsella explains what you can do to streamline administration, thus saving valuable time and making your projects more profitable. Adminimisation is the word of the day!

16-minute readContinue Reading
Jack Kinsella

Jack Kinsella

Jack has a background in law and is currently interested in probability, algorithmic education and blockchain.

Don't Hate WordPress: 5 Common Biases Debunked

Today, WordPress covers more than 50 percent of website shares and serves nearly 60 million websites worldwide. Its popularity has resulted in many misconceptions that have grown and spread like a forest fire, and have made people stay away from WordPress.

In this post, Toptal Software Engineer Donald Mudenge explains the five most common WordPress taboos and myths, clarifies them, and offers solutions on how to overcome them.

7-minute readContinue Reading
Donald Mudenge

Donald Mudenge

As a wordpress developer, Donald’s main focus is understanding project requirements and providing the best solution to the problems.

A Node.js Guide to Actually Doing Integration Tests

Your software isn’t fully tested until you write integration tests for it. While unit tests help ensure that functions are properly written, integration tests help ensure that the system is working properly as a whole.

In this article, Toptal Software Engineer Luka Blažecki uses Node.js to explain why integration testing is important for every development platform and how to write clean, composable integration tests.

10-minute readContinue Reading
Luka Blažecki

Luka Blažecki

Luka (MCS) is a team leader focused on back-end solutions that scale. He’s fluent in Node.js, SQL, and NoSQL databases as well as AWS.

The Ultimate Guide to Building a WordPress Plugin

WordPress plugins can be both a blessing and a curse. With more than 45,000 plugins available in its official repository, WordPress users can customize their website to their heart’s content. However, not all plugins follow the standards necessary to keep the platform performant and secure while also delivering a solid user experience.

In this tutorial, Toptal Software Engineer Ratko Solaja shows us how to build a robust WordPress plugin, following all the necessary best practices.

18-minute readContinue Reading
Ratko Solaja

Ratko Solaja

Ratko enjoys creating compelling websites that excite users. He is a regular WordCamp and WordPress Metup speaker.

How to Make an Android and iOS App in C# on Mac

In the past few years, Microsoft has pulled a few aces from up its sleeve. Yes, they messed up Skype, failed with smartphones, and almost succeeded with tablets. But they did some really amazing things as well.

Relinquishing their closed empire approach, they open-sourced .NET, joined the Linux Foundation, released SQL Server for Linux, and created this great new tool called Visual Studio for Mac.

In this post, Head of Open Source Demir Selmanovic details how to make an Android and iOS app in C# on your Mac.

9-minute readContinue Reading
Demir Selmanovic

Demir Selmanovic

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

The Definitive Guide to NoSQL Databases

Limited SQL scalability has prompted industry leaders like Google and Amazon to develop NoSQL database management systems that optimize for performance, reliability, and consistency. In this article, Senior Software Engineer Mohammad Altarade explores some of the most popular NoSQL database options on the market and explains why this paradigm for storing and retrieving data will be with us for years to come.

16-minute readContinue Reading
Mohammad Altarade

Mohammad Altarade

Mohammad is an engineer and data scientist working at the intersection of software and hardware. As a senior .NET engineer at ProGineer Technologies, he wrote complex SQL queries to retrieve big data, and developed statistical analysis and interactive visualization reports. He has extensive experience with yield management systems and fault detection and classification in semiconductor manufacturing.

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.