One of the most critical areas of Product Engineering that we have at Asana is First Experience (FX). The FX team’s mission to make users’ first seconds in Asana flawless. This team’s work is so crucial to our growth because the first few moments that someone uses Asana for the first time can make or break their propensity to continue using the product. With fewer than 10 members, the FX team knows how to have a big impact in a short amount of time.
Today, any new Asana user will have a guided, seamless experience to help them understand the…
Here’s where you messed up.
Your tech lead told you to build out a new API endpoint for an upcoming feature. It was supposed to be simple: just return a list of the current user’s email addresses.
You start with the usual boilerplate. You register the new endpoint. You associate it with a controller. You add an explanatory comment.
Then you discover that the query is impossible. The user’s email addresses all live on different database shards.
The footlights flip on. The curtain rises. This is your time to be a software superstar! …
Nightmare at 20,000 feet is one of the most iconic Twilight Zone episodes of all time. It tells the story of Bob Wilson, a salesman with a nervous condition. Bob peers out through the window of an airplane. He is moderately surprised to see a gremlin milling about on the wing.
Bob makes increasingly frantic attempts to show the gremlin to other passengers. It’s no use. When anyone else looks through the window, the gremlin disappears. To make matters worse, it deviously begins to dismantle the plane engine, putting everyone in mortal danger.
Sometimes, working as a software engineer feels…
In the late 14th century, the townspeople of Salisbury, England were summoned to their cathedral by a machine. It was a wonderful and strange device. It consisted of a collection of iron gears and wheels and bars, all arranged in a cube. It tugged endlessly on ropes hanging above. Its stone weights swung about imperceptibly in the cool air.
And once per day, as if haunted by a punctual ghost, it struck a bell.
You reboot your development server, but it happens again: err_node_unsafe. This wasn’t here yesterday. What changed?
It’s 9:48 in the morning and your coffee is already cold. Most of the other people on your team aren’t in the office yet. This is your fifth week at the company, your feature was supposed to be done two days ago.
You raise the height of your chair as if that would give you some sort of different perspective on what’s going on. You reboot again, and the stack trace slides into your terminal again: err_node_unsafe. You wipe your development database: err_node_unsafe. …
I tried comparing two Arrays and I think I might have created a time paradox.
What do you mean the app is slow? It works fine on my 2017 MacBook Pro.
So many exceptions. So much remorse.
You call this code asynchronous? It’s more like a-stink-ronous.
These closures are totally cramping my style.
This definitely tasted better in 2010.
I’m just going to pretend that this is a normal class and carry on with my day, thanks.
Documentation for engineers is a wonderful thing to have. As a new team member, I usually have a ton of questions. Many of those will need to be answered by a teammate — but whenever there’s a good doc for something, I breathe a sigh of relief.
But the docs run out pretty quickly. It turns out that writing and maintaining internal docs is pretty expensive, and harder than it looks. Here are some things to try the next time you’re in a position to document something.
The best way to waste time writing docs is to write docs that…
Software Engineers focus a lot on optimizing their state of Flow. But I’m most curious about its opposite: The Ebb.
The Ebb is when you have a project to work on but you find yourself checking your email again. It’s when you’ll find any excuse to get pulled away from your desk, when coding is a chore. It’s when you don’t know how to move forward.
The Ebb has eaten up more of my time than any slow compiler or inefficient tool. How do you escape?
When you’ve reached a state of Ebb, it’s likely because you need to learn…
One of my favorite hobbies is hacking. I mean that in a “build something for fun” sense, not a “compromising other people’s systems” sense.
I’m always on the lookout for platforms that make for fun weekend projects. These are some of my favorites.
Processing has one of the best-designed APIs I’ve worked with. The reference fits in one page. They’ve almost completely eliminated boilerplate. Most of what you need is already imported. It’s pure bliss.
Let’s say you really miss 2010 and you want to listen to some old-timey chillwave music. Try searching for “chillwave” on Spotify and get ready for a life-hack:
One of the playlist results is called “The Pulse of Chillwave”. It was created by Particle Detector, a very special Spotify user.
Particle Detector is special because it’s not a person, it’s an algorithm.
Particle detector automatically generates these playlists based on what seems like some pretty effective analysis of the genre. They tend to contain a good mix of familiar and new tracks from that genre.
If you’re like me…
Engineering manager at @asana. Technology, music, and culture fascinate me.