Toptal Engineering Expert
Introduction to BEM Methodology
When building smaller websites, the way developers structure their CSS code is usually not a big issue. However, when it comes to larger, more complex projects, code organization becomes crucial.
In this article, Toptal Freelance Software Engineer Tomislav Matijević introduces us to BEM methodology and explains how this CSS practice can massively improve code maintainability, speed up the development process, and streamline the teamwork of developers by arranging CSS classes into independent modules.

Tomislav Matijević
Tomislav is a software engineer well versed in front-end technologies, particularly in vanilla JavaScript and React.js.
Gulp Under the Hood: Building a Stream-based Task Automation Tool
Streams are a powerful construct in Node.js and in I/O driven programming in general. Gulp, a tool for task automation, leverages streams in elegant ways to allow developers to enhance their build workflow.
In this article, Toptal engineer Mikhail Angelov gives us some insight into how Gulp works with streams by showing us step-by-step how to build a Gulp-like build automation tool.

Mikhail Angelov
Mikhail holds a Master’s in Physics. He’s run the gamut with Node.js, Go, JavaScript SPAs, React.js, Flux/Redux, RIOT.js, and AngularJS.
Clean Code and the Art of Exception Handling
Exceptions are a fundamental element of modern programming—and nothing to fear. Implement these exception handling best practices to write clean code that is easier to maintain.

Ahmed AbdelHalim
Ahmed is a back-end (API) developer who loves building useful and fun tools. He also has experience as a web developer.
HSA For Developers: Heterogeneous Computing For The Masses
HSA is a set of standards and specifications designed to allow further integration of CPUs and GPUs on the same bus. This is not an entirely new concept, but HSA takes it to the next level. HSA would effectively take the developer out of the equation, at least when it comes to assigning different loads to different processing cores.
In this post, Toptal Technical Editor and resident chip geek Nermin Hajdarbegovic takes a closer look at HSA and the future of heterogeneous computing in general. Get ready for some good news, but don’t forget to brace for bad news first.

Nermin Hajdarbegovic
As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.
Getting Started with the Elixir Programming Language
Elixir, a dynamic, functional programming language, is designed for building scalable and maintainable applications with a simple, modern, and tidy syntax. Although it is easy to understand, Elixir’s approach to concurrency and its data type nuances require some getting used to.
In this article, Toptal engineer Kleber Virgilio Correia gives us a comprehensive guide to the various basic data types in that are available in Elixir.

Kleber Virgilio Correia
Kleber’s long professional experience has covered Unix, Agile, functional and OOP languages, REST APIs, distributed apps, and the cloud.
World-class articles, delivered weekly.
By entering your email, you are agreeing to our privacy policy.
Toptal's Quick and Practical CSS Cheat Sheet
As software engineers, we’re always searching for the best tools and guides that will help us to be more productive while spending less time searching and reading long technical specifications.
Today, Toptal is pleased to present an entirely new resource to the community as a free download: a CSS Cheat Sheet. Toptal’s CSS Cheat Sheet is a quick CSS reference guide, and includes CSS syntax, the most important selectors, properties, sizes, and units, and other useful CSS details, all in a short, easily understandable format.

Tomislav Bacinger
Tomislav (MSc) has spent more than 15 years in full-stack development and data analysis, but geospatial visualizations are his favorite.
Mastering 2D Cameras in Unity: A Tutorial for Game Developers
Camera systems are very important in conveying the right atmosphere in video games. When developing games, even 2D ones, advanced cameras should be your tool of choice.
In this article, Toptal engineer Mihai Cozma shows us how to build a modular camera system for 2D platform games using some simple components in Unity that can be easily extended to 2.5D or even 3D games.

Mihai Cozma
Mihai has 11+ years of professional experience with various technologies and tools. He is proficient at C/ C++, .NET, and Unity 3D.
The 9 Most Common Mistakes That Ionic Developers Make
Ionic is extremely popular at the moment, and it has revolutionized the hybrid application industry in a way that nobody could have imagined. However, over time, the best practices and tooling for Ionic have not progressed in the same way. As a result, the number of pitfalls that developers need to look out for when working with Ionic is still high.
In this article, Toptal Freelance Software Engineer Julien Renaux outlines the most common mistakes that Ionic developers should know.

Julien Renaux
Scrum Master Julien (MCS) is a front-end mobile dev who’s worked for startups and enterprises like eBay, and even the French space agency.
How to Create a Simple Python WebSocket Server Using Tornado
The threaded model and global interpreter lock has always been in the way of Python handling thousands of concurrent long-lived connections. Modern web frameworks, such as Tornado, use non-blocking network I/O to make Python feasible for implementing WebSocket servers.
In this article, Toptal engineer Jongwook Kim walks us through the process of implementing a simple WebSocket-based web application in Python using the Tornado web framework.

Jongwook Kim
Jongwook has 12+ years of experience developing simple and robust software that delivers value to customers.
A Tutorial on Drill-down FusionCharts in jQuery
When dealing with data analysis, most companies rely on MS Excel or Google Sheets, but dealing with data presented this way isn’t very eye-catching or intuitive. It’s once you add visualizations to this data that things become a little easier to manage. That’s the topic of today’s tutorial by our guest author from Adobe, Rohit Boggarapu. Join us as he guides us though the process of making interactive drill-down charts using jQuery and FusionCharts.

Rohit Boggarapu
Rohit (BTech) is a software engineer at Adobe and exceptional front-end programmer. He specializes in React/RN, Ionic, and Angular.
Boost Your Productivity With Amazon Web Services
In the rapidly evolving Internet world, getting things done fast is always critical. Still, developers today waste hundreds of hours on tasks not related to programming: setting up databases or caches, deploying projects, monitoring online statistics, and so on.
In this article, Toptal Freelance Software Engineer Minhao Zhang guides us in a step-by-step tutorial on how to reduce waste by setting up your first virtual machine using Amazon Web Services, and introduces the most widely used AWS services that can boost your productivity in minutes.

Minhao Zhang
Minhao has 10+ years of experience in developing server side apps on Linux using PHP and C++. He is a heavy AWS user and cloud expert.
Writing Testable Code in JavaScript: A Brief Overview
Writing code that is easily testable takes some effort and planning. However, some patterns exist that can be used to write simple and functional code, making it easier to test them when the time comes.
In this article, Toptal engineer Joshua Mock shares some useful tips and patterns for writing testable code in JavaScript that are both simple to understand and simple to implement.

Joshua Mock
Joshua is a front-end architect and web application developer. He has 15 years of experience in building interactive web applications.
Android Developer’s Guide to Fragment Navigation Pattern
Navigation in mobile applications, when done right, can have tremendous positive impact on overall user experience. Android offers application developers multiple ways of implementing navigation in their application. However, not all navigation patterns are created equal.
In this article, Toptal engineer Becze Szabolcs shows us how to implement fragment-based navigation and how it stacks up against Android’s traditional navigation philosophy.

Becze Szabolcs
Becze is a talented freelance software engineer, who has previously worked as an Android developer at companies including Garmin.
How to Boot-strap and Create .NET Projects
To create a .NET project from scratch, simply using Visual Studio Wizard is good enough most of the time. However, the default project settings produced by wizards are hardly acceptable for professional teams, as they set too low of a bar on quality.
In this article, Toptal Freelance Software Engineer Andrei Smirnov guides us through several standard practices, configuration files, and project settings every developer should apply when starting a new .NET project. Doing this in the very beginning of a project decreases future technical debt and makes product source code readable and professional-looking.

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.
SQL Server Performance Tuning: A Practical Guide for Developers
Database tuning can be an incredibly difficult task, particularly when working with large-scale data where even the most minor change can have a dramatic (positive or negative) impact on performance.
In mid-sized and large companies, most database tuning will be handled by a Database Administrator (DBA). But there are plenty of developers who have to perform DBA-like tasks; meanwhile, DBAs often struggle to work well with developers.
In this article, learn database tuning tips and how developers and DBAs can work together effectively.

Kevin Bloch
Kevin has 20+ years among full-stack, desktop, and indie game development. He lately specializes in PostgreSQL, JavaScript, Perl, and Haxe.
Introduction To PHP 7: What's New And What's Gone
If you haven’t been working with PHP lately, you might wonder what happened to PHP 6. Why the skip from PHP 5 to PHP 7? Well, long story short, PHP 6 was a failure. To avoid confusion, the new version was renamed PHP 7.
PHP 7 introduces a number of new features, while at the same time dropping depreciated SAPIs and extensions. As a result, it tends to outperform PHP 5.x by a wide margin. Some compatibility issues could pose a problem, but most developers have nothing to worry about.
In this post, Toptal Freelance Software Engineer Vilson Duka explains what makes PHP 7 different, and why it’s time to make the switch.

Vilson Duka
A professional full-stack desktop/mobile/web developer with 5+ years experience, Vilson’s current focus is on scalable real-time systems.
World-class articles, delivered weekly.
Toptal Developers
- Android Developers
- App Developers
- AWS Developers
- Azure Developers
- BigCommerce Developers
- Blockchain Developers
- Coders
- Database Developers
- Embedded Software Engineers
- Flutter Developers
- HTML5 Developers
- Java Developers
- Joomla Developers
- Kubernetes Developers
- Laravel Developers
- Magento Developers
- .NET Developers
- Next.js Developers
- Odoo Developers
- Outsourced Developers
- PHP Developers
- Power BI Developers
- Prototype Developers
- Python Developers
- React Developers
- React Native Developers
- Remote Developers
- Ruby on Rails Developers
- Salesforce Developers
- Security Engineers
- SharePoint Developers
- Shopify Developers
- Software Developers
- Squarespace Developers
- Startup Developers
- Svelte Developers
- Twilio Developers
- Vue.js Developers
- Web Developers
- Web Scraping Developers
- WooCommerce Developers
- WordPress Developers
- View More Freelance Developers
Join the Toptal® community.
















