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

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.

World-class articles, delivered weekly.

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

OpenCV Tutorial: Real-time Object Detection Using MSER in iOS

Detecting objects of interest in images has always been an interesting challenge in the realm of computer vision, and many approaches have been developed over recent years. As mobile platforms are becoming increasingly powerful, now is the perfect opportunity to develop interesting mobile applications that take advantages of these algorithms. This article walks us through the process of building a simple iOS application for detecting objects in images.

8-minute readContinue Reading
Altaibayar Tseveenbayar

Altaibayar Tseveenbayar

With a master’s degree in AI and 6+ years of professional experience, Altaibayar does full-stack and mobile development with a focus on AR.

Straightforward React UI Testing

Using React.js props your application’s front-end. In particular, testing user interactions and viewing renderings is vastly improved with React UI testing.

10-minute readContinue Reading
Swizec Teller

Swizec Teller

Swizec Teller is an author whose work has supported tens of thousands of engineers at Uber, Oracle, Apple and other prominent companies.

Ultimate In-memory Data Collection Manipulation with Supergroup.js

In-memory data collection manipulation is something that we often need to do in data-centric reporting and visualization applications. When needed, we often tend to resort to complex loops, list comprehensions, and other suboptimal means, which can easily end up being a huge mess of hard-to-maintain spaghetti code. Supergroup.js is an in-memory data manipulation library that can be used to solve some common data manipulation challenges on limited datasets.

11-minute readContinue Reading
Sigfried Gold

Sigfried Gold

Sigfried is a bright and articulate full-stack developer who creates browser-based visual analytics tools.

Ractive.js - Web Apps Made Easy

Ractive.js provides powerful capabilities for web app development in a way that is refreshingly simple to learn and use. In this article, Toptal Engineer Eugene Mirotin walks you through the process of building a simple Ractive search app, demonstrating some of Ractive’s key features and the ways in which it helps simplify web app development. Code samples are provided and explained.

15-minute readContinue Reading
Eugene Mirotin

Eugene Mirotin

Eugene is passionate about solving engineering problems. His language of choice is JavaScript, and the preferred stack is Node.js and React.

Getting Started with Modules and Modular Front-End Development

For some people, front-end design and development can sometimes start to seem like a chore, and can be monotonous and time consuming. Through a modular design approach, it is possible to both save time and streamline the design and development process.

8-minute readContinue Reading
Bojan Janjanin

Bojan Janjanin

Bojan is a senior web designer and front-end developer proficient in UX design with 12 years of experience designing for web and mobile.

In this article, I’ll go through some of the interesting features and libraries that are available to use with React. Even if you don’t plan on using React, taking a look at its ecosystem is inspiring. You may want to simplify your build system using the powerful, yet comparatively easy to configure, module bundler Webpack, or start writing ECMAScript 6 and even ECMAScript 7 today with the Babel compiler. So, let’s explore the React ecosystem!

22-minute readContinue Reading
Tomas Holas

Tomas Holas

Tomas started as a Ruby on Rails enthusiast, but in 2010 he turned to JavaScript and since prefers to work with Angular, React, and NodeJS.

Introducing Battlescripts: Bots, Ships, Mayhem!

Programming is about having fun and enjoying the process of creating something cool. That is why we decided to build a bot-vs-bot game platform around Battleship and make it open source. In this article, we take a look at the code and mechanics of the extensible engine behind this platform.

10-minute readContinue Reading
Mahmud Ridwan

Mahmud Ridwan

Mahmud is a software developer with many years of experience and a knack for efficiency, scalability, and stable solutions.

Unit Testing and Coding: Why Testable Code Matters

In this article, I will show that unit testing itself is quite easy; the real problems that complicate unit testing, and introduce expensive complexity, are a result of poorly-designed, untestable code. We will discuss what makes code hard to test, which anti-patterns and bad practices we should avoid to improve testability, and what other benefits we can achieve by writing testable code. We will see that writing testable code is not just about making testing less troublesome, but about making the code itself more robust, and easier to maintain.

22-minute readContinue Reading
Sergey Kolodiy

Sergey Kolodiy

Sergey is a software engineer with extensive development experience in the .NET technology stack, with strong architecture & coding skills.

Let LoopBack Do It: A Walkthrough of the Node API Framework You've Been Dreaming Of

While Ruby has Rails and Python has Django, the dominant application development framework for Node has yet to be established. But, there is a powerful contender gaining steam: LoopBack, an open source API framework built by StrongLoop, the creators of Express.

Let’s take a closer look at LoopBack and it’s capabilities by turning everything into practice and building an example application.

14-minute readContinue Reading
Jovan Jovanovic

Jovan Jovanovic

Jovan is an entrepreneur and engineer with a strong mathematical background and an extensive skillset for problem-solving.

The 8 Most Common Mistakes That Ember.js Developers Make

Ember.js is a comprehensive framework for building complex client-side applications. But, as with any advanced framework, there are still pitfalls Ember developers may fall into. With the following post, I hope to provide a map to evade these. Let’s jump right in!!

11-minute readContinue Reading
Balint Erdi

Balint Erdi

Balint has been practicing TDD since before it became popular. He was a classic PHP coder, and has since moved on to Java, Python, and Ruby.

Android M (Android 6.0) For Developers: An Evolutionary Step In The Right Direction

Google announced Android M at its annual I/O dev conference in late May, and the new OS is coming to our beloved Android devices later this year. Android 6.0 is more of an evolutionary step, whereas Android 5.0 was a big leap forward thanks to its 64-bit ART runtime and all new Material Design.

However, Android M should not be dismissed as a minor update. In this post, I will try to explain why.

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

Meet Bond, Microsoft Bond - A New Data Serialization Framework

Microsoft Bond is a modern data serialization framework. It provides powerful DSL and flexible protocols, code generators for C++ and C#, efficient protocol implementations for Windows, Linux, and Mac OS X. This article is a quick guide of the features and use of this framework.

6-minute readContinue Reading
Andrei Smirnov

Andrei Smirnov

Andrei has 15+ years working for the likes of Microsoft, EMC, Motorola, and Deutsche Bank on mobile, desktop, and web using C++, C#, and JS.

The 10 Most Common Bootstrap Mistakes That Developers Make

Bootstrap is a powerful toolkit. It comes bundled with basic HTML and CSS design templates that include many common UI components. Most of the important pitfalls are mentioned in the Bootstrap documentation, but still some mistakes are pretty subtle, or have ambiguous causes. This article outlines some of the most common mistakes, problems, and misconceptions when using Bootstrap.

8-minute readContinue Reading
Tomislav Bacinger

Tomislav Bacinger

Tomislav (MSc) has spent more than 15 years in full-stack development and data analysis, but geospatial visualizations are his favorite.

Ergonomics for Digital Nomads: Working on the Road Without Killing Yourself

We live in a time where technology has made it possible to work from anywhere, and many people have eschewed the traditional office for the chaotic din of a cafe in Bangkok or a hotel in Prague. Yet, while this trend has opened up unprecedented opportunities, it also brings with it a number of challenges, perhaps the most insidious of which is a lack of ergonomically healthy options in non-traditional workspaces.

6-minute readContinue Reading
Casey Rosengren

Casey Rosengren

Casey works in the community-related business space and has experience in the startup world.

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.