Toptal Engineering Expert
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.
Featured in
The GWT Toolkit: Build Powerful JavaScript Front Ends Using Java
The GWT Web Toolkit, formerly known as Google Web Toolkit, is a set of development tools for building and optimizing complex browser-based applications using the Java programming language. What makes GWT not “yet another Java tool to write web apps,” is the fact that the heart of the toolkit is a compiler that converts Java into JavaScript, enabling developers to write front-end web applications while leveraging all of Java’s strengths.

Alberto Mancini
Dr Alberto spent 20 years working as a researcher in Applied Math & is experienced in managing large computational infrastructures.
Developer’s Guide to Open Source Licenses
Many developers often overlook, or do not thoroughly think through the implications of open source licenses. Whether you’re planning to open source your own project under one of these licenses, or you intend to integrate some other open source project into one of your own, it’s important to have at least some knowledge of what these licenses are, how they may affect your projects, and how they complement or contradict one another. In this article, Toptal engineer David Marín gives us a comprehensive guide to some of the most popular open source licenses, and several rules of thumb to follow when choosing a license for future open source projects.

David Marín
David is an open source and open data enthusiast with 18 years of experience as a professional developer specialing in web development.
World-class articles, delivered weekly.
By entering your email, you are agreeing to our privacy policy.
Towards Updatable D3.js Charts
When Mike Bostock created D3.js, he introduced a tried and true reusable charts pattern for implementing the same chart in any number of selections. However, the limitations of this pattern are realized once the chart is initialized. In this article, Toptal engineer Rob Moore presents a revised reusable charts pattern that leverages the full power of D3.js.

Rob Moore
where he tries to bring to the web development the experiences got in the field of HPC and (Big) Data Processing.
Apple Pay and Android Pay for Developers
Today, we will be taking a look at the future of mobile payments and emerging opportunities for developers. Needless to say, with each new opportunity, developers will have to face new challenges.
However, since we are talking about money, I don’t think anyone expects a shortage of software developers eager to learn a few new tricks and get into this space.

Nermin Hajdarbegovic
As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.
Software Reengineering: From Spaghetti to Clean Design
Inheriting someone else’s code can be a nightmare, especially when the code is poorly designed and lacks documentation. In this post, Toptal Engineer Juan Pablo Scida provides a case study of how he reengineered a chat server written in Node.js, transforming its original spaghetti code into a cleanly architected and designed piece of software.

Juan Pablo Scida
Juan is a software architect with more than 10 years of experience. He is a certified .NET and Java developer, and loves Node.js and Erlang.
Implementing a Remote Framebuffer Server in Java
Connecting to remote computers and working on them through terminals over a network is something we often take for granted. Technologies that enable us to do this have changed the way we work and have opened doors to amazing possibilities. Although the inner workings of these technologies may seem like obscure knowledge, implementations of many of these technologies are surprisingly straightforward. In this article, Toptal engineer Igor Delac gives us a step-by-step tutorial on how to implement the Remote Framebuffer server-side protocol in Java, allowing Swing-based applications to run and be interacted with remotely using standard VNC clients.

Igor Delac
Igor is an enthusiastic and skilled professional with experience in Java development, system administration, and he loves to experiment.
A Remote Worker's Guide To Staying Healthy
There are a lot of developers who take good care of themselves and enjoy a healthy, active lifestyle. If you are one of them, you can skip the rest of this post, because I wrote it to help developers like myself, who could benefit from a healthier lifestyle.
Even if you are entirely focused on your career, and think you don’t have enough spare time to lead a healthy lifestyle, bear in mind that good physical health will also boost your productivity.

Victor Abadio
Victor is a front-end developer & wordPress specialist with 7+ years of experience as a freelancer. He has worked with agencies & start-ups.
Sass Style Guide: A Sass Tutorial on How to Write Better CSS Code
When working on big web applications as a team with other developers, code needs to be scalable and readable. This can be a challenging process when it comes to CSS, although preprocessors like Sass are available. But only using preprocessors will only get you so far. In this article, Toptal engineer Matias Hernandez presents a style guide with advice on how to improve the way you write your code.

