Skip to content

Commit 953dbc6

Browse files
committed
update blogpost + fix plugin
1 parent e4df067 commit 953dbc6

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

apps/website/src/content/posts/work-on-big-problems-product-engineer.md

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,64 +11,63 @@ image: "/images/what-should-be-included-in-an-internal-component-library.jpg"
1111
draft: false
1212
---
1313

14-
Some of the most satisfying projects I’ve worked on were also the messiest and least certain. They weren’t on any "quick win" list; they were the problems that made me stop and think, wow, this is going to be a stretch. And that stretch, technical, product, or organizational, ended up teaching me more than anything.
14+
Some of the most satisfying projects I’ve worked on were also the messiest and least certain. They weren’t on any "quick win" list; they were the problems that made me stop and think, f*ck, this is going to be a stretch. And that stretch, technical, product, or organizational, ended up teaching me more than anything.
1515

1616
This post is a short reflection on why it’s worth picking those bigger challenges, what "big" really means in day‑to‑day product engineering, and a few tactics for steering yourself toward them without getting overwhelmed.
1717

1818
## Contents
1919

2020
## What Does It Mean to Work on a "Big Problem"?
2121

22-
Working on a "big problem" doesn’t always mean curing world hunger or putting a man on Mars. In the context of product engineering, a big problem is any challenge that is ambitious in scope, significance, or difficulty. It could be a technical moonshot, for example, rearchitecting a core system to handle 100x more load, or it could be a product-defining quest, like redesigning an onboarding flow to completely eliminate a major pain point for users. The common thread is thatit’s a problem that stretches your skills and has outsized impact if solved.
22+
Working on a "big problem" doesn’t always mean curing world hunger or putting a man on Mars. In the context of product engineering, a big problem is any challenge that is ambitious in scope, significance, or difficulty. It could be a technical moonshot, for example, rearchitecting a core system to handle 100x more load, or it could be a product-defining, like redesigning an onboarding flow to completely eliminate a major pain point for users. The common thread is that it’s a problem that stretches your skills and has towering impact if solved.
2323

24-
Big problems are often characterized by uncertainty and novelty. They might not have a clear solution at the outset. In fact, they can feel insurmountable at first, the kind of challenges that can’t be solved by following a known recipe.
24+
Big problems are often characterized by uncertainty. They might not have a clear solution at the outset. In fact, they can feel insurmountable at first, the kind of challenges that can’t be solved by following a known recipe.
2525

26+
It’s worth noting that "big" doesn’t necessarily mean glamorous or widely celebrated. Sometimes the most impactful problems are behind the scenes. For example, reducing the checkout flow from five steps to one might seem less flashy than working with the latest LLM, but if that simplification is a game changer for users and drives up conversion rates, it’s absolutely a big problem worth solving. The essence is that it really matters.
2627

27-
It’s worth noting that "big" doesn’t necessarily mean glamorous or widely celebrated. Sometimes the most impactful problems are behind the scenes. For example, reducing the checkout flow from five steps to one might seem less flashy than working with the latest AI model, but if that simplification is a game-changer for users and drives up conversion rates, it’s absolutely a big problem worth solving. The essence is that it really matters. As engineers, we often know in our gut when a problem is substantive, it’s the kind of problem where, if you don't step up to tackle it, it might never get solved properly. In fact, things that simply won’t happen if you don’t do them are your biggest opportunity to work on something that matters. In other words, when you spot a critical issue or bold idea that everyone else is ignoring or afraid to touch, you may have found your next big problem.
28+
As engineers, we often know in our gut when a problem is substantive, it’s the kind of problem where, if you don't step up to tackle it, it might never get solved properly. In fact, things that simply won’t happen if you don’t do them are your biggest opportunity to work on something that matters. In other words, when you spot a critical issue or bold idea that everyone else is ignoring or afraid to touch, you may have found your next big problem.
2829

29-
### Aiming at Big Problems Matters
3030

31-
Why voluntarily choose the harder road? Why not just stick to the comfortable backlog of small tasks?
31+
32+
But, why voluntarily choose the harder road? Why not just stick to the comfortable backlog of small tasks?
3233

3334
When you aim at a genuinely hard problem, you can’t help but grow. New tech, weird edge cases, and plenty of "wait, how do we do this?" Every tough win boosts your confidence and sets you up to tackle even bigger challenges next time.
3435

3536
Big problems also move real numbers for the business. Instead of just shipping another ticket, you’re fixing the bottleneck that bleeds money or launching the feature that unlocks a new revenue stream. Leadership notices work that bends the curve, and suddenly you’re the person they trust with the hairy projects.
3637

3738
Users feel the difference too. They don’t rave about tiny tweaks, but slash their page‑load time or remove an unecessary workflow step and they’ll thank you with loyalty. Solving the pains that actually keep people up at night beats polishing minor annoyances every time.
3839

39-
Finally, there’s the spark of meaning. A bold goal turns a job into a mission, rallying your team through the inevitable rough patches and giving you stories you’ll be proud to tell later. Hard problems are harder, but they’re also what make the work worth doing.
40+
There is also the spark of meaning, there. A bold goal turns a job into a mission, rallying your team through the inevitable rough patches and giving you stories you’ll be proud to tell later. Hard problems are harder, but they’re also what make the work worth doing.
4041

