开发者三角:DSA、AI 与真正让你拿到 offer 的技能(新手版)
The Developer Triangle: DSA, AI, and the Skill That Actually Gets You Hired (as a Beginner)
面向新手开发者,文章提出由 DSA、AI 使用能力和"真正动手做东西并清晰沟通"组成的技能三角,并指出第三边几乎没人教却是真正决定能否被录用的能力。作者认为 DSA 只是面试过滤器而非工程师水平证明,练够核心模式即可停止刷题;AI 能力的关键是加速思考而非替代思考,不要提交自己讲不清的代码。
If you're just starting out as a developer, you've probably noticed that everyone's advice contradicts everyone else's.
One person swears you have to grind 500 LeetCode problems or you'll never get hired. Another says DSA is dead and you should just learn to use AI tools. A third says forget both, just build projects. And you're sitting there with a limited number of hours in your week, no idea who's right, so you either freeze — or you default to grinding DSA, because that's the loudest voice in the room.
Here's the honest truth: they're all half-right. And the thing nobody's actually telling you is how the pieces fit together.
So let me draw you the map I wish someone had drawn for me. There are three skills you need to balance as a new developer — I think of them as a triangle — and the third side is the one almost nobody teaches, even though it's quietly the one that actually gets you hired. Let's walk through all three, and then I'll tell you honestly where to spend your time.
Side one: DSA — what it really is (and what it isn't)
Data Structures and Algorithms. The thing you grind on LeetCode. Let's be fair to it, because it's not useless — but it's badly misunderstood.
What DSA genuinely gives you: a way of thinking. It teaches you to break a hard problem into smaller pieces, to reason about whether your solution is efficient or wasteful, and to recognize patterns ("oh, this is really a graph problem"). That mental toolkit is real, and it'll help you your whole career.
What DSA is not: a measure of whether you're a good engineer. This is the part beginners get wrong. Grinding 500 problems doesn't make you a good developer — it makes you good at passing interviews. Those are very different things, and confusing them will waste months of your life.
Why it became such a big deal: here's the honest history. DSA interviews exist because companies get thousands of applicants and need a cheap, standardized way to filter them. A LeetCode problem is easy to administer and easy to grade, so it became the gate. It's a proxy for "can this person think clearly under pressure" — not a test of the actual job. Useful to know, because once you see it's a filter rather than the job itself, you can treat it like one.
Your beginner takeaway: you need enough DSA to get through interviews and to think clearly — not enough to win competitions. Learn the core patterns (arrays, strings, hash maps, two pointers, basic trees and graphs, recursion), understand why they work, and practice enough to be comfortable. Then stop grinding. The 400th problem teaches you much less than the first 50 did.
Side two: AI fluency — the new side of the triangle
This side didn't really exist a few years ago, and now it's non-negotiable.
Why it matters now: AI tools are part of how real development actually happens. This isn't hype — it's just the current reality of the job. A developer who can work with AI effectively moves faster than one who can't, the same way a developer who knew their IDE's shortcuts always had an edge. Refusing to learn it doesn't make you more pure; it just makes you slower than everyone around you.
But here's the nuance that actually matters — and almost nobody tells beginners this clearly: AI fluency is not "let the AI do everything." This is the trap. If you lean on AI to write code you don't understand, you'll produce working-looking things without ever building the judgment to know when the AI is wrong — and it is wrong, often and confidently. You'll feel productive while quietly failing to become a developer.
Real AI fluency means using it to go faster while still understanding what it produces. Use it to explain a concept you're stuck on. Use it to draft something you then read, question, and verify. Use it to learn faster — not to skip the learning. The beginners who'll thrive are the ones who treat AI as a tool that accelerates their thinking, not a crutch that replaces it.
Your beginner takeaway: learn to use AI well, but make a rule for yourself early — never ship (or submit, or rely on) code you couldn't explain. Let AI speed you up; don't let it think for you. That one habit separates the beginners who grow from the ones who plateau.
Side three: the skill nobody teaches — and the one that actually gets you hired
Here's the side of the triangle that bootcamps skip, CS degrees barely touch, and no website lets you grind. It's also, in my honest opinion, the most important one.
What it is: actually building real things, and being able to communicate. Shipping a project from nothing to working. Reading code other people wrote and understanding it. Debugging something when it breaks at 11pm and the error message is useless. Explaining your thinking so a teammate gets it. Working with other humans without friction. Figuring out what to build and why it matters.
Why nobody teaches it: because it's not a tidy, testable curriculum. You can't put "knows how to debug a confusing problem calmly" on a multiple-choice quiz. You can't grind "communicates clearly" on LeetCode. So the educational system optimizes for the measurable stuff — DSA, syntax, frameworks — and this whole category quietly falls through the cracks. Nobody's against teaching it; it's just hard to package, so it gets left out.
Why it's the one that actually gets you hired — and keeps you hired: think about the mismatch. Interviews often test DSA. But the actual job tests this third side, every single day. The developer who can build a real thing end-to-end, explain it clearly, and work well on a team will beat the one who can reverse a linked list but has never shipped anything and goes quiet in a meeting. And here's the kicker: this side is the most durable. Tools change. Frameworks die. DSA trivia fades the week after the interview. But the ability to build, debug, understand, and communicate compounds across your entire career. It's the skill that's still paying off in year fifteen.
Your beginner takeaway: this is almost certainly the side you're neglecting right now — because it's the one nobody told you to practice. So protect time for it deliberately. It won't happen by accident.
So where should you actually spend your time?
Okay — the honest map. You've got limited hours. Here's roughly where they should go, as a beginner:
Learn enough DSA to pass the filter and think clearly — then stop over-grinding. Spend a focused chunk of time early on getting comfortable with the core patterns and understanding the why. Keep it warm with occasional practice before interviews. But don't let it become your whole identity. Past a certain point, each new problem teaches you less than building something real would.
Spend most of your time building real projects. This is the big one, and here's the secret: building real things exercises all three sides of the triangle at once. You use DSA (you'll hit a real performance problem and finally understand why it matters). You use AI (in context, as a tool, while still having to make it work). And you build the third side — shipping, debugging, understanding, deciding. "Just build stuff" sounds like lazy advice, but it's actually the most efficient advice, because one activity trains everything.
Learn AI in context, not as a separate subject. Don't set aside "AI study time." Just use it while you build and learn — and hold yourself to the rule of understanding what it gives you. Fluency comes from use, not from a course.
The meta-point: the three sides aren't in competition for a beginner. DSA sharpens your thinking, AI makes you faster, and building integrates both while developing the skills that actually matter on the job. The mistake isn't picking the wrong side — it's pouring everything into one side (usually DSA, because it's the loudest) and letting the other two wither.
The honest, reassuring truth
If you take one thing from this, take this: you do not have to be a LeetCode wizard to have a great career. Most genuinely good engineers aren't. Some of the best developers I can think of would struggle with a hard DSA problem on the spot — and it has never once mattered, because they can build real things, work with people, and figure out what needs doing.
You also don't have to be perfect at all three sides of the triangle. Nobody is. What you have to do is stop ignoring one of them. The developers who thrive aren't the ones who maxed out a single skill — they're the well-rounded ones: enough DSA to think, enough AI to move fast, and a real, growing ability to build and communicate.
So here's the whole thing in one picture. DSA gets you through the door. AI fluency keeps you fast and current. But the ability to build real things and work with people is what actually gets you hired, keeps you hired, and grows your career. Learn enough of the first two to stop them being blockers — then pour your energy into the third, because it's the side nobody teaches and everybody needs.
A triangle needs all three sides to stand up. Don't build one long line and call it a career.
If you're just starting out: be honest — which side of the triangle have you been pouring all your time into, and which one have you been quietly avoiding? And for the folks who've been doing this a while: what's the thing that actually got you hired, versus what you studied beforehand? I'd love for the beginners reading this to hear the real answers, not the LinkedIn ones.
来源:Google AI:DEV 作者专属(RSS) · dev.to