A Translation Guide to Engineers
Whether you’re a veteran product manager, a first-time PM or an engineer yourself, this reference guide should be a fun (and hopefully educational) read.
Estimation & Scale
“Once we decide on the API schema, writing the endpoints will be trivial.”
Easy or unimportant. The opposite, non-trivial, is commonly used to mean that something is difficult or harder than it seems.
Order(s) of magnitude
“Seriously!? Doing this ourselves is orders of magnitude harder than just using Appcues!”
Significantly bigger/harder in relation to something else. This phrase technically describes logarithmic growth but is often used broadly (and incorrectly). Here’s a quick shorthand if you care to use it properly:
- 10 times bigger/harder = 1 order of magnitude
- 100 times = 2 orders of magnitude
- 1,000 times = 3 orders of magnitude
“We’ll need to cache the results because querying the database for every request is prohibitively expensive.”
Impossible or impractical under the current business constraints. Speed (how long something will take) and cost (what’s required to do it) are commonly referenced constraints. Computationally expensive is a common variant used to describe a purely technical constraint.
“We managed to meet our deadline but incurred a lot of technical debt to do so.”
Architectural decisions that are widely accepted to be sub-optimal. Reliance on an out-dated system or poorly-written code are examples of technical debt. Technical debt borrows many of the same phrases of financial debt. “Paying down,” “accruing,” and “declaring bankruptcy” are commonly used in relation to technical debt.
“I refactored that awful API your intern wrote last summer. The code just made my eyes bleed.”
To redo. Refactoring is a major rewrite or restructuring of code wherein the end result does not change any functionality. It is often taken on by the brave or foolish.
Easy/hard to reason about
“What gifted poet wrote this wonderful library? The code is so easy to reason about.”
Easy/hard to understand. Before casting criticism, count how many times you’ve used “learnings” instead of “lessons” this week.
“Don’t worry, clicking the ‘delete’ button is a no-op while the server is in test mode.”
A computer operation that ignores all given commands. It’s the programming equivalent of a house cat, but with less indignation.
“Once we’re using NPM, updating our libraries will be just a one-line change.”
A phrase that suggests that a meaningful business impact can be achieved by changing a single line of code. Yeah… right.
“Damn, I haven’t seen decoupling this bad since my ex and I broke up.”
Used to describe the interconnectedness of two or more applications/services. In general, a decoupled or “loosely coupled” architecture is more resilient when one part of the system breaks down.
“You’ve spent the past six weeks on that refactor. Are you ever going to ship it?”
To release code to production.
Engineer 1: “Hey it would be really nice if your API supported batch operations.”
Engineer 2: “PRs welcome.”
Short for “pull request,” which is a method of submitting code for review before it is accepted into a project. An engineer may say “PRs welcome” as an invitation for someone to contribute, but it can also be a passive aggressive way to tell other engineers to stop being lazy and just write the code themselves. Up to interpretation.
“Um.. the whole app is down. Can we roll back?”
To revert what is currently live for customers to a previous version. This phrase is usually accompanied with a dawning look of recognition and frantic typing. Almost always uttered shortly after a deploy.
“That’s a good idea, but it’s orthogonal to our current goal and would jeopardize our ability to ship on time.”
Unrelated. This is often used when something is not useful to the discussion but somehow interesting enough to keep talking about, like the Kardashians.
“The global bus factor for FORTRAN engineers has to be numbering in the dozens by now.”
A darkly humorous measurement of risk. It describes the number of people who would need to get “hit by a bus” in order to lose some unshared knowledge.