41-
Importantly, a big problem in our work is high-impact by nature. Solving it would meaningfully change something for our users, our product, or our business. It might be an ambitious new feature that defines the product’s future, a massive performance improvement that saves the company, or an overhaul of an error-prone process that hugely improves customer experience. These are the kinds of challenges that, if left unsolved, hold back progress, and if solved, open up new possibilities.
42+
Choosing to work on big problems accelerates your personal development, creates a greater impact on your company, and delivers higher value to users, all while infusing your work with a greater sense of purpose. It’s a win-win scenario for your career and for the people benefiting from your work.
4243

43-
In summary, choosing to work on big problems accelerates your personal development, creates a greater impact on your company, and delivers higher value to users, all while infusing your work with a greater sense of purpose. It’s a win-win scenario for your career and for the people benefiting from your work.
4444

45-
### Orient Yourself Toward Bigger challenges
45+
## Seek Problems
4646

4747
Okay, big problems are great, but how can we actually integrate this mindset into our day-to-day work as engineers? It’s one thing to philosophize about ambitious goals, and another to act on them when you have sprint tasks and bug backlogs looming.
4848

49-
### Seek Problems
50-
5149
One of the most valuable habits you can build is stepping back to ask: What’s the actual problem here? Not just the task in front of you, but the real pain or opportunity behind it. Sometimes the ticket in Jira is just the surface of something deeper. So zoom out. What’s hurting the team or the product the most right now?
5250

5351
And hey, if you spot something important that no one else seems to be talking about, like a bug users keep running into or some tech debt that’s slowing down every sprint, say something. Or better yet, start poking at it. A lot of high-impact work doesn’t show up in your backlog; you have to go looking for it. Be the kind of teammate who sees those things and says, “I’ve got this.” It might mean pitching a project that wasn’t on the roadmap, or jumping on the thing everyone’s been quietly avoiding. That kind of initiative is what separates people doing work from people doing the right work.
5452

55-
### Connect Your Work to the Bigger Picture
53+
## Connect Your Work to the Bigger Picture
5654

5755
It’s easy to get lost in implementation details. You’re fixing bugs, building features, merging PRs... but at some point it helps to stop and ask: Why does this even matter?
5856

5957
If you don’t have a good answer, that’s a flag. Either the task doesn’t connect to something important, or you just haven’t uncovered the connection yet. Dig in. When you understand how your work fits into the bigger picture, the user experience, the business need, the team’s goals, it gets a lot easier to do it well. Sometimes you realize, “Wait, this little feature isn’t actually what we need, there’s a better way to solve the problem.”
6058

6159
And when that starts happening regularly, you’ll find yourself naturally leaning toward the stuff that actually moves the needle. You’ll know what’s worth your time and what you can either skip or hand off.
6260

63-
### Be Uncomfortable
61+
## Be Uncomfortable
6462

6563
Let’s be honest, big problems are scary. It’s totally normal to feel a little imposter-y when you’re staring down something messy, undefined, or with a lot riding on it. That’s fine. In fact, that discomfort is usually a sign that you’re about to grow.
6664

6765
If everything you’re doing feels easy, you’re probably playing it too safe. Pushing into the unknown, even if it means stumbling around a bit, is how you get better. People thrive when they frame challenges as opportunities to grow. So yeah, that anxious knot in your stomach? Might actually mean you’re on the right track.
6866

6967
Give yourself permission to mess up or take longer when working on hard things. The payoff won’t always be instant. But over time, the stuff that once seemed impossible? It’ll be just another Tuesday.
7068

71-
### Focus on What Matters
69+
## Focus on What Matters
70+
7271
You don’t have infinite time or energy. Nobody does. So you’ve got to be deliberate about what you say yes to.
7372

7473
That might mean ignoring some Slack messages for a bit, or not fixing every tiny bug the moment it appears. It might feel weird, like you’re dropping the ball, but here’s the thing: doing great work on the right stuff often means letting the less important things go. That’s not failure. That’s prioritization.
@@ -77,7 +76,7 @@ Protect your time. Carve out space for deep work. Big problems don’t get solve
7776

7877
Solving one big problem well usually beats solving ten small ones in a hurry.
7978

80-
### Cultivate a Big-Problems Culture
79+
## Cultivate a Big-Problems Culture
8180

8281
You’re not in this alone. One of the best ways to have a lasting impact is to help your team adopt this mindset too. Talk openly about the problems that actually matter. Ask in retros or planning: What’s the most important thing we could work on right now?
8382

packages/remark-plugin/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,10 @@ function remark({
5858
}
5959

6060
if (node.depth < lastNodeDepth) {
61+
contentsHtml += '</ul>'.repeat(lastNodeDepth - node.depth);
6162
contentsHtml += '<li>';
6263
contentsHtml += `<a href="#${id}">${textNode.value}</a>`;
6364
contentsHtml += '</li>';
64-
contentsHtml += '</ul>'.repeat(lastNodeDepth - node.depth);
6565
lastNodeDepth = node.depth;
6666
}
6767
});
@@ -107,7 +107,7 @@ function remark({
107107
};
108108
parent.children.splice(index, 1, node);
109109
}
110-
110+
111111
if (textNode.type === 'text' && textNode.value.startsWith('::iframe ')) {
112112
const iframeSrc = textNode.value.substring('::iframe '.length);
113113
const iframeNode = {

0 commit comments

Comments
 (0)