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

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.

World-class articles, delivered weekly.

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

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.

The Advanced Guide to Optimizing WordPress Performance

WordPress, one of the most popular publishing platforms, has stood the test of time and now powers a significant portion of the web. Sadly, its reputation is plagued by claims of poor performance and complexity with scaling. However, the root causes of such performance issues are often bad code and poorly implemented plugins and themes.

In this post, Toptal Software Engineer Martín Di Felice shares tips and tricks for WordPress developers who want to build better plugins and themes and destroy the notion that WordPress is a slow platform.

9-minute readContinue Reading
Martín Di Felice

Martín Di Felice

Martin is a full-stack developer with nine years of experience in Wordpress and back-end development projects.

Build Sleek Rails Components With Plain Old Ruby Objects

Your website is gaining traction, and you are growing rapidly. Ruby/Rails is your programming language of choice. Your team is bigger and you’ve given up on “fat models, skinny controllers” as a design style for your Rails apps. However, you still don’t want to abandon using Rails? No problem.

In this article, Toptal Software Engineer Eqbal Quran explains how you can decouple and isolate your Rails components using nothing Plain Old Ruby Objects. Ruby objects and abstractions can decouple concerns, simplify testing, and help you produce clean, maintainable code.

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

Use Magento If You’re Serious About E-commerce

You’ve heard that Magento is the eCommerce platform to use if you’re serious about your business – and you’re serious about your business – so you’ve decided on Magento. But do you know what you’re getting into?

In this post, Toptal Software Engineer Andrew Hughes walks us through the difference between WordPress WooCommerce and Magento. While Magento is the expert’s eCommerce platform of choice, it’s not always the right solution, depending on your client.

8-minute readContinue Reading
Andrew Hughes

Andrew Hughes

Andrew has 15+ years in full-stack, integration, and mobile development. He also wrote a custom word processor, then two novels with it.

A Data Engineer’s Guide To Nontraditional Data Storages

With the rise of big data and data science, storage and retrieval have become a critical pipeline component for data use and analysis. Recently, new data storage technologies have emerged. But the question is: Which one should you choose? Which one is best suited for data engineering?

In this article, Toptal Data Scientist Ken Hu compares three prominent storage technologies within the context of data engineering.

7-minute readContinue Reading
Ken Hu

Ken Hu

Ken is a Python expert. He focuses on data and machine learning, microservices, data analytics, natural language processing, and AI.

An Introduction to Protocol-oriented Programming in Swift

Most modern programming languages, in the hopes of enhanced maintainability and reusability of code, offer some constructs that help the developer keep the definition of behavior and its implementation separate.

Swift takes the idea of interfaces a step further with protocols. With protocols and protocol extensions, Swift allows developers to enforce elaborate conformity rules without compromising the expressiveness of the language.

In this article, Toptal Software Engineer Alexander Gaidukov explores Swift protocols and how protocol-oriented programming can improve the maintainability and reusability of your code.

9-minute readContinue Reading
Aleksandr Gaidukov

Aleksandr Gaidukov

Alexander has 9+ of experience in developing applications and over 5+ with the iOS platform (iPhone and iPad).

The Zen of devRant

Let’s face it: Sometimes you just need to rant. Fortunately, there’s an app for that. It’s called devRant, and it’s the place for developers to vent about clients from hell, non-technical friends and family, and clueless recruiters.

In this roundup, devRant Co-Founder David Fox shares his favorite collection of rants since launching. Some will make you laugh. Others will make you laugh so hard you cry. And just about all of them will make you empathize with the author.

12-minute readContinue Reading
David Fox

David Fox

David is an experienced Web Developer and Big Data Engineer specializing in building big data solutions with graph databases and Hadoop.

To Designers With Love (A Letter From a Front-end Developer)

If you’re a veteran frontender, you’ve probably had some not-so-great experiences with designers, and chances are some designers have had an equally bad experience working with you. How can you make sure you get exactly what you need from your designer, without placing an undue burden on them?

It’s a tall order, but in this article Freelance Software Engineer Vedran Aberle Tokic outlines and addresses a number of potential issues that may become roadblocks for your execution. Implementing these suggestions may result in overhead for designers, but they can save enormous amounts of time and headache elsewhere.

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

How to Isolate Client-Server Interaction Logic in iOS Applications

Client-server interactions play a vital role in most modern mobile applications. By leveraging available back-end services, these mobile applications can provide some really amazing functionalities. However, as mobile applications grow complex, it becomes essential to keep the networking module as clean and maintainable as possible - separated from the rest of the application logic.

In this article, Toptal freelance software engineer Alexander Gaidukov walks us through the design of a simple networking module that allows your iOS application to interact with RESTful APIs.

11-minute readContinue Reading
Aleksandr Gaidukov

Aleksandr Gaidukov

Alexander has 9+ years of experience in developing applications and more than five years with the iOS platform (iPhone and iPad).

An HDFS Tutorial for Data Analysts Stuck with Relational Databases

The Hadoop Distributed File System (HDFS) is a scalable, open-source solution for storing and processing large volumes of data. With its built-in replication and resilience to disk failures, HDFS is an ideal system for storing and processing data for analytics.

In this step-by-step tutorial, Toptal Database Developer Dallas H. Snider details how to migrate existing data from a PostgreSQL database into the more efficient HDFS.

10-minute readContinue Reading
Dallas H. Snider

Dallas H. Snider

Dallas has 22 years of database application development experience. He has worked with SQL servers & Oracle, in both Windows & Linux.

A Comprehensive Introduction To Your Genome With the SciPy Stack

Genome data is one of the most widely analyzed datasets in the realm of Bioinformatics. The SciPy stack offers a suite of popular Python packages designed for numerical computing, data transformation, analysis and visualization, which is ideal for many bioinformatic analysis needs.

In this tutorial, Toptal Software Engineer Zhuyi Xue walks us through some of the capabilities of the SciPy stack. He also answers some interesting questions about the human genome, including: How much of the genome is incomplete? How long is a typical gene?

23-minute readContinue Reading
Zhuyi Xue

Zhuyi Xue

Zhuyi is a skilled Python developer with over seven years of experience. He is also proficient in JavaScript and Scala.

The Mistakes Most Swift Developers Don't Know They're Making

Swift is the new programming language created to be a modern replacement for Objective-C in iOS and OS X application development. In general, a skilled Swift developer is usually someone who is already experienced with Objective-C, and that, among other things, might lead them to write Swift code using Objective-C best practices, which can cause some bad mistakes.

In this article, Toptal Freelance Software Engineer Nilson Souto outlines the most common mistakes Swift developers should be aware of.

10-minute readContinue Reading
Nilson Souto

Nilson Souto

Nilson (dual BCS/BScTech) been an iOS dev and 2D/3D artist for 8+ years, focusing on physics and vehicle simulations, games, and graphics.

An Overly Thorough Guide to Underused Android Libraries

Any experienced developer will tell you that their best code isn’t code they wrote. It’s code they took from someone else’s work. Many of the problems we encounter have already been solved—and the remedies packaged into libraries available to anyone. Why reinvent the wheel when free wheels are everywhere?

In this guide, Senior Android Engineer Gilad Haimov will take you on a quick tour of some the most powerful Android libraries out there. Robust as a hammer, faster than a drill, and more precise than any scalpel; no Android developer should leave home without these must-have tools.

14-minute readContinue Reading
Gilad Haimov

Gilad Haimov

Gilad has years of experience in developing Android applications, server-side programs, and communication systems.

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.