Toptal Blog

The Toptal Blog is the top hub for software engineers, designers, project managers, and entrepreneurs, featuring in-depth coverage of platforms and technologies, comprehensive tutorials by professional Toptal talent, and resources to help ambitious freelancers stay on the cutting edge.
Subscribe today for email updates.
A Guide to Robust Unit and Integration Tests with JUnit

Automated software tests are critically important to the long-term quality, maintainability, and extensibility of software projects, and for Java, JUnit is the path to automation.

While most of this article will focus on writing robust unit tests and utilizing stubbing, mocking, and dependency injection, Toptal Software Engineer Josh Hayden will also discuss JUnit and integration tests.

Continue reading →
How Term Sheets can Screw You

Despite the large increase in resources aimed at helping founders navigate the fundraising process, many still struggle when it comes to particular term sheet clauses that can have unintended consequences if misunderstood.

These clauses can lead to founders losing control of their company or payout structures upon exit down the road, regardless of how much capital they succeeded in raising. This in-depth post by Toptal Finance Expert and VC Alex Graham fills the knowledge gap by breaking down the term sheet’s trickiest clauses and the implications thereof.

Continue reading →
WordPress REST API: The Next Generation CMS Feature

For a while, WordPress seemed to had fallen behind. As the web became more reliant on JavaScript to create immersive, interactive experiences, it became increasingly clear that WordPress needed to offer new ways for users and developers to interact with its content.

In this post, Toptal Freelance Developer Brian Coords explores the amazing new features of WordPress’s REST API, showing why WordPress is still on the cutting edge of web development.

Continue reading →
A Step-by-step Guide to UI Animation with Principle and Sketch

Interfaces that have animations and transitions provide a better UX for app users, and stimulate user engagement. It’s becoming increasingly important to understand how to add motion to your designs, which is why we wrote today’s tutorial.

In it, Toptal Design Editor Tidjane Tall demonstrates how to craft effective UI animation techniques, using Principle for Mac, in a series of short videos.

Continue reading →
Getting the Most from Equity Research - Lessons from a Former Research Analyst

Equity research provides a very useful function in our current financial markets. Nevertheless, the profession has come under fire in recent years.

In this post, Toptal Finance Expert Ryan Downie details how to utilize research reports more effectively. Additionally, he outlines the equity research’s main value for both sophisticated and retail investors and highlights the pitfalls of this profession, its causes, and how you should evaluate research in order to avoid these issues.

Continue reading →
How to Integrate OAuth 2 Into Your Django/DRF Back-end Without Going Insane

So you’ve implemented user authentication. Now, you want to allow your users to log in with Twitter, Facebook or Google. No problem. You’re only a few lines of code away from doing so.

But while there are hundreds of OAuth 2 packages that pip knows, only a few actually do what they’re supposed to do.

In this article, Toptal Software Engineer Peter Goodspeed-Niklaus explains how to integrate OAuth 2 into your Django or Django Rest Framework using Python Social Auth.

Continue reading →
How Long Can Your Startup Survive Without a Full-Time CFO?

The value of a CFO for a young company is a hotly contested topic. The crux of the predicament is that while CFOs add significantly greater value than a junior financial team, they’re expensive. In this article, Finance Expert Scott Brown helps you identify where your company is in the “hierarchy of finance needs” and guides you toward the option that best address them.

Continue reading →
Anticipatory Design: How to Create Magical User Experiences

In this article, Toptal Designer Miklos Philips explains how to create magical user experiences by creating anticipatory designs. What is anticipatory design? It’s output, without much need for input. A world where our computing machines are designed for interaction methods optimized for humans, not computers. A digital world where we move from user intent that’s deterministic to user intent that’s probabilistic.

Continue reading →
Ionic 2 vs. Ionic 1: Performance Gains, New Tools, and a Big Step Forward

The Ionic project is rapidly gaining in popularity and is one of the most popular open source projects worldwide. With the recent announcement of the stable version of Ionic 2, this is the perfect time to underscore the Ionic 2 and its predecessor.

In this post, Toptal software engineer Julien Renaux outlines the major changes Ionic 2 brought to the platform and explains how to put these new features to good use.

Continue reading →
The Ultimate List of Resources to Learn C and C++

C is often called a middle-level computer language as it combines the elements of high-level languages with the functionalism of assembly language. C allows the manipulation of bits, bytes, and addresses - giving the programmer more control over exactly how the program will behave and a more direct access to the mechanics of the underlying hardware.

C was created, influenced, and field tested by working programmers. The end result is that C gives the programmer what the programmer wants.

C++ is an enhanced version of the C language. C++ includes everything that is part of C and adds support for object-oriented programming (OOP). In addition, C++ also contains many improvements and features that make it a “better C”, independent of object oriented programming.

Continue reading →
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.

Continue reading →
20 Testimonial Pages to Inspire Future Customers

Check out a collection of testimonial page inspirations created by different designers from around the world. Toptal designer Jônatas Vieira curated a selection of designs that each empowers its brand story.

Some of the screens are captured from live products, some are still in development, and some are purely concepts designed to push the bounds of what is even considered possible.

Continue reading →