Customized Remote Work Solutions From the World’s Largest Fully Remote CompanyCustomized Remote Work SolutionsLearn More

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.

EngineeringIcon ChevronTechnology

Forex Algorithmic Trading: A Practical Tale for Engineers

by Rogelio Nicolas Mengual

A few years ago, driven by my curiosity, I took my first steps into the world of Forex by creating a demo account and playing out simulations (with fake money) using the Meta Trader 4 trading platform. After a week of 'trading', I'd almost doubled my 'money'. Spurred on by my own success, I dug deeper and eventually signed up for a number of forums. Soon, I was spending hours reading about trading systems (i.e., rule sets that determine whether you should buy or sell), custom indicators, market moods, and more.

8 minute readContinue Reading
EngineeringIcon ChevronTechnology

What are the Benefits of Ruby on Rails? After Two Decades of Programming, I Use Rails

by Krešimir Bojčić

Sometimes I hear people complaining about their clients, saying that they insist on using Rails, that they've had too much Kool Aid. If they are recruiters, they almost feel sick in the stomach from perspective of having to find yet another ROR primadona. From the programmers point of view it sometimes looks like clients don't have a clue. However, I believe most clients know their options just fine and they still decide to go with Rails.

8 minute readContinue Reading
EngineeringIcon ChevronWeb front-end

Why The Hell Would I Use Node.js? A Case-by-Case Tutorial

by Tomislav Capan

Node.js shines in real-time web applications employing push technology over websockets. What is so revolutionary about that? Well, after over 20 years of stateless-web based on the stateless request-response paradigm, we finally have web applications with real-time, two-way connections, where both the client and server can initiate communication, allowing them to exchange data freely. This is in stark contrast to the typical web response paradigm, where the client always initiates communication. Additionally, it’s all based on the open web stack (HTML, CSS and JS) running over the standard port 80.

14 minute readContinue Reading
EngineeringIcon ChevronTechnology

Build Dumb, Refactor Smart: How to Massage Problems Out of Ruby on Rails Code

by Daniel Lewis

Sometimes, clients give us feature requests that we really don't like. It's not that we don't like our clients, we love our clients. It's not that we don't like the feature, most client-requested features are aligned perfectly with their business goals and income. Sometimes, the reason we don't like a feature request is that the easiest way to solve it is to write bad code, and we don't have an Elegant Solution on the top of our heads. This will throw many of us on fruitless searches through RubyToolbox, github, developer blogs, and stackoverflow looking for a gem or plugin or example code that will make us feel better about ourselves. Well, I'm here to tell you, it's okay to write bad code. Sometimes, bad code is easier to refactor into beautiful code than a poorly thought out solution implemented under a time-crunch.

7 minute readContinue Reading
EngineeringIcon ChevronMobile

Control Your Laptop with an Android Phone using Python, Twisted, and Django

by Martin Chikilian

It’s always fun to put your programming skills on display. A while back, I figured it’d be cool to try and control my laptop via my Android mobile device. Think about it: being able to play and pause music, start and stop programming jobs or downloads, etc., all by sending messages from your phone. Neat, huh?

6 minute readContinue Reading
EngineeringIcon ChevronLifestyle

In Defense of Female Engineers

by Taso Du Val

Female engineers are valuable at Toptal. This is a piece about how we stand up for their rights and value them for their skills and talent.

6 minute readContinue Reading
EngineeringIcon ChevronWeb front-end

Init.js: A Guide to the Why and How of Full-Stack JavaScript

by Alejandro Hernandez

After much thought, I decided to engineer a solution to the idea abandonment problem. I call it the ‘Init' project (or Init.js). The core of the idea is to have a single project to start them all, to let the developer or the technical founder make all of the essential decisions at once, and receive an appropriate starting template based on those decisions.

14 minute readContinue Reading
EngineeringIcon ChevronWeb front-end

How a Single Front-End Engineer Can Replace a Team of Two

by Tom Kozacinski

Demand within the web design scene today has changed over the past few years: designers with front-end skills, and front-end developers with design skills, are more and more in demand. Yes, you could argue that the jobs are completely different—and maybe you straight-up don't like one of them—but truth be told, in my six years as a freelance web developer and twelve years as a designer, I’ve learned that it's much harder to get by as just a web designer or just a front-end developer. Wearing both hats has a lot of advantages: from a professional perspective alone, you can find work more easily and charge a higher rate because you’re bringing more to the table.

11 minute readContinue Reading

Join the Toptal® community.