Matias Hernandez
Matías is a software engineer with more than 7 years of work as a freelancer for companies all around the globe.
Embracing Sass: Why You Should Stop Using Vanilla CSS
CSS preprocessors have been around for quite a while now. These tools, among many things, promise convenience in writing style sheets for the web. However, not everyone is taking advantage of these utilities, and is still resorting to writing vanilla CSS. In this article, Toptal engineer Marcelo Mazza discusses some of the reasons why he thinks Sass is the way to go and why you should be using it in your projects.

Marcelo Mazza
Marcelo has 10+ years in UX, spanning various fields. He has solid knowledge of mobile platforms, UX, design, and front-end development
Things to Watch Out for While Working Remotely
Remote jobs can be good for you, but depending on your character, they can also have some unpleasant side effects. Burnout affects people in all walks of life and in all industries, so what makes remote workers different?
Recognizing burnout symptoms early is of vital importance, and I cannot stress this enough. The deeper you sink into it, the longer it will take to recover, it’s as simple as that.

Nermin Hajdarbegovic
As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.
Automation in Selenium: Page Object Model and Page Factory
Proper test automation is a challenging yet essential ingredient for quality software applications. Explore maintainable test automation in Selenium, including Page Object model and Page Factory.

Dejan Zivanovic
Dejan is a senior QA engineer with significant experience in web and mobile testing. He has also worked extensively on Android app development.
Software Development Anywhere: My Distributed Remote Workplace
Working as a remote software development freelancer has many benefits, but setting up an effective distributed working environment can be a real challenge. In this article, Toptal Engineer Ivan Voras describes how he leverages SSH and a number of related technologies, along with the Raspberry Pi and ownCloud, to be able to work effectively from anywhere.

Ivan Voras, PhD
Ivan’s 15+ years of back-end and blockchain architecture experience has seen everything from DBA ops to development of OS kernel modules (FreeBSD).
Software Costs Estimation in Agile Project Management
One of the hardest things to do in software development is to determine how long and how much it will take to deliver a new software product. Should it be so hard? The answer is not straightforward.
Toptal Talent Network Experts
Taming WebRTC with PeerJS: Making a Simple P2P Web Game
WebRTC has opened doors to all kinds of new peer-to-peer web applications and games that can run in the browser without the need of additional plugins. However, being a relatively new technology, it still poses some unique challenges to developers. PeerJS aims to tackle some of those challenges by providing an elegant API and insulating developers from WebRTC’s implementation differences. In this article, Toptal engineer Mahmud Ridwan provides an introductory tutorial to building a simple, peer-to-peer web game using PeerJS.

Mahmud Ridwan
Mahmud is a software developer with many years of experience and a knack for efficiency, scalability, and stable solutions.
A Brief Overview of the Vulkan API
Here’s the Vulkan API in a hundred words or less: It’s a low-overhead, close-to-metal API for 3D graphics and compute applications. Vulkan is basically a follow-on to OpenGL. It was originally referred to as the “next generation OpenGL initiative,” and it includes a few bits and pieces from AMD’s Mantle API. Vulkan is supposed to provide numerous advantages over other GPU APIs, enabling superior cross-platform support, better support for multithreaded processors, lower CPU load, and a pinch of OS agnosticism.

Nermin Hajdarbegovic
As a veteran tech writer, Nermin helped create online publications covering everything from the semiconductor industry to cryptocurrency.
Toptal's List Of Top Free Programming Books
The Internet is mankind’s biggest repository of knowledge, information, useful (and useless: think of cat pics) digital content. Today, we will be taking a quick look at something useful and down to earth: free online programming books.

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

An Angular 5 Tutorial: Step by Step Guide to Your First Angular 5 App
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.